Expand description
flowrlib
is the runtime library for flow execution. This can be used to produce a flow runner,
such as the flowr
command line runner.
It is responsible for reading a flow’s compiled FlowManifest, loading the required libraries using LibraryManifests files and then coordinating the execution of functions by dispatching Jobs (that include a reference to the function’s Implementations and the input values required to run) then gathering the Result and passing the output value to other connected functions in the flow graph
Modules
- Provides Block that represents a block imposed on a function due to destination being busy
- Provides Coordinator responsible for coordinating the execution of flows submitted to it
- Provides the DebugCommand enum for commands from debug client to debug server
- The DebuggerHandler trait defines methods a a client must implement in order to handle the interaction between a client and the debugger (in the Coordinator)
- Holds all Error types, and other modules in this crate will
use errors::*;
to get access to everythingerror_chain
creates. - Provides Executor that receives jobs for execution, executes them and returns results
- Provides methods to get information about this library
- Provides Job that holds jobs before and after their execution
- Provides RunState that tracks the current runtime state, used by Coordinator
- Provides well-known service names used across multiple binary crates
- The SubmissionHandler trait defines methods a client must implement in order to handle submissions from a client