24 lines
1.1 KiB
Plaintext
24 lines
1.1 KiB
Plaintext
|
digraph interpreter {
|
||
|
node [fontname="dejavusansmono"]
|
||
|
edge [fontname="dejavusansmono"]
|
||
|
node [shape=record]
|
||
|
edge [dir=back,arrowtail=empty,arrowsize=1.5]
|
||
|
Interpreter [label="{\N|+ operator(query : string, ...) : Results\l|
|
||
|
# MakeLogicalPlan(...) : LogicalPlan\l|
|
||
|
- plan_cache_ : Map(QueryHash, CachedPlan)\l}"]
|
||
|
Interpreter -> DistributedInterpreter
|
||
|
Results [label="{\N|+ PullAll(stream) : void\l|- plan_ : CachedPlan\l}"]
|
||
|
Interpreter -> Results
|
||
|
[dir=forward,style=dashed,arrowhead=open,label="<<create>>"]
|
||
|
CachedPlan -> Results
|
||
|
[dir=forward,arrowhead=odiamond,taillabel="1",headlabel="*"]
|
||
|
Interpreter -> CachedPlan [arrowtail=diamond,taillabel="1",headlabel="*"]
|
||
|
CachedPlan -> LogicalPlan [arrowtail=diamond]
|
||
|
LogicalPlan [label="{\N|+ GetRoot() : LogicalOperator
|
||
|
\l+ GetCost() : double\l}"]
|
||
|
LogicalPlan -> SingleNodeLogicalPlan [style=dashed]
|
||
|
LogicalPlan -> DistributedLogicalPlan [style=dashed]
|
||
|
DistributedInterpreter -> DistributedLogicalPlan
|
||
|
[dir=forward,style=dashed,arrowhead=open,label="<<create>>"]
|
||
|
}
|