Skip to main content

Module gc_values

Module gc_values 

Source
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