snakia.field.field

Functions

abstractmethod(funcobj)

A decorator indicating abstract methods.

final(f)

A decorator to indicate final methods and final classes.

inherit(type_[, attrs])

Create a new class that inherits from the given class.

Classes

ABC()

Helper class that provides a standard way to create an ABC using inheritance.

Field()

Generic()

Abstract base class for generic types.

PrivProperty()

TypeVar(name, *constraints[, bound, ...])

Type variable.

class snakia.field.field.Field[source]
class snakia.field.field.Field(default_value: T)
class snakia.field.field.Field(*, default_factory: Callable[[Self], T])

Bases: ABC, PrivProperty[T], Generic[T]

__init__(default_value=<class 'snakia.types.unique.Unset'>, default_factory=<class 'snakia.types.unique.Unset'>)
final classmethod custom(serialize, deserialize)[source]
Return type:

type[Field[TypeVar(R)]]

abstract deserialize(serialized, /)[source]

Deserialize a value

Parameters:

serialized (bytes) – serialized value

Returns:

deserialized value

Return type:

T

final static get_fields(class_, /)[source]
Return type:

dict[str, Field[Any]]

property name: str

Return the name of the variable associated with the property.

abstract serialize(value, /)[source]

Serialize a value

Parameters:

value (T) – value to serialize

Returns:

serialized value

Return type:

bytes