Skip to main content

Module bindings

Module bindings 

Source
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 ScopeKernel as a subscope of the workload-params kernel.
collect_param_bindings_into
Public wrapper for collect_param_bindings, used by scope.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 more name := 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.