Skip to main content

Crate frp_engine

Crate frp_engine 

Source
Expand description

frp engine — graph execution runtime for the infinite-db frp backend.

Provides:

  • Graph — the live container that holds blocks, edges, atoms, and port values and drives the execution loop.
  • Executor — evaluates a single edge against the current port-value map.
  • Scheduler — decides which edges fire and when (OnChange / OnTick / OnEvent).
  • [toposort] — Kahn’s algorithm for ordering edges by data dependency.
  • TransformRegistry / eval_transform — named and inline transforms.
  • EngineError — unified error type.

Re-exports§

pub use error::EngineError;
pub use executor::Executor;
pub use graph::Graph;
pub use scheduler::Scheduler;
pub use toposort::toposort;
pub use transform::BoxFuture;
pub use transform::TransformRegistry;
pub use transform::eval_transform;

Modules§

error
Error types for the frp-engine crate.
executor
Edge executor — collects input values, runs the transform, and writes outputs.
graph
Graph — the live container that ties together blocks, edges, atoms, port values, scheduling, and execution.
scheduler
Edge scheduler — tracks which edges should fire and when.
toposort
Topological sort (Kahn’s algorithm) over a set of HyperEdges.
transform
Named transform registry and edge transform evaluation.