IOweb/node_modules/satteri/dist/generated/arena-layout.js
2026-07-03 15:07:38 -05:00

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,
};