Skip to main content

Crate graphix_compiler

Crate graphix_compiler 

Source

Modules§

env
expr
node
typ

Macros§

defetyp
deref_typ
err
errf
tdbg
update_args
wrap

Structs§

AbstractTypeRegistry
A registry of abstract type UUIDs used by graphix and graphix libraries, along with a string tag describing what the type is. We must do this because you can’t register different type ids with the same uuid in netidx’s abstract type system, and because abstract types often need to be parameterized by the Rt and UserEvent they will have different a different type id for each monomorphization, and thus they must have a different uuid.
BindId
Event
Event represents all the things that happened simultaneously in a given execution cycle. Event may contain only one update for each variable and netidx subscription in a given cycle, if more updates happen simultaneously they must be queued and deferred to later cycles.
ExecCtx
LambdaId
LibState
NoUserEvent
Refs
Scope

Enums§

CFlag
PrintFlag

Statics§

CBATCH_POOL
global pool of channel watch batches

Traits§

Abortable
Apply
Apply is a kind of node that represents a function application. It does not hold ownership of it’s arguments, instead those are held by a CallSite node. This allows us to change the function called at runtime without recompiling the arguments.
BuiltIn
CustomBuiltinType
Rt
Update
Update represents a regular graph node, as opposed to a function application represented by Apply. Regular graph nodes are used for every built in node except for builtin functions.
UserEvent

Functions§

compile
compile the expression into a node graph in the specified context and scope, return the root node or an error if compilation failed.
format_with_flags
For the duration of the closure F change the way type variables are formatted (on this thread only) according to the specified flags.

Type Aliases§

BuiltInInitFn
InitFn
Node