Skip to content

Lanes

Generic Lanes.

A lane is anything which is related to any size and optionally additional attributes.

Classes:

Name Description
Lane

Lane.

DefaultLane

Default Lane.

Functions:

Name Description
fill_lanes

Fill Empty Lane Sizes.

Lane

Bases: IdentLightObject

Lane.

Attributes:

Name Type Description
size Bytesize | None

Size in Bytes.

attrs CastableAttrs

Attributes.

size class-attribute instance-attribute

size = None

Size in Bytes.

attrs class-attribute instance-attribute

attrs = Field(default_factory=dict)

Attributes.

DefaultLane

Bases: Lane

Default Lane.

fill_lanes

fill_lanes(lanes, size, default=False)

Fill Empty Lane Sizes.

>>> fill_lanes((Lane(name='a'), Lane(name='b')), u.Bytesize('48kB'))
(Lane(name='a', size=Bytesize('24 KB')), Lane(name='b', size=Bytesize('24 KB')))
>>> fill_lanes((Lane(name='a', size='24k'), Lane(name='b', size='24k')), u.Bytesize('48kB'))
(Lane(name='a', size=Bytesize('24 KB')), Lane(name='b', size=Bytesize('24 KB')))

>>> fill_lanes((Lane(name='a', size='48k'), Lane(name='b')), u.Bytesize('48kB'))
Traceback (most recent call last):
    ...
ValueError: Lanes (Lane(name='a', size=Bytesize('48 KB')), Lane(name='b')) exceed size 48 KB
>>> fill_lanes((Lane(name='a', size='24k'), Lane(name='b', size='25k')), u.Bytesize('48kB'))
Traceback (most recent call last):
    ...
ValueError: Lanes (Lane(name='a', ... exceed size 48 KB

Empty lanes:

>>> fill_lanes((), u.Bytesize('48kB'))
()
>>> fill_lanes((), u.Bytesize('48kB'), default=True)
(DefaultLane(size=Bytesize('48 KB')),)