Expand description
§taskgraph-rs
A NASA-grade, zero-deps, no_std DAG task orchestrator in Rust.
Features:
- Zero-Unsafe:
#[forbid(unsafe_code)]for maximum safety. - No-Std: Fully compatible with embedded systems and bare-metal.
- Scalable: From 1KB RAM static graphs to dynamic allocation via feature tags.
Re-exports§
pub use crate::error::TaskError;pub use crate::error::Result;pub use crate::core::task::Task;pub use crate::core::task::TaskStatus;pub use crate::core::task::TaskStore;pub use crate::core::task::TaskBody;pub use crate::storage::static_store::StaticStore;pub use crate::executor::sync::SyncExecutor;pub use crate::core::scheduler::validate_graph;pub use crate::core::events::TaskEvent;pub use crate::core::events::TaskSubscriber;
Modules§
- core
- error
- Error module for taskgraph-rs.
Fully compatible with
no_std. - executor
- Executors for task graphs.
- storage
- Storage backend implementations.
- utils
- Utility modules for taskgraph-rs.
Macros§
- task_
node - taskgraph
- A declarative macro to build a task graph. Example: let mut graph = StaticGraph::<10>::new(StaticStore::new()); let a = task_node!(graph, “A”, job_a); let b = task_node!(graph, “B”, job_b, deps: [a]);
Structs§
- Task
Graph - The main entry point for creating a task graph.
Type Aliases§
- Static
Graph - Convenience type for a static task graph.