aboutsummaryrefslogtreecommitdiff
path: root/rif/src/lib.rs
blob: 0e18044c3f2ff379135fa4ac144f7b2deba9bfb7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//! # Recipe Instruction Format
//!
//! A structured format for expression recipes, and work steps with
//! variable actor counts.  Ingredients and work steps are typed via
//! an internally provided schema.  The backing file-format for
//! serialisation is `g3f`.
//!
//! Each recipe is separated into threads, with a set of inputs, work
//! steps and an output.  A thread is a set of work steps that can be
//! executed by a single actor, consecutively.  Ingredients can be
//! added at every step, and can be outputs of previous threads.  This
//! creates a graph, coloured by the set of possible concurrent actors
//! that can execute the recipe.
//!
//! ## Example
//!
//! ```rust
//! let mut r = Recipe::new();
//! let mut t = r.add_thread().name("a");
//! 
//! ```


mod schema;