---
source: hydroflow/tests/surface_join.rs
expression: "df.meta_graph().unwrap().to_dot(&Default::default())"
---
digraph {
node [fontname="Monaco,Menlo,Consolas,"Droid Sans Mono",Inconsolata,"Courier New",monospace", style=filled];
edge [fontname="Monaco,Menlo,Consolas,"Droid Sans Mono",Inconsolata,"Courier New",monospace"];
n1v1 [label="(n1v1) source_iter([(7, 1), (7, 2)])", shape=invhouse, fillcolor="#88aaff"]
n2v1 [label="(n2v1) source_iter([(7, 0)])", shape=invhouse, fillcolor="#88aaff"]
n3v1 [label="(n3v1) source_iter([(7, 1)])", shape=invhouse, fillcolor="#88aaff"]
n4v1 [label="(n4v1) defer_tick()", shape=invhouse, fillcolor="#88aaff"]
n5v1 [label="(n5v1) source_iter([(7, 2)])", shape=invhouse, fillcolor="#88aaff"]
n6v1 [label="(n6v1) defer_tick()", shape=invhouse, fillcolor="#88aaff"]
n7v1 [label="(n7v1) defer_tick()", shape=invhouse, fillcolor="#88aaff"]
n8v1 [label="(n8v1) union()", shape=invhouse, fillcolor="#88aaff"]
n9v1 [label="(n9v1) join::<'tick, 'static>()", shape=invhouse, fillcolor="#88aaff"]
n10v1 [label="(n10v1) for_each(|x| {\l results_inner.borrow_mut().entry(context.current_tick()).or_default().push(x)\l})\l", shape=house, fillcolor="#ffff88"]
n11v1 [label="(n11v1) handoff", shape=parallelogram, fillcolor="#ddddff"]
n12v1 [label="(n12v1) handoff", shape=parallelogram, fillcolor="#ddddff"]
n13v1 [label="(n13v1) handoff", shape=parallelogram, fillcolor="#ddddff"]
n14v1 [label="(n14v1) identity()", shape=invhouse, fillcolor="#88aaff"]
n15v1 [label="(n15v1) handoff", shape=parallelogram, fillcolor="#ddddff"]
n16v1 [label="(n16v1) identity()", shape=invhouse, fillcolor="#88aaff"]
n17v1 [label="(n17v1) handoff", shape=parallelogram, fillcolor="#ddddff"]
n18v1 [label="(n18v1) identity()", shape=invhouse, fillcolor="#88aaff"]
n19v1 [label="(n19v1) handoff", shape=parallelogram, fillcolor="#ddddff"]
n1v1 -> n9v1 [label="0"]
n2v1 -> n8v1
n4v1 -> n8v1
n3v1 -> n11v1
n7v1 -> n8v1
n6v1 -> n12v1
n5v1 -> n13v1
n8v1 -> n9v1 [label="1"]
n9v1 -> n10v1
n11v1 -> n14v1
n12v1 -> n16v1
n13v1 -> n18v1
n14v1 -> n15v1
n15v1 -> n4v1 [color=red]
n16v1 -> n17v1
n17v1 -> n7v1 [color=red]
n18v1 -> n19v1
n19v1 -> n6v1 [color=red]
subgraph "cluster n1v1" {
fillcolor="#dddddd"
style=filled
label = "sg_1v1\nstratum 0"
n3v1
}
subgraph "cluster n2v1" {
fillcolor="#dddddd"
style=filled
label = "sg_2v1\nstratum 0"
n5v1
}
subgraph "cluster n3v1" {
fillcolor="#dddddd"
style=filled
label = "sg_3v1\nstratum 0"
n6v1
}
subgraph "cluster n4v1" {
fillcolor="#dddddd"
style=filled
label = "sg_4v1\nstratum 0"
n1v1
n2v1
n4v1
n7v1
n8v1
n9v1
n10v1
subgraph "cluster_sg_4v1_var_my_join" {
label="var my_join"
n9v1
n10v1
}
subgraph "cluster_sg_4v1_var_unioner" {
label="var unioner"
n8v1
}
}
subgraph "cluster n5v1" {
fillcolor="#dddddd"
style=filled
label = "sg_5v1\nstratum 1"
n14v1
}
subgraph "cluster n6v1" {
fillcolor="#dddddd"
style=filled
label = "sg_6v1\nstratum 1"
n16v1
}
subgraph "cluster n7v1" {
fillcolor="#dddddd"
style=filled
label = "sg_7v1\nstratum 1"
n18v1
}
}