fields

class levelorm.fields.BaseField(key: bool = False)[source]

Bases: object

every model must have exactly one String or Blob with key=True which will not be included in the value and instead used as the key

serialize(buf: BinaryIO, value) → None[source]
deserialize(buf: BinaryIO)[source]
serialize_key(value) → bytes[source]
deserialize_key(value: bytes)[source]
class levelorm.fields.String(encoding: str = 'utf-8', key=False)[source]

Bases: levelorm.fields.BaseField

represents a str. stored as an unsigned 4-byte length and encoded bytes

length_struct = <Struct object>
serialize(buf, value)[source]
deserialize(buf) → str[source]
serialize_key(value: str)[source]
deserialize_key(value) → str[source]
class levelorm.fields.Blob(key: bool = False)[source]

Bases: levelorm.fields.BaseField

represents a bytes. stored as an unsigned 4-byte length and bytes

length_struct = <Struct object>
serialize(buf, value)[source]
deserialize(buf) → str[source]
serialize_key(value: bytes)[source]
deserialize_key(value) → bytes[source]
class levelorm.fields.Boolean(key: bool = False)[source]

Bases: levelorm.fields.BaseField

represents a bool. stored as 1 byte (but levelorm.orm.BaseModel.save() will pad to 4)

struct = <Struct object>
serialize(buf, value: bool)[source]
deserialize(buf) → bool[source]
class levelorm.fields.Integer(key: bool = False)[source]

Bases: levelorm.fields.BaseField

represents an int. stored as a signed 4-byte int

struct = <Struct object>
serialize(buf, value: int)[source]
deserialize(buf) → int[source]
class levelorm.fields.Float(key: bool = False)[source]

Bases: levelorm.fields.BaseField

represents a float. stored as a double precision (8 byte, binary64) float

struct = <Struct object>
serialize(buf, value: float)[source]
deserialize(buf) → float[source]
class levelorm.fields.Array(inner: levelorm.fields.BaseField, key=False)[source]

Bases: levelorm.fields.BaseField

represents a list. stored as an unsigned 4-byte length and however the inner class is serialized

usage example:

class Matrices(DBBaseModel):
        prefix = 'matrix'
        name = String(key=True)
        numbers = Array(Array(Integer()))
identity = Matrices('identity', [[1, 0], [0, 1]])
length_struct = <Struct object>
serialize(buf, value: list)[source]
deserialize(buf) → list[source]