ObjectSerializationTool package

Subpackages

Submodules

ObjectSerializationTool.DataTable module

class ObjectSerializationTool.DataTable.CompressionAlgorithm(value, names=None, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: IntEnum

BROTLI = 5
BZIP2 = 1
DEFLATED = 2
LZMA = 3
STORED = 0
ZSTANDARD = 4
class ObjectSerializationTool.DataTable.Record(flags: 'tuple[bool, bool, bool, bool, bool, bool, bool, bool]', object_id: 'UUID', serializer_id: 'UUID', raw_1_id: 'UUID', raw_2_id: 'UUID')[source]

Bases: object

flags: tuple[bool, bool, bool, bool, bool, bool, bool, bool]
classmethod from_bytes(_Record__raw: bytes) Self[source]
object_id: UUID
raw_1_id: UUID
raw_2_id: UUID
serializer_id: UUID
to_bytes() bytes[source]
class ObjectSerializationTool.DataTable.Table[source]

Bases: object

append_record(_Table__record: Record) None[source]
classmethod from_bytes(_Table__raw: bytes) Self[source]
get_raw(_Table__raw_id: UUID) bytes[source]
put_raw(_Table__raw: bytes, raw_id: UUID | None = None) UUID[source]
raw_section_from_bytes(_Table__b: bytes) None[source]
raw_section_to_bytes() bytes[source]
property raws: Iterable[tuple[UUID, bytes]]
record_section_from_bytes(_Table__b: bytes) None[source]
record_section_to_bytes() bytes[source]
property records: Iterable[Record]
select_record(_Table__expr: Callable[[Record], bool]) Iterable[Record][source]
to_bytes(record_section_compression_algorithm: CompressionAlgorithm = CompressionAlgorithm.DEFLATED, raw_section_compression_algorithm: CompressionAlgorithm = CompressionAlgorithm.LZMA) bytes[source]
ObjectSerializationTool.DataTable.bool_to_int(__b: bool, offset: int = 0)[source]
ObjectSerializationTool.DataTable.compress(__raw: bytes, compression_algorithm: CompressionAlgorithm) bytes[source]
ObjectSerializationTool.DataTable.decompress(__raw: bytes, compression_algorithm: CompressionAlgorithm) bytes[source]
ObjectSerializationTool.DataTable.int_to_bool(__n: int, offset: int = 0)[source]
ObjectSerializationTool.DataTable.uuid_from_obj(__obj: Any) UUID[source]
ObjectSerializationTool.DataTable.uuid_from_raw(__raw: bytes) UUID[source]

ObjectSerializationTool.Exceptions module

exception ObjectSerializationTool.Exceptions.PosuException[source]

Bases: Exception

exception ObjectSerializationTool.Exceptions.PotException[source]

Bases: PosuException

exception ObjectSerializationTool.Exceptions.StopPotLoading(*args: object, additional_data: bytes)[source]

Bases: PotException

ObjectSerializationTool.LocalTypes module

class ObjectSerializationTool.LocalTypes.Serializable(*args, **kwargs)[source]

Bases: Protocol

abstract property serializer: Serializer[Self]
class ObjectSerializationTool.LocalTypes.Serializer(pot: Pot.Pot, *args, **kwargs)[source]

Bases: Protocol[T]

SAFE_WHEN_DESERIALIZING: bool
SID: UUID
abstract dump(_Serializer__obj: T) tuple[bytes, bytes][source]
abstract fill(_Serializer__raw: bytes, _Serializer__obj: T) T[source]
abstract load(_Serializer__raw: bytes) T[source]
pot: Pot.Pot
abstract support(_Serializer__obj: T) bool[source]

ObjectSerializationTool.Pot module

class ObjectSerializationTool.Pot.Pot(serializer_classes: Iterable[type[Serializer]] | None = None)[source]

Bases: Generic[T]

copy() Self[source]
dump(_Pot__obj: Iterable[T]) None[source]
dump_object(_Pot__obj: T, is_entry: bool = False) UUID[source]
fill_all(trusted: bool = False) None[source]
filled_objects: MutableMapping[UUID, T]
flush(private_key: bytes | None = None) bytes[source]
load(raw: bytes, trusted_raw: bool | None = None, trusted_public_keys: Iterable[bytes] | None = None) Iterable[T][source]
load_all(trusted: bool = False) None[source]
load_object(_Pot__object_id: UUID, trusted: bool = False) T[source]
loaded_objects: MutableMapping[UUID, T]
object_table: Table
serializers: Iterable[Serializer]
ObjectSerializationTool.Pot.get_serializer_by_object(__obj: Any, serializer_list: Iterable[Serializer]) Serializer[source]
ObjectSerializationTool.Pot.get_serializer_by_sid(__sid: UUID, serializer_list: Iterable[Serializer]) Serializer[source]
ObjectSerializationTool.Pot.get_serializer_types_from_plugins() Iterable[type[Serializer]][source]
ObjectSerializationTool.Pot.sign(data: bytes, private_key: bytes | None) bytes[source]
ObjectSerializationTool.Pot.verify(data: bytes, public_keys: Iterable[bytes] | None) tuple[bytes, bool][source]

Module contents