Source code for jam.types.protocol.availability

from dataclasses import dataclass
from jam.types.base.choices import Choice
from jam.types.base.integers.fixed import U32
from jam.types.base.sequences.array import Array, decodable_array
from jam.types.work import WorkReport
from jam.utils.codec.codable import Codable
from jam.utils.codec.decorators.dataclasses import decodable_dataclass
from jam.utils.constants import CORE_COUNT
from jam.utils.json.serde import JsonSerde


[docs] @decodable_dataclass @dataclass class AvailabilityAssignment(Codable, JsonSerde): """Availability assignment structure.""" report: WorkReport timeout: U32
"""Fixed-size array of availability assignments."""
[docs] @decodable_array(length=CORE_COUNT, element_type=Choice) class AvailabilityAssignments(Array[Choice]): ...