jam.state.components.beta module

class jam.state.components.beta.PackageDict(initial: Mapping[K, V] | None = None)[source]

Bases: Dictionary[ByteArray32, ByteArray32]

Work Package hashes of each item reported (no more than CORE_COUNT)

static decode_from(buffer: bytes | bytearray | memoryview, offset: int = 0) Tuple[Dictionary[K, V], int]

Decode from buffer. Must be implemented by subclasses or added via decorator.

Parameters:
  • buffer – Buffer to decode from

  • offset – Starting position in buffer

Returns:

  • The decoded value

  • Number of bytes read

Return type:

Tuple containing

key_type

alias of ByteArray32

value_type

alias of ByteArray32

class jam.state.components.beta.BlockHistory(header_hash: ByteArray32, mmr_root: MMR, state_root: ByteArray32, packages: PackageDict)[source]

Bases: Codable

Block history item

header_hash: ByteArray32
mmr_root: MMR
state_root: ByteArray32
packages: PackageDict
__init__(header_hash: ByteArray32, mmr_root: MMR, state_root: ByteArray32, packages: PackageDict) None

Initialize the Codable.

Parameters:
  • codec – Optional codec to use for encoding/decoding

  • enc_sequence – Optional function that returns sequence of fields to encode

static decode_from(buffer: bytes | bytearray | memoryview, offset: int = 0) Tuple[T, int]

Decode from buffer. Must be implemented by subclasses or added via decorator.

Parameters:
  • buffer – Buffer to decode from

  • offset – Starting position in buffer

Returns:

  • The decoded value

  • Number of bytes read

Return type:

Tuple containing

encode_into(buffer: bytearray, offset: int = 0) int

Encode into provided buffer.

encode_size() int

Calculate number of bytes needed to encode.

class jam.state.components.beta.Beta(initial: Sequence[T] = [], codec: Codec[T] | None = None)[source]

Bases: Vector[BlockHistory]

Beta state.

static decode_from(buffer: bytes | bytearray | memoryview, offset: int = 0) Tuple[Vector[T], int]

Decode from buffer. Must be implemented by subclasses or added via decorator.

Parameters:
  • buffer – Buffer to decode from

  • offset – Starting position in buffer

Returns:

  • The decoded value

  • Number of bytes read

Return type:

Tuple containing