Node
source: bluebase/ix/node.py
- class IxPointer(buffer: bytearray)[source]
Bases:
LayoutMixin,ABCLayout
Offset
Size
Name
Format
0
4
rid_pid'<i'4
4
rid_sid'<i'8
4
link'<i'- size: ClassVar[int] = 12
The total size of the layout, automatically calculated from
fields.
- class IxLeafPointer(buffer: bytearray)[source]
Bases:
IxPointer- classmethod new(rid: RmRecordId) Self[source]
- property rid: RmRecordIdread-write
- property bid: IxBucketId | Noneread-write
- size: ClassVar[int] = 12
The total size of the layout, automatically calculated from
fields.
- class IxBranchPointer(buffer: bytearray)[source]
Bases:
IxPointer- size: ClassVar[int] = 12
The total size of the layout, automatically calculated from
fields.
- class IxNodeHeader(page: PfPage, *, offset: int, limit: int)[source]
Bases:
PfPageView,LayoutMixinnode header를 나타내는 view 클래스입니다.
Layout
Offset
Size
Name
Format
0
1
leaf'<B'1
4
key_count'<i'5
4
parent_nid'<i'9
4
prev_nid'<i'13
4
next_nid'<i'- size: ClassVar[int] = 17
The total size of the layout, automatically calculated from
fields.
- class IxNode(page: PfPage, domain: Domain, slot_capacity: int)[source]
Bases:
ABC- property header_offset: intread-only
- property header_size: intread-only
- property key_area_offset: intread-only
- property key_size: intread-only
- property key_capacity: intread-only
- property key_count: intread-write
- property pointer_area_offset: intread-only
- property pointer_size: intread-only
- property pointer_capacity: intread-only
- property pointer_count: intread-only
- abstract property slot_count_delta: intread-only
- property underflow_threshold: intread-only
- property leaf: boolread-only
- get_header() IxNodeHeader[source]
- keys(begin: IxSlotId | None = None, end: IxSlotId | None = None) Iterator[tuple[IxSlotId, bool | int | float | str]][source]
- class IxLeafNode(page: PfPage, domain: Domain, slot_capacity: int)[source]
Bases:
IxNode- property slot_count_delta: intread-only