Skip to main content

Module build

Module build 

Source
Expand description

Constructors for kernel Expr data.

These are the one home for “make a symbol / number / string / map”. Float canonicalization matches Rust’s f64 Display (which already drops a trailing .0), so values built here are byte-identical to a direct number(f64) construction.

Functions§

entry
A single map entry with a bare-symbol key: (sym(name), value). This is the one home for the fn entry(name, value) tuple builder used by domain crates (topology, agent, reflection).
float
An f64-domain number value with a canonical literal.
int
An i64-domain number value.
keyword
A bare keyword Symbol (NOT wrapped in Expr). This is the one home for the fn field(name) -> Symbol / Symbol::new(name) wrappers that test and codec crates re-grew; use sym when an Expr is wanted.
list
A list value.
map
A map value from string-keyed entries (keys become unqualified symbols).
num
A number value in domain with the given canonical literal.
num_q
A number value whose domain may be namespace-qualified. num_q(None, name, canonical) is identical to num; num_q(Some(ns), name, canonical) emits a qualified domain symbol (for example numbers/f64). Use this when a caller must preserve an existing qualified number domain rather than the unqualified spelling produced by float or num.
qsym
A qualified symbol value: Expr::Symbol(Symbol::qualified(ns, name)).
sym
An unqualified symbol value: Expr::Symbol(Symbol::new(name)).
text
A string value.
uint
An i64-domain number value from an unsigned integer.
vector
A vector value.