from .tensor import FHETensor # Use relative import
import openfhe
# -----------------------------------------------------------
# PTArray - Plaintext Tensor
# -----------------------------------------------------------
[docs]
class PTArray(FHETensor[openfhe.Plaintext]):
"""Concrete tensor class for OpenFHE plaintexts."""
[docs]
def clone(self, data=None):
return PTArray(
data or self.data,
self.original_shape,
self.batch_size,
self.ncols,
self.order,
)
[docs]
def decrypt(self, *args, **kwargs):
raise NotImplementedError("Decrypt not implemented for plaintext")
def __repr__(self) -> str:
return f"PTArray(meta={self.metadata})"
[docs]
def serialize(self) -> dict:
raise NotImplementedError("Serialize not implemented for plaintext")
[docs]
@classmethod
def deserialize(cls, obj: dict) -> "PTArray":
raise NotImplementedError("Deserialize not implemented for plaintext")