41 lines
1.2 KiB
JavaScript
41 lines
1.2 KiB
JavaScript
// @generated by `cargo run -p satteri-layout-codegen`. Do not edit by hand.
|
|
// Arena raw-buffer layout, declared once in `satteri-layout-codegen/src/schema.rs`.
|
|
// The Rust side is pinned to these offsets by the compile-time asserts in
|
|
// `satteri-arena/src/generated/layout.rs`.
|
|
/** `b"MDAR"` magic, read as a little-endian u32. */
|
|
export const ARENA_MAGIC = 0x5241444d;
|
|
/** `Arena<K>` kind tags carried in the header's `kind` field. */
|
|
export const KIND_MDAST = 1;
|
|
export const KIND_HAST = 2;
|
|
/** `ArenaNode` `#[repr(C)]` field byte offsets (u32 fields; `node_type` is a u8). */
|
|
export const FIELD = {
|
|
id: 0,
|
|
node_type: 4,
|
|
parent: 8,
|
|
start_offset: 12,
|
|
end_offset: 16,
|
|
start_line: 20,
|
|
start_column: 24,
|
|
end_line: 28,
|
|
end_column: 32,
|
|
children_start: 36,
|
|
children_count: 40,
|
|
data_offset: 44,
|
|
data_len: 48,
|
|
};
|
|
/** Raw-buffer header byte offsets (4-byte fields, u32 LE). */
|
|
export const HEADER = {
|
|
magic: 0,
|
|
kind: 4,
|
|
node_struct_size: 8,
|
|
node_count: 12,
|
|
nodes_offset: 16,
|
|
children_count: 20,
|
|
children_offset: 24,
|
|
type_data_len: 28,
|
|
type_data_offset: 32,
|
|
string_pool_len: 36,
|
|
string_pool_offset: 40,
|
|
node_data_count: 44,
|
|
node_data_offset: 48,
|
|
};
|