rlp.sedes package

Submodules

rlp.sedes.big_endian_int module

class rlp.sedes.big_endian_int.BigEndianInt(length=None)

Bases: object

A sedes for big endian integers.

Parameters:

l – the size of the serialized representation in bytes or None to use the shortest possible one

deserialize(serial)
serialize(obj)

rlp.sedes.binary module

class rlp.sedes.binary.Binary(min_length=None, max_length=None, allow_empty=False)

Bases: object

A sedes object for binary data of certain length.

Parameters:
  • min_length – the minimal length in bytes or None for no lower limit

  • max_length – the maximal length in bytes or None for no upper limit

  • allow_empty – if true, empty strings are considered valid even if a minimum length is required otherwise

deserialize(serial)
classmethod fixed_length(length, allow_empty=False)

Create a sedes for binary data with exactly length bytes.

is_valid_length(length)
classmethod is_valid_type(obj)
serialize(obj)

rlp.sedes.boolean module

class rlp.sedes.boolean.Boolean

Bases: object

A sedes for booleans

deserialize(serial)
serialize(obj)

rlp.sedes.lists module

Module for sedes objects that use lists as serialization format.

class rlp.sedes.lists.CountableList(element_sedes, max_length=None)

Bases: object

A sedes for lists of arbitrary length.

Parameters:
  • element_sedes – when (de-)serializing a list, this sedes will be applied to all of its elements

  • max_length – maximum number of allowed elements, or None for no limit

deserialize(serial)
serialize(obj)
class rlp.sedes.lists.List(elements=None, strict=True)

Bases: list

A sedes for lists, implemented as a list of other sedes objects.

Parameters:

strict – If true (de)serializing lists that have a length not matching the sedes length will result in an error. If false (de)serialization will stop as soon as either one of the lists runs out of elements.

deserialize(serial)
serialize(obj)
rlp.sedes.lists.is_sedes(obj)

Check if obj is a sedes object.

A sedes object is characterized by having the methods serialize(obj) and deserialize(serial).

rlp.sedes.lists.is_sequence(obj)

Check if obj is a sequence, but not a string or bytes.

rlp.sedes.raw module

A sedes that does nothing. Thus, everything that can be directly encoded by RLP is serializable. This sedes can be used as a placeholder when deserializing larger structures.

rlp.sedes.raw.deserialize(serial)
rlp.sedes.raw.serializable(obj)
rlp.sedes.raw.serialize(obj)

rlp.sedes.serializable module

class rlp.sedes.serializable.BaseChangeset(obj, changes=None)

Bases: object

build_rlp()
close()
commit()
open()
class rlp.sedes.serializable.BaseSerializable(*args, **kwargs)

Bases: Sequence

as_dict()
build_changeset(*args, **kwargs)
copy(*args, **kwargs)
classmethod deserialize(serial, **extra_kwargs)
classmethod serialize(obj)
rlp.sedes.serializable.Changeset(obj, changes)
class rlp.sedes.serializable.ChangesetField(field)

Bases: object

field = None
class rlp.sedes.serializable.ChangesetState(value)

Bases: Enum

An enumeration.

CLOSED = 'CLOSED'
INITIALIZED = 'INITIALIZED'
OPEN = 'OPEN'
class rlp.sedes.serializable.MetaBase

Bases: object

field_attrs = None
field_names = None
fields = None
sedes = None
class rlp.sedes.serializable.Serializable(*args, **kwargs)

Bases: BaseSerializable

The base class for serializable objects.

class rlp.sedes.serializable.SerializableBase(name, bases, attrs)

Bases: ABCMeta

rlp.sedes.serializable.make_immutable(value)
rlp.sedes.serializable.merge_args_to_kwargs(args, kwargs, arg_names, allow_missing=False)
rlp.sedes.serializable.merge_kwargs_to_args(args, kwargs, arg_names, allow_missing=False)
rlp.sedes.serializable.validate_args_and_kwargs(args, kwargs, arg_names, allow_missing=False)

rlp.sedes.text module

class rlp.sedes.text.Text(min_length=None, max_length=None, allow_empty=False, encoding='utf8')

Bases: object

A sedes object for encoded text data of certain length.

Parameters:
  • min_length – the minimal length in encoded characters or None for no lower limit

  • max_length – the maximal length in encoded characters or None for no upper limit

  • allow_empty – if true, empty strings are considered valid even if a minimum length is required otherwise

deserialize(serial)
classmethod fixed_length(length, allow_empty=False)

Create a sedes for text data with exactly length encoded characters.

is_valid_length(length)
classmethod is_valid_type(obj)
serialize(obj)

Module contents