Expand description
Binding expression compiler: parses nosqlbench-style binding chains into Polydat Kernel node wiring.
Binding syntax: FuncA(args); FuncB(args); FuncC(args)
This is a semicolon-delimited chain where the output of each
function feeds the input of the next, starting from the cycle
coordinate. So Hash(); Mod(1000000) becomes:
__binding_h_0 := hash(cycle)
binding_name := mod(__binding_h_0, 1000000)Constants§
- SESSION_
START - The session clock’s origin, in epoch milliseconds, declared on the
workload root (see
build_workload_root_kernel).
Functions§
- build_
workload_ root_ kernel - Build the workload-root
ScopeKernelas a subscope of the workload-params kernel. - collect_
param_ bindings_ into - Public wrapper for
collect_param_bindings, used byscope.rs. - compile_
bindings - compile_
bindings_ with_ opts - Compile all bindings from a set of ParsedOps into a Polydat Kernel.
- compile_
bindings_ with_ path - compile_
from_ scope - Compile a Polydat Kernel from a pre-built
BindingScope. - compile_
scope_ kernel - Compile Polydat source into a root scope kernel — a node of nmbrs’s scope tree with no parent.
- compile_
scope_ program - Compile Polydat source to the interpreter program scope synthesis reads, with no running kernel: for a caller that binds the program under a scope itself.
- legacy_
chain_ map_ to_ polydat_ lines - SRD-13f Push D: translate a Map-form bindings block (legacy
semicolon-chain syntax, e.g.
{user_id: "Hash(); Mod(1000000)"}) into Polydat source lines. Returns one or morename := func(args)lines per entry — multi-step chains expand to intermediate__chain_<name>_<i> := ...wires. - probe_
compile_ level - Compile all bindings from a set of ParsedOps into a Polydat Kernel.