Skip to main content

Module binary

Module binary 

Source
Expand description

SYNX Binary Format (.synxb) โ€” compact binary serialization with string interning.

Layout:

HEADER       5 bytes magic "SYNXB"
             1 byte  version (currently 1)
             1 byte  flags   (bit 0: active, bit 1: locked,
                              bit 2: has_metadata, bit 3: resolved)
STRING_TABLE varint count
             for each: varint len + UTF-8 bytes
VALUE_TREE   Root Value (recursive, strings as table indices)
[METADATA]   if flag bit 2 set
[INCLUDES]   if flag bit 2 set

Type tags (1 byte): 0x00 Null 0x01 Bool(false) 0x02 Bool(true) 0x03 Int + zigzag varint 0x04 Float + 8 bytes LE 0x05 String + varint string_table_index 0x06 Array + varint count + values 0x07 Object + varint count + (varint key_index + value) pairs 0x08 Secret + varint string_table_index

Functionsยง

compile
Compile a ParseResult into compact binary .synxb format.
decompile
Decompile a .synxb binary back into a ParseResult.
is_synxb
Check if data starts with the .synxb magic bytes.