Expand description
Warp’s GC Nodes (CLAUDE.md “Serialization”, warp’s type_kinds.rs) as JSON and back, for an executable’s foreign calls (card exe-foreign): what warp does with json_of(node_in(…)) and Builders::build(TaskValue::of(node_of(…))), without warp’s Node. warp’s tests/wasm/test_executable_foreign.rs holds these codes equal to warp’s.
Structs§
- Builders
- The constructors, memory and text heap of the program: what JSON is built into a node with
Constants§
- BLOCK
- BOOL_
INFO - The high bits of a bool’s Int kind
- BUILDERS
- CODEPOINT
- COLON
- Op::Colon’s code,
key: value - CURLY
- EMPTY
- ERROR
- FLOAT
- FUNCTION
- INT
- KEY
- KIND_
BITS - KIND_
MASK - LIST
- MEMORY
- SQUARE
- SYMBOL
- TEXT
- TEXT_
HEAP - The global holding the end of the program’s texts (warp’s TEXT_HEAP_EXPORT)
Functions§
- foreign_
call - The host side of foreign_call(runtime, module, member, call, arguments) in an executable: python and js through the bridge (foreign.rs), the answer built in the program; components and warp functions refused loudly
- items_
of - The items of a list from its node’s data and value: a vector’s items, else those of its cons cells, each cell’s first item, then its rest, a cell or a last single item
- json_of
- A program’s node as JSON: lists as arrays, a curly list of keys as an object, big integers and ratios as floats
- parts_
of - The parts of a node: a list’s items, ø none, anything else itself (a call’s arguments)
- vector_
items - The items of a list held as a vector,
$list (len i32, items (array anyref))(lib/compiler/emitter.warp): its first field is the i32 length, where a cons cell’s first item is a $Node, whose first field is the i64 kind - write_
at - The bytes at
pointer, the memory grown to hold them - write_
to_ heap - Copy bytes into a module’s memory at its text heap, for any store: fresh pages past the current memory when the heap is unset or full, the module’s own emit_text_allocation rule