mach_core/dag/
graph_macro.rs1
2#[allow(unused)]
3#[macro_export]
4macro_rules! graph {
5 ($var:ident, $block:block) => {
6 let mut $var = MachGraph::default();
7 $block;
8 };
9 ($var:ident, $name:expr, $block:block) => {
10 let mut $var = MachGraph::new($name);
11 $block;
12 };
13}
14
15#[allow(unused)]
16#[macro_export]
17macro_rules! node {
18 ($graph:ident, $var:ident, $name:expr) => {
19 let $var = $graph.push_child($name);
20 };
21 ($graph:ident, $var:ident, $name:expr, $block:block) => {
22 let $var = $graph.push_child($name);
23 $block;
24 };
25 ($graph:ident, $var:ident, $name:expr, $parent:expr) => {
26 let $var = $graph.push_child_of($name, &$parent);
27 };
28 ($graph:ident, $var:ident, $name:expr, $parent:expr, $block:block) => {
29 let $var = $graph.push_child_of($name, &$parent);
30 $block;
31 };
32}
33
34
35