Advertisement
SirNickolas

Pictures to the Parsing Tutorial

Jun 17th, 2015
2,899
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
DOT 4.13 KB | None | 0 0
  1. graph picture1 {
  2.     outerList [shape=rect];
  3.     node [shape=circle];
  4.     lcb [label="{"];
  5.     lsb1, lsb2, lsb3 [label="["];
  6.     node [shape=rect];
  7.     i1, i2, i3, i4 [label=innerList];
  8.     n42 [label=number];
  9.     c1 [label="," shape=circle];
  10.     n85 [label=number];
  11.     c2 [label="," shape=circle];
  12.     n2, n32, n012 [label=number];
  13.     c3 [label="," shape=circle];
  14.     n3 [label=number];
  15.     node [shape=circle];
  16.     rsb1, rsb2, rsb3 [label="]"];
  17.     outerList -- { lcb i1 i2 i3 i4 "}" };
  18.     i1 -- { lsb1 n42 c1 n85 c2 n2 rsb1 };
  19.     i2 -- { lsb2 n32 rsb2 };
  20.     i3 -- { lsb3 n012 c3 n3 rsb3 };
  21.     n42 -- { 4 2 };
  22.     n85 -- { 8 5 };
  23.     n2 -- d2a;
  24.     n32 -- { 3 d2b };
  25.     n012 -- { 0 1 d2c };
  26.     n3 -- d3a;
  27.     d2a, d2b, d2c [label=2];
  28.     d3a [label=3];
  29. }
  30.  
  31. graph picture2 {
  32.     node [shape=rect];
  33.     i1, i2, i3, i4 [label=InnerList];
  34.     n42 [label="Number\n42"];
  35.     n85 [label="Number\n85"];
  36.     n2 [label="Number\n2"];
  37.     n32 [label="Number\n32"];
  38.     n012 [label="Number\n012"];
  39.     n3 [label="Number\n3"];
  40.     OuterList -- { i1 i2 i3 i4 };
  41.     i1 -- { n42 n85 n2 };
  42.     i2 -- n32;
  43.     i3 -- { n012 n3 };
  44. }
  45.  
  46. graph picture3 {
  47.     node [shape=rect];
  48.     root, left [label=expr];
  49.     n1 [label=number];
  50.     plus [label="+" shape=circle];
  51.     n2 [label=number];
  52.     mul [label="*" shape=circle];
  53.     n3 [label=number];
  54.     node [shape=circle];
  55.     root -- { left mul n3 };
  56.     left -- { n1 plus n2 };
  57.     n1 -- 1;
  58.     n2 -- 2;
  59.     n3 -- 3;
  60. }
  61.  
  62. graph picture4 {
  63.     node [shape=rect];
  64.     root [label=expr];
  65.     n1 [label=number];
  66.     plus [label="+" shape=circle];
  67.     n2 [label=number];
  68.     mul [label="*" shape=circle];
  69.     n3 [label=number];
  70.     right [label=expr];
  71.     node [shape=circle];
  72.     root -- { n1 plus right };
  73.     right -- { n2 mul n3 };
  74.     n1 -- 1;
  75.     n2 -- 2;
  76.     n3 -- 3;
  77. }
  78.  
  79. graph picture5 {
  80.     node [shape=rect];
  81.     p1a [label=prio1];
  82.     p2a [label=prio2];
  83.     plus [label="+" shape=circle];
  84.     p2b [label=prio2];
  85.     p3a, p3b [label=prio3];
  86.     mul [label="*" shape=circle];
  87.     p3c [label=prio3];
  88.     p4a, p4b, p4c [label=prio4];
  89.     n1, n2, n3 [label=number];
  90.     node [shape=circle];
  91.     p1a -- { p2a plus p2b };
  92.     p2a -- p3a -- p4a -- n1 -- 1;
  93.     p2b -- { p3b mul p3c };
  94.     p3b -- p4b -- n2 -- 2;
  95.     p3c -- p4c -- n3 -- 3;
  96. }
  97.  
  98. //(2+1--4+5/+2)+---+30
  99. graph picture6 {
  100.     node [shape=rect];
  101.     lb [label="(" shape=circle];
  102.     p1a, p1b [label=prio1];
  103.     rb [label=")" shape=circle];
  104.     p2a, p2c [label=prio2];
  105.     plus1, plus2 [label="+" shape=circle];
  106.     p2b, p2d [label=prio2];
  107.     minus1, minus2, minus3, minus4, minus5 [label="-" shape=circle];
  108.     p2e [label=prio2];
  109.     plus3, plus4, plus5 [label="+" shape=circle];
  110.     p2f [label=prio2];
  111.     p3a, p3b, p3c, p3d, p3e [label=prio3];
  112.     div [label="/" shape=circle];
  113.     p3f, p3g [label=prio3];
  114.     p4a, p4b, p4c, p4d, p4e, p4f, p4g [label=prio4];
  115.     n1, n2, n3, n4, n5, n6 [label=number];
  116.  
  117.     node [shape=circle];
  118.     d2 [label=2];
  119.     p1a -- { p2a plus1 p2b };
  120.     p2a -- p3a -- p4a;
  121.     p4a -- { lb p1b rb };
  122.     p1b -- { p2c plus2 p2d minus1 p2e plus3 p2f };
  123.     p2c -- p3b -- p4b -- n1 -- 2;
  124.     p2d -- p3c -- p4c -- n2 -- 1;
  125.     p2e -- p3d -- { minus2 p4d };
  126.     p4d -- n3 -- 4;
  127.     p2f -- { p3e div p3f };
  128.     p3e -- p4e -- n4 -- 5;
  129.     p3f -- { plus4 p4f };
  130.     p4f -- n5 -- d2;
  131.     p2b -- p3g -- { minus3 minus4 minus5 plus5 p4g };
  132.     p4g -- n6 -- { 3 0 };
  133. }
  134.  
  135. graph picture7 {
  136.     node [shape=rect];
  137.     n1 [label="Number\n1"];
  138.     n2 [label="Number\n2"];
  139.     n3 [label="Number\n3"];
  140.     Add -- { n1 Mul };
  141.     Mul -- { n2 n3 };
  142. }
  143.  
  144. //(2+1--4+5/+2)+---+30
  145. graph picture8 {
  146.     node [shape=rect];
  147.     n1 [label="Number\n2"];
  148.     n2 [label="Number\n1"];
  149.     n3 [label="Number\n4"];
  150.     n4 [label="Number\n5"];
  151.     n5 [label="Number\n2"];
  152.     n6 [label="Number\n30"];
  153.     add1, add2, add3 [label=Add];
  154.     neg1, neg2, neg3 [label=Neg];
  155.     pos1 [label=Pos];
  156.     add1 -- { add2 neg1 };
  157.     add2 -- { Sub Div };
  158.     Sub -- { add3 Neg };
  159.     add3 -- { n1 n2 };
  160.     Neg -- n3;
  161.     Div -- { n4 Pos };
  162.     Pos -- n5;
  163.     neg1 -- neg2 -- neg3 -- pos1 -- n6;
  164. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement