mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 04:13:03 +00:00
dot: also use a dot in the output
* src/print-graph.c (print_core): Use a dot instead of a point. * doc/figs/example-reduce.gv, doc/figs/example-reduce.txt, * doc/figs/example-shift.gv, doc/figs/example-shift.txt, * doc/figs/example.gv: Update. * tests/output.at, tests/report.at: Adjust.
This commit is contained in:
@@ -3,7 +3,7 @@ digraph "reduce.y"
|
||||
node [fontname=courier shape=box]
|
||||
edge [fontname=courier]
|
||||
|
||||
1 [label="State 1\n 3 a: \"0\" . [\".\"]\l 4 b: \"0\" . [\";\"]\l"]
|
||||
1 [label="State 1\n 3 a: \"0\" • [\".\"]\l 4 b: \"0\" • [\";\"]\l"]
|
||||
1 -> "1R3" [label="" style=solid]
|
||||
"1R3" [style=filled shape=diamond fillcolor=yellowgreen label="R3"]
|
||||
1 -> "1R4" [label="[\";\"]" style=solid]
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
.------------------.
|
||||
| State 1 |
|
||||
| 3 a: "0" . [";"] |
|
||||
| 4 b: "0" . ["."] |
|
||||
| 3 a: "0" • [";"] |
|
||||
| 4 b: "0" • ["."] |
|
||||
`------------------'
|
||||
/ \
|
||||
/ \ ["."]
|
||||
|
||||
@@ -3,7 +3,7 @@ digraph "shift.y"
|
||||
node [fontname=courier shape=box]
|
||||
edge [fontname=courier]
|
||||
|
||||
3 [label="State 3\n 1 exp: a . \".\"\l"]
|
||||
3 [label="State 3\n 1 exp: a • \".\"\l"]
|
||||
3 -> 6 [style=solid label="\".\""]
|
||||
6 [label="State 6\n 1 exp: a \".\" .\l"]
|
||||
6 [label="State 6\n 1 exp: a \".\" •\l"]
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
.----------------.
|
||||
| State 3 |
|
||||
| 1 exp: a . ";" |
|
||||
| 1 exp: a • ";" |
|
||||
`----------------'
|
||||
|
|
||||
| ";"
|
||||
@@ -8,5 +8,5 @@
|
||||
v
|
||||
.----------------.
|
||||
| State 6 |
|
||||
| 1 exp: a ";" . |
|
||||
| 1 exp: a ";" • |
|
||||
`----------------'
|
||||
|
||||
@@ -7,29 +7,29 @@ digraph "example.y"
|
||||
node [fontname = courier, shape = box, colorscheme = paired6]
|
||||
edge [fontname = courier]
|
||||
|
||||
0 [label="State 0\n\l 0 $accept: . exp $end\l 1 exp: . a \";\"\l 2 | . b \".\"\l 3 a: . \"0\"\l 4 b: . \"0\"\l"]
|
||||
0 [label="State 0\n\l 0 $accept: • exp $end\l 1 exp: • a \";\"\l 2 | • b \".\"\l 3 a: • \"0\"\l 4 b: • \"0\"\l"]
|
||||
0 -> 1 [style=solid label="\"0\""]
|
||||
0 -> 2 [style=dashed label="exp"]
|
||||
0 -> 3 [style=dashed label="a"]
|
||||
0 -> 4 [style=dashed label="b"]
|
||||
1 [label="State 1\n\l 3 a: \"0\" . [\";\"]\l 4 b: \"0\" . [\".\"]\l"]
|
||||
1 [label="State 1\n\l 3 a: \"0\" • [\";\"]\l 4 b: \"0\" • [\".\"]\l"]
|
||||
1 -> "1R3" [style=solid]
|
||||
"1R3" [label="R3", fillcolor=3, shape=diamond, style=filled]
|
||||
1 -> "1R4" [label="[\".\"]", style=solid]
|
||||
"1R4" [label="R4", fillcolor=3, shape=diamond, style=filled]
|
||||
2 [label="State 2\n\l 0 $accept: exp . $end\l"]
|
||||
2 [label="State 2\n\l 0 $accept: exp • $end\l"]
|
||||
2 -> 5 [style=solid label="$end"]
|
||||
3 [label="State 3\n\l 1 exp: a . \";\"\l"]
|
||||
3 [label="State 3\n\l 1 exp: a • \";\"\l"]
|
||||
3 -> 6 [style=solid label="\";\""]
|
||||
4 [label="State 4\n\l 2 exp: b . \".\"\l"]
|
||||
4 [label="State 4\n\l 2 exp: b • \".\"\l"]
|
||||
4 -> 7 [style=solid label="\".\""]
|
||||
5 [label="State 5\n\l 0 $accept: exp $end .\l"]
|
||||
5 [label="State 5\n\l 0 $accept: exp $end •\l"]
|
||||
5 -> "5R0" [style=solid]
|
||||
"5R0" [label="Acc", fillcolor=1, shape=diamond, style=filled]
|
||||
6 [label="State 6\n\l 1 exp: a \";\" .\l"]
|
||||
6 [label="State 6\n\l 1 exp: a \";\" •\l"]
|
||||
6 -> "6R1" [style=solid]
|
||||
"6R1" [label="R1", fillcolor=3, shape=diamond, style=filled]
|
||||
7 [label="State 7\n\l 2 exp: b \".\" .\l"]
|
||||
7 [label="State 7\n\l 2 exp: b \".\" •\l"]
|
||||
7 -> "7R2" [style=solid]
|
||||
"7R2" [label="R2", fillcolor=3, shape=diamond, style=filled]
|
||||
}
|
||||
|
||||
@@ -84,7 +84,7 @@ print_core (struct obstack *oout, state *s)
|
||||
obstack_1grow (oout, ' ');
|
||||
}
|
||||
|
||||
obstack_1grow (oout, '.');
|
||||
obstack_sgrow (oout, "•");
|
||||
|
||||
if (0 <= *r->rhs)
|
||||
for (item_number const *sp = sp1; 0 <= *sp; ++sp)
|
||||
|
||||
170
tests/output.at
170
tests/output.at
@@ -332,13 +332,7 @@ AT_KEYWORDS([[graph]])
|
||||
AT_DATA([[input.y]], [$2])
|
||||
AT_BISON_CHECK([[-rall --graph input.y]], [0], [[]], [[ignore]])
|
||||
AT_CHECK([[grep -v // input.dot]], [0],
|
||||
[[
|
||||
digraph "input.y"
|
||||
{
|
||||
node [fontname = courier, shape = box, colorscheme = paired6]
|
||||
edge [fontname = courier]
|
||||
]$3[}
|
||||
]])
|
||||
[$3])
|
||||
AT_CLEANUP
|
||||
])
|
||||
|
||||
@@ -354,27 +348,33 @@ a: ;
|
||||
b: 'b';
|
||||
]],
|
||||
[[
|
||||
0 [label="State 0\n\l 0 $accept: . exp $end\l 1 exp: . a '?' b\l 2 a: . %empty\l"]
|
||||
digraph "input.y"
|
||||
{
|
||||
node [fontname = courier, shape = box, colorscheme = paired6]
|
||||
edge [fontname = courier]
|
||||
|
||||
0 [label="State 0\n\l 0 $accept: • exp $end\l 1 exp: • a '?' b\l 2 a: • %empty\l"]
|
||||
0 -> 1 [style=dashed label="exp"]
|
||||
0 -> 2 [style=dashed label="a"]
|
||||
0 -> "0R2" [style=solid]
|
||||
"0R2" [label="R2", fillcolor=3, shape=diamond, style=filled]
|
||||
1 [label="State 1\n\l 0 $accept: exp . $end\l"]
|
||||
1 [label="State 1\n\l 0 $accept: exp • $end\l"]
|
||||
1 -> 3 [style=solid label="$end"]
|
||||
2 [label="State 2\n\l 1 exp: a . '?' b\l"]
|
||||
2 [label="State 2\n\l 1 exp: a • '?' b\l"]
|
||||
2 -> 4 [style=solid label="'?'"]
|
||||
3 [label="State 3\n\l 0 $accept: exp $end .\l"]
|
||||
3 [label="State 3\n\l 0 $accept: exp $end •\l"]
|
||||
3 -> "3R0" [style=solid]
|
||||
"3R0" [label="Acc", fillcolor=1, shape=diamond, style=filled]
|
||||
4 [label="State 4\n\l 1 exp: a '?' . b\l 3 b: . 'b'\l"]
|
||||
4 [label="State 4\n\l 1 exp: a '?' • b\l 3 b: • 'b'\l"]
|
||||
4 -> 5 [style=solid label="'b'"]
|
||||
4 -> 6 [style=dashed label="b"]
|
||||
5 [label="State 5\n\l 3 b: 'b' .\l"]
|
||||
5 [label="State 5\n\l 3 b: 'b' •\l"]
|
||||
5 -> "5R3" [style=solid]
|
||||
"5R3" [label="R3", fillcolor=3, shape=diamond, style=filled]
|
||||
6 [label="State 6\n\l 1 exp: a '?' b .\l"]
|
||||
6 [label="State 6\n\l 1 exp: a '?' b •\l"]
|
||||
6 -> "6R1" [style=solid]
|
||||
"6R1" [label="R1", fillcolor=3, shape=diamond, style=filled]
|
||||
}
|
||||
]])
|
||||
|
||||
## ------------------------ ##
|
||||
@@ -396,7 +396,12 @@ empty_b: %prec 'b';
|
||||
empty_c: %prec 'c';
|
||||
]],
|
||||
[[
|
||||
0 [label="State 0\n\l 0 $accept: . start $end\l 1 start: . 'a'\l 2 | . empty_a 'a'\l 3 | . 'b'\l 4 | . empty_b 'b'\l 5 | . 'c'\l 6 | . empty_c 'c'\l 7 empty_a: . %empty ['a']\l 8 empty_b: . %empty ['b']\l 9 empty_c: . %empty ['c']\l"]
|
||||
digraph "input.y"
|
||||
{
|
||||
node [fontname = courier, shape = box, colorscheme = paired6]
|
||||
edge [fontname = courier]
|
||||
|
||||
0 [label="State 0\n\l 0 $accept: • start $end\l 1 start: • 'a'\l 2 | • empty_a 'a'\l 3 | • 'b'\l 4 | • empty_b 'b'\l 5 | • 'c'\l 6 | • empty_c 'c'\l 7 empty_a: • %empty ['a']\l 8 empty_b: • %empty ['b']\l 9 empty_c: • %empty ['c']\l"]
|
||||
0 -> 1 [style=solid label="'a'"]
|
||||
0 -> 2 [style=solid label="'b'"]
|
||||
0 -> 3 [style=solid label="'c'"]
|
||||
@@ -410,35 +415,36 @@ empty_c: %prec 'c';
|
||||
"0R8d" [label="R8", fillcolor=5, shape=diamond, style=filled]
|
||||
0 -> "0R9d" [label="['c']", style=solid]
|
||||
"0R9d" [label="R9", fillcolor=5, shape=diamond, style=filled]
|
||||
1 [label="State 1\n\l 1 start: 'a' .\l"]
|
||||
1 [label="State 1\n\l 1 start: 'a' •\l"]
|
||||
1 -> "1R1" [style=solid]
|
||||
"1R1" [label="R1", fillcolor=3, shape=diamond, style=filled]
|
||||
2 [label="State 2\n\l 3 start: 'b' .\l"]
|
||||
2 [label="State 2\n\l 3 start: 'b' •\l"]
|
||||
2 -> "2R3" [style=solid]
|
||||
"2R3" [label="R3", fillcolor=3, shape=diamond, style=filled]
|
||||
3 [label="State 3\n\l 5 start: 'c' .\l"]
|
||||
3 [label="State 3\n\l 5 start: 'c' •\l"]
|
||||
3 -> "3R5" [style=solid]
|
||||
"3R5" [label="R5", fillcolor=3, shape=diamond, style=filled]
|
||||
4 [label="State 4\n\l 0 $accept: start . $end\l"]
|
||||
4 [label="State 4\n\l 0 $accept: start • $end\l"]
|
||||
4 -> 8 [style=solid label="$end"]
|
||||
5 [label="State 5\n\l 2 start: empty_a . 'a'\l"]
|
||||
5 [label="State 5\n\l 2 start: empty_a • 'a'\l"]
|
||||
5 -> 9 [style=solid label="'a'"]
|
||||
6 [label="State 6\n\l 4 start: empty_b . 'b'\l"]
|
||||
6 [label="State 6\n\l 4 start: empty_b • 'b'\l"]
|
||||
6 -> 10 [style=solid label="'b'"]
|
||||
7 [label="State 7\n\l 6 start: empty_c . 'c'\l"]
|
||||
7 [label="State 7\n\l 6 start: empty_c • 'c'\l"]
|
||||
7 -> 11 [style=solid label="'c'"]
|
||||
8 [label="State 8\n\l 0 $accept: start $end .\l"]
|
||||
8 [label="State 8\n\l 0 $accept: start $end •\l"]
|
||||
8 -> "8R0" [style=solid]
|
||||
"8R0" [label="Acc", fillcolor=1, shape=diamond, style=filled]
|
||||
9 [label="State 9\n\l 2 start: empty_a 'a' .\l"]
|
||||
9 [label="State 9\n\l 2 start: empty_a 'a' •\l"]
|
||||
9 -> "9R2" [style=solid]
|
||||
"9R2" [label="R2", fillcolor=3, shape=diamond, style=filled]
|
||||
10 [label="State 10\n\l 4 start: empty_b 'b' .\l"]
|
||||
10 [label="State 10\n\l 4 start: empty_b 'b' •\l"]
|
||||
10 -> "10R4" [style=solid]
|
||||
"10R4" [label="R4", fillcolor=3, shape=diamond, style=filled]
|
||||
11 [label="State 11\n\l 6 start: empty_c 'c' .\l"]
|
||||
11 [label="State 11\n\l 6 start: empty_c 'c' •\l"]
|
||||
11 -> "11R6" [style=solid]
|
||||
"11R6" [label="R6", fillcolor=3, shape=diamond, style=filled]
|
||||
}
|
||||
]])
|
||||
|
||||
## ---------------------- ##
|
||||
@@ -463,7 +469,12 @@ empty_b: %prec 'b';
|
||||
empty_c: %prec 'c';
|
||||
]],
|
||||
[[
|
||||
0 [label="State 0\n\l 0 $accept: . start $end\l 1 start: . 'a'\l 2 | . empty_a 'a'\l 3 | . 'b'\l 4 | . empty_b 'b'\l 5 | . 'c'\l 6 | . empty_c 'c'\l 7 empty_a: . %empty ['a']\l 8 empty_b: . %empty []\l 9 empty_c: . %empty []\l"]
|
||||
digraph "input.y"
|
||||
{
|
||||
node [fontname = courier, shape = box, colorscheme = paired6]
|
||||
edge [fontname = courier]
|
||||
|
||||
0 [label="State 0\n\l 0 $accept: • start $end\l 1 start: • 'a'\l 2 | • empty_a 'a'\l 3 | • 'b'\l 4 | • empty_b 'b'\l 5 | • 'c'\l 6 | • empty_c 'c'\l 7 empty_a: • %empty ['a']\l 8 empty_b: • %empty []\l 9 empty_c: • %empty []\l"]
|
||||
0 -> 1 [style=solid label="'b'"]
|
||||
0 -> 2 [style=solid label="'c'"]
|
||||
0 -> 3 [style=dashed label="start"]
|
||||
@@ -472,32 +483,33 @@ empty_c: %prec 'c';
|
||||
0 -> 6 [style=dashed label="empty_c"]
|
||||
0 -> "0R7" [style=solid]
|
||||
"0R7" [label="R7", fillcolor=3, shape=diamond, style=filled]
|
||||
1 [label="State 1\n\l 3 start: 'b' .\l"]
|
||||
1 [label="State 1\n\l 3 start: 'b' •\l"]
|
||||
1 -> "1R3" [style=solid]
|
||||
"1R3" [label="R3", fillcolor=3, shape=diamond, style=filled]
|
||||
2 [label="State 2\n\l 5 start: 'c' .\l"]
|
||||
2 [label="State 2\n\l 5 start: 'c' •\l"]
|
||||
2 -> "2R5" [style=solid]
|
||||
"2R5" [label="R5", fillcolor=3, shape=diamond, style=filled]
|
||||
3 [label="State 3\n\l 0 $accept: start . $end\l"]
|
||||
3 [label="State 3\n\l 0 $accept: start • $end\l"]
|
||||
3 -> 7 [style=solid label="$end"]
|
||||
4 [label="State 4\n\l 2 start: empty_a . 'a'\l"]
|
||||
4 [label="State 4\n\l 2 start: empty_a • 'a'\l"]
|
||||
4 -> 8 [style=solid label="'a'"]
|
||||
5 [label="State 5\n\l 4 start: empty_b . 'b'\l"]
|
||||
5 [label="State 5\n\l 4 start: empty_b • 'b'\l"]
|
||||
5 -> 9 [style=solid label="'b'"]
|
||||
6 [label="State 6\n\l 6 start: empty_c . 'c'\l"]
|
||||
6 [label="State 6\n\l 6 start: empty_c • 'c'\l"]
|
||||
6 -> 10 [style=solid label="'c'"]
|
||||
7 [label="State 7\n\l 0 $accept: start $end .\l"]
|
||||
7 [label="State 7\n\l 0 $accept: start $end •\l"]
|
||||
7 -> "7R0" [style=solid]
|
||||
"7R0" [label="Acc", fillcolor=1, shape=diamond, style=filled]
|
||||
8 [label="State 8\n\l 2 start: empty_a 'a' .\l"]
|
||||
8 [label="State 8\n\l 2 start: empty_a 'a' •\l"]
|
||||
8 -> "8R2" [style=solid]
|
||||
"8R2" [label="R2", fillcolor=3, shape=diamond, style=filled]
|
||||
9 [label="State 9\n\l 4 start: empty_b 'b' .\l"]
|
||||
9 [label="State 9\n\l 4 start: empty_b 'b' •\l"]
|
||||
9 -> "9R4" [style=solid]
|
||||
"9R4" [label="R4", fillcolor=3, shape=diamond, style=filled]
|
||||
10 [label="State 10\n\l 6 start: empty_c 'c' .\l"]
|
||||
10 [label="State 10\n\l 6 start: empty_c 'c' •\l"]
|
||||
10 -> "10R6" [style=solid]
|
||||
"10R6" [label="R6", fillcolor=3, shape=diamond, style=filled]
|
||||
}
|
||||
]])
|
||||
|
||||
## ---------------- ##
|
||||
@@ -511,7 +523,12 @@ a: ;
|
||||
b: ;
|
||||
]],
|
||||
[[
|
||||
0 [label="State 0\n\l 0 $accept: . exp $end\l 1 exp: . a\l 2 | . b\l 3 a: . %empty [$end]\l 4 b: . %empty [$end]\l"]
|
||||
digraph "input.y"
|
||||
{
|
||||
node [fontname = courier, shape = box, colorscheme = paired6]
|
||||
edge [fontname = courier]
|
||||
|
||||
0 [label="State 0\n\l 0 $accept: • exp $end\l 1 exp: • a\l 2 | • b\l 3 a: • %empty [$end]\l 4 b: • %empty [$end]\l"]
|
||||
0 -> 1 [style=dashed label="exp"]
|
||||
0 -> 2 [style=dashed label="a"]
|
||||
0 -> 3 [style=dashed label="b"]
|
||||
@@ -519,17 +536,18 @@ b: ;
|
||||
"0R3" [label="R3", fillcolor=3, shape=diamond, style=filled]
|
||||
0 -> "0R4d" [label="[$end]", style=solid]
|
||||
"0R4d" [label="R4", fillcolor=5, shape=diamond, style=filled]
|
||||
1 [label="State 1\n\l 0 $accept: exp . $end\l"]
|
||||
1 [label="State 1\n\l 0 $accept: exp • $end\l"]
|
||||
1 -> 4 [style=solid label="$end"]
|
||||
2 [label="State 2\n\l 1 exp: a .\l"]
|
||||
2 [label="State 2\n\l 1 exp: a •\l"]
|
||||
2 -> "2R1" [style=solid]
|
||||
"2R1" [label="R1", fillcolor=3, shape=diamond, style=filled]
|
||||
3 [label="State 3\n\l 2 exp: b .\l"]
|
||||
3 [label="State 3\n\l 2 exp: b •\l"]
|
||||
3 -> "3R2" [style=solid]
|
||||
"3R2" [label="R2", fillcolor=3, shape=diamond, style=filled]
|
||||
4 [label="State 4\n\l 0 $accept: exp $end .\l"]
|
||||
4 [label="State 4\n\l 0 $accept: exp $end •\l"]
|
||||
4 -> "4R0" [style=solid]
|
||||
"4R0" [label="Acc", fillcolor=1, shape=diamond, style=filled]
|
||||
}
|
||||
]])
|
||||
|
||||
## ---------------------------------------- ##
|
||||
@@ -544,7 +562,12 @@ b: ;
|
||||
c: ;
|
||||
]],
|
||||
[[
|
||||
0 [label="State 0\n\l 0 $accept: . exp $end\l 1 exp: . a ';'\l 2 | . a ';'\l 3 | . a '.'\l 4 | . b '?'\l 5 | . b '!'\l 6 | . c '?'\l 7 | . c ';'\l 8 a: . %empty [';', '.']\l 9 b: . %empty ['?', '!']\l 10 c: . %empty [';', '?']\l"]
|
||||
digraph "input.y"
|
||||
{
|
||||
node [fontname = courier, shape = box, colorscheme = paired6]
|
||||
edge [fontname = courier]
|
||||
|
||||
0 [label="State 0\n\l 0 $accept: • exp $end\l 1 exp: • a ';'\l 2 | • a ';'\l 3 | • a '.'\l 4 | • b '?'\l 5 | • b '!'\l 6 | • c '?'\l 7 | • c ';'\l 8 a: • %empty [';', '.']\l 9 b: • %empty ['?', '!']\l 10 c: • %empty [';', '?']\l"]
|
||||
0 -> 1 [style=dashed label="exp"]
|
||||
0 -> 2 [style=dashed label="a"]
|
||||
0 -> 3 [style=dashed label="b"]
|
||||
@@ -555,40 +578,41 @@ c: ;
|
||||
"0R9" [label="R9", fillcolor=3, shape=diamond, style=filled]
|
||||
0 -> "0R10d" [label="[';', '?']", style=solid]
|
||||
"0R10d" [label="R10", fillcolor=5, shape=diamond, style=filled]
|
||||
1 [label="State 1\n\l 0 $accept: exp . $end\l"]
|
||||
1 [label="State 1\n\l 0 $accept: exp • $end\l"]
|
||||
1 -> 5 [style=solid label="$end"]
|
||||
2 [label="State 2\n\l 1 exp: a . ';'\l 2 | a . ';'\l 3 | a . '.'\l"]
|
||||
2 [label="State 2\n\l 1 exp: a • ';'\l 2 | a • ';'\l 3 | a • '.'\l"]
|
||||
2 -> 6 [style=solid label="';'"]
|
||||
2 -> 7 [style=solid label="'.'"]
|
||||
3 [label="State 3\n\l 4 exp: b . '?'\l 5 | b . '!'\l"]
|
||||
3 [label="State 3\n\l 4 exp: b • '?'\l 5 | b • '!'\l"]
|
||||
3 -> 8 [style=solid label="'?'"]
|
||||
3 -> 9 [style=solid label="'!'"]
|
||||
4 [label="State 4\n\l 6 exp: c . '?'\l 7 | c . ';'\l"]
|
||||
4 [label="State 4\n\l 6 exp: c • '?'\l 7 | c • ';'\l"]
|
||||
4 -> 10 [style=solid label="';'"]
|
||||
4 -> 11 [style=solid label="'?'"]
|
||||
5 [label="State 5\n\l 0 $accept: exp $end .\l"]
|
||||
5 [label="State 5\n\l 0 $accept: exp $end •\l"]
|
||||
5 -> "5R0" [style=solid]
|
||||
"5R0" [label="Acc", fillcolor=1, shape=diamond, style=filled]
|
||||
6 [label="State 6\n\l 1 exp: a ';' . [$end]\l 2 | a ';' . [$end]\l"]
|
||||
6 [label="State 6\n\l 1 exp: a ';' • [$end]\l 2 | a ';' • [$end]\l"]
|
||||
6 -> "6R1" [style=solid]
|
||||
"6R1" [label="R1", fillcolor=3, shape=diamond, style=filled]
|
||||
6 -> "6R2d" [label="[$end]", style=solid]
|
||||
"6R2d" [label="R2", fillcolor=5, shape=diamond, style=filled]
|
||||
7 [label="State 7\n\l 3 exp: a '.' .\l"]
|
||||
7 [label="State 7\n\l 3 exp: a '.' •\l"]
|
||||
7 -> "7R3" [style=solid]
|
||||
"7R3" [label="R3", fillcolor=3, shape=diamond, style=filled]
|
||||
8 [label="State 8\n\l 4 exp: b '?' .\l"]
|
||||
8 [label="State 8\n\l 4 exp: b '?' •\l"]
|
||||
8 -> "8R4" [style=solid]
|
||||
"8R4" [label="R4", fillcolor=3, shape=diamond, style=filled]
|
||||
9 [label="State 9\n\l 5 exp: b '!' .\l"]
|
||||
9 [label="State 9\n\l 5 exp: b '!' •\l"]
|
||||
9 -> "9R5" [style=solid]
|
||||
"9R5" [label="R5", fillcolor=3, shape=diamond, style=filled]
|
||||
10 [label="State 10\n\l 7 exp: c ';' .\l"]
|
||||
10 [label="State 10\n\l 7 exp: c ';' •\l"]
|
||||
10 -> "10R7" [style=solid]
|
||||
"10R7" [label="R7", fillcolor=3, shape=diamond, style=filled]
|
||||
11 [label="State 11\n\l 6 exp: c '?' .\l"]
|
||||
11 [label="State 11\n\l 6 exp: c '?' •\l"]
|
||||
11 -> "11R6" [style=solid]
|
||||
"11R6" [label="R6", fillcolor=3, shape=diamond, style=filled]
|
||||
}
|
||||
]])
|
||||
|
||||
## ------------------------------------------------------ ##
|
||||
@@ -604,62 +628,67 @@ opexp: exp '+' exp;
|
||||
imm: '0';
|
||||
]],
|
||||
[[
|
||||
0 [label="State 0\n\l 0 $accept: . exp $end\l 1 exp: . ifexp\l 2 | . opexp\l 3 | . imm\l 4 ifexp: . \"if\" exp \"then\" exp elseexp\l 7 opexp: . exp '+' exp\l 8 imm: . '0'\l"]
|
||||
digraph "input.y"
|
||||
{
|
||||
node [fontname = courier, shape = box, colorscheme = paired6]
|
||||
edge [fontname = courier]
|
||||
|
||||
0 [label="State 0\n\l 0 $accept: • exp $end\l 1 exp: • ifexp\l 2 | • opexp\l 3 | • imm\l 4 ifexp: • \"if\" exp \"then\" exp elseexp\l 7 opexp: • exp '+' exp\l 8 imm: • '0'\l"]
|
||||
0 -> 1 [style=solid label="\"if\""]
|
||||
0 -> 2 [style=solid label="'0'"]
|
||||
0 -> 3 [style=dashed label="exp"]
|
||||
0 -> 4 [style=dashed label="ifexp"]
|
||||
0 -> 5 [style=dashed label="opexp"]
|
||||
0 -> 6 [style=dashed label="imm"]
|
||||
1 [label="State 1\n\l 1 exp: . ifexp\l 2 | . opexp\l 3 | . imm\l 4 ifexp: . \"if\" exp \"then\" exp elseexp\l 4 | \"if\" . exp \"then\" exp elseexp\l 7 opexp: . exp '+' exp\l 8 imm: . '0'\l"]
|
||||
1 [label="State 1\n\l 1 exp: • ifexp\l 2 | • opexp\l 3 | • imm\l 4 ifexp: • \"if\" exp \"then\" exp elseexp\l 4 | \"if\" • exp \"then\" exp elseexp\l 7 opexp: • exp '+' exp\l 8 imm: • '0'\l"]
|
||||
1 -> 1 [style=solid label="\"if\""]
|
||||
1 -> 2 [style=solid label="'0'"]
|
||||
1 -> 7 [style=dashed label="exp"]
|
||||
1 -> 4 [style=dashed label="ifexp"]
|
||||
1 -> 5 [style=dashed label="opexp"]
|
||||
1 -> 6 [style=dashed label="imm"]
|
||||
2 [label="State 2\n\l 8 imm: '0' .\l"]
|
||||
2 [label="State 2\n\l 8 imm: '0' •\l"]
|
||||
2 -> "2R8" [style=solid]
|
||||
"2R8" [label="R8", fillcolor=3, shape=diamond, style=filled]
|
||||
3 [label="State 3\n\l 0 $accept: exp . $end\l 7 opexp: exp . '+' exp\l"]
|
||||
3 [label="State 3\n\l 0 $accept: exp • $end\l 7 opexp: exp • '+' exp\l"]
|
||||
3 -> 8 [style=solid label="$end"]
|
||||
3 -> 9 [style=solid label="'+'"]
|
||||
4 [label="State 4\n\l 1 exp: ifexp .\l"]
|
||||
4 [label="State 4\n\l 1 exp: ifexp •\l"]
|
||||
4 -> "4R1" [style=solid]
|
||||
"4R1" [label="R1", fillcolor=3, shape=diamond, style=filled]
|
||||
5 [label="State 5\n\l 2 exp: opexp .\l"]
|
||||
5 [label="State 5\n\l 2 exp: opexp •\l"]
|
||||
5 -> "5R2" [style=solid]
|
||||
"5R2" [label="R2", fillcolor=3, shape=diamond, style=filled]
|
||||
6 [label="State 6\n\l 3 exp: imm .\l"]
|
||||
6 [label="State 6\n\l 3 exp: imm •\l"]
|
||||
6 -> "6R3" [style=solid]
|
||||
"6R3" [label="R3", fillcolor=3, shape=diamond, style=filled]
|
||||
7 [label="State 7\n\l 4 ifexp: \"if\" exp . \"then\" exp elseexp\l 7 opexp: exp . '+' exp\l"]
|
||||
7 [label="State 7\n\l 4 ifexp: \"if\" exp • \"then\" exp elseexp\l 7 opexp: exp • '+' exp\l"]
|
||||
7 -> 10 [style=solid label="\"then\""]
|
||||
7 -> 9 [style=solid label="'+'"]
|
||||
8 [label="State 8\n\l 0 $accept: exp $end .\l"]
|
||||
8 [label="State 8\n\l 0 $accept: exp $end •\l"]
|
||||
8 -> "8R0" [style=solid]
|
||||
"8R0" [label="Acc", fillcolor=1, shape=diamond, style=filled]
|
||||
9 [label="State 9\n\l 1 exp: . ifexp\l 2 | . opexp\l 3 | . imm\l 4 ifexp: . \"if\" exp \"then\" exp elseexp\l 7 opexp: . exp '+' exp\l 7 | exp '+' . exp\l 8 imm: . '0'\l"]
|
||||
9 [label="State 9\n\l 1 exp: • ifexp\l 2 | • opexp\l 3 | • imm\l 4 ifexp: • \"if\" exp \"then\" exp elseexp\l 7 opexp: • exp '+' exp\l 7 | exp '+' • exp\l 8 imm: • '0'\l"]
|
||||
9 -> 1 [style=solid label="\"if\""]
|
||||
9 -> 2 [style=solid label="'0'"]
|
||||
9 -> 11 [style=dashed label="exp"]
|
||||
9 -> 4 [style=dashed label="ifexp"]
|
||||
9 -> 5 [style=dashed label="opexp"]
|
||||
9 -> 6 [style=dashed label="imm"]
|
||||
10 [label="State 10\n\l 1 exp: . ifexp\l 2 | . opexp\l 3 | . imm\l 4 ifexp: . \"if\" exp \"then\" exp elseexp\l 4 | \"if\" exp \"then\" . exp elseexp\l 7 opexp: . exp '+' exp\l 8 imm: . '0'\l"]
|
||||
10 [label="State 10\n\l 1 exp: • ifexp\l 2 | • opexp\l 3 | • imm\l 4 ifexp: • \"if\" exp \"then\" exp elseexp\l 4 | \"if\" exp \"then\" • exp elseexp\l 7 opexp: • exp '+' exp\l 8 imm: • '0'\l"]
|
||||
10 -> 1 [style=solid label="\"if\""]
|
||||
10 -> 2 [style=solid label="'0'"]
|
||||
10 -> 12 [style=dashed label="exp"]
|
||||
10 -> 4 [style=dashed label="ifexp"]
|
||||
10 -> 5 [style=dashed label="opexp"]
|
||||
10 -> 6 [style=dashed label="imm"]
|
||||
11 [label="State 11\n\l 7 opexp: exp . '+' exp\l 7 | exp '+' exp . [$end, \"then\", \"else\", '+']\l"]
|
||||
11 [label="State 11\n\l 7 opexp: exp • '+' exp\l 7 | exp '+' exp • [$end, \"then\", \"else\", '+']\l"]
|
||||
11 -> 9 [style=solid label="'+'"]
|
||||
11 -> "11R7d" [label="['+']", style=solid]
|
||||
"11R7d" [label="R7", fillcolor=5, shape=diamond, style=filled]
|
||||
11 -> "11R7" [style=solid]
|
||||
"11R7" [label="R7", fillcolor=3, shape=diamond, style=filled]
|
||||
12 [label="State 12\n\l 4 ifexp: \"if\" exp \"then\" exp . elseexp\l 5 elseexp: . \"else\" exp\l 6 | . %empty [$end, \"then\", \"else\", '+']\l 7 opexp: exp . '+' exp\l"]
|
||||
12 [label="State 12\n\l 4 ifexp: \"if\" exp \"then\" exp • elseexp\l 5 elseexp: • \"else\" exp\l 6 | • %empty [$end, \"then\", \"else\", '+']\l 7 opexp: exp • '+' exp\l"]
|
||||
12 -> 13 [style=solid label="\"else\""]
|
||||
12 -> 9 [style=solid label="'+'"]
|
||||
12 -> 14 [style=dashed label="elseexp"]
|
||||
@@ -667,22 +696,23 @@ imm: '0';
|
||||
"12R6d" [label="R6", fillcolor=5, shape=diamond, style=filled]
|
||||
12 -> "12R6" [style=solid]
|
||||
"12R6" [label="R6", fillcolor=3, shape=diamond, style=filled]
|
||||
13 [label="State 13\n\l 1 exp: . ifexp\l 2 | . opexp\l 3 | . imm\l 4 ifexp: . \"if\" exp \"then\" exp elseexp\l 5 elseexp: \"else\" . exp\l 7 opexp: . exp '+' exp\l 8 imm: . '0'\l"]
|
||||
13 [label="State 13\n\l 1 exp: • ifexp\l 2 | • opexp\l 3 | • imm\l 4 ifexp: • \"if\" exp \"then\" exp elseexp\l 5 elseexp: \"else\" • exp\l 7 opexp: • exp '+' exp\l 8 imm: • '0'\l"]
|
||||
13 -> 1 [style=solid label="\"if\""]
|
||||
13 -> 2 [style=solid label="'0'"]
|
||||
13 -> 15 [style=dashed label="exp"]
|
||||
13 -> 4 [style=dashed label="ifexp"]
|
||||
13 -> 5 [style=dashed label="opexp"]
|
||||
13 -> 6 [style=dashed label="imm"]
|
||||
14 [label="State 14\n\l 4 ifexp: \"if\" exp \"then\" exp elseexp .\l"]
|
||||
14 [label="State 14\n\l 4 ifexp: \"if\" exp \"then\" exp elseexp •\l"]
|
||||
14 -> "14R4" [style=solid]
|
||||
"14R4" [label="R4", fillcolor=3, shape=diamond, style=filled]
|
||||
15 [label="State 15\n\l 5 elseexp: \"else\" exp . [$end, \"then\", \"else\", '+']\l 7 opexp: exp . '+' exp\l"]
|
||||
15 [label="State 15\n\l 5 elseexp: \"else\" exp • [$end, \"then\", \"else\", '+']\l 7 opexp: exp • '+' exp\l"]
|
||||
15 -> 9 [style=solid label="'+'"]
|
||||
15 -> "15R5d" [label="['+']", style=solid]
|
||||
"15R5d" [label="R5", fillcolor=5, shape=diamond, style=filled]
|
||||
15 -> "15R5" [style=solid]
|
||||
"15R5" [label="R5", fillcolor=3, shape=diamond, style=filled]
|
||||
}
|
||||
]])
|
||||
|
||||
m4_popdef([AT_TEST])
|
||||
|
||||
@@ -586,14 +586,14 @@ digraph "input.yy"
|
||||
node [fontname = courier, shape = box, colorscheme = paired6]
|
||||
edge [fontname = courier]
|
||||
|
||||
0 [label="State 0\n\l 0 $accept: . unit \"end of file\"\l 1 unit: . assignments exp\l 2 assignments: . %empty\l 3 | . assignments assignment\l"]
|
||||
0 [label="State 0\n\l 0 $accept: • unit \"end of file\"\l 1 unit: • assignments exp\l 2 assignments: • %empty\l 3 | • assignments assignment\l"]
|
||||
0 -> 1 [style=dashed label="unit"]
|
||||
0 -> 2 [style=dashed label="assignments"]
|
||||
0 -> "0R2" [style=solid]
|
||||
"0R2" [label="R2", fillcolor=3, shape=diamond, style=filled]
|
||||
1 [label="State 1\n\l 0 $accept: unit . \"end of file\"\l"]
|
||||
1 [label="State 1\n\l 0 $accept: unit • \"end of file\"\l"]
|
||||
1 -> 3 [style=solid label="\"end of file\""]
|
||||
2 [label="State 2\n\l 1 unit: assignments . exp\l 3 assignments: assignments . assignment\l 4 assignment: . id \":=\" exp\l 5 id: . \"identifier\"\l 8 exp: . \"incr\" exp @1 @2 exp\l 9 | . \"(\" exp \")\"\l 10 | . \"identifier\"\l 11 | . \"number\"\l"]
|
||||
2 [label="State 2\n\l 1 unit: assignments • exp\l 3 assignments: assignments • assignment\l 4 assignment: • id \":=\" exp\l 5 id: • \"identifier\"\l 8 exp: • \"incr\" exp @1 @2 exp\l 9 | • \"(\" exp \")\"\l 10 | • \"identifier\"\l 11 | • \"number\"\l"]
|
||||
2 -> 4 [style=solid label="\"incr\""]
|
||||
2 -> 5 [style=solid label="\"identifier\""]
|
||||
2 -> 6 [style=solid label="\"number\""]
|
||||
@@ -601,69 +601,69 @@ digraph "input.yy"
|
||||
2 -> 8 [style=dashed label="assignment"]
|
||||
2 -> 9 [style=dashed label="id"]
|
||||
2 -> 10 [style=dashed label="exp"]
|
||||
3 [label="State 3\n\l 0 $accept: unit \"end of file\" .\l"]
|
||||
3 [label="State 3\n\l 0 $accept: unit \"end of file\" •\l"]
|
||||
3 -> "3R0" [style=solid]
|
||||
"3R0" [label="Acc", fillcolor=1, shape=diamond, style=filled]
|
||||
4 [label="State 4\n\l 8 exp: . \"incr\" exp @1 @2 exp\l 8 | \"incr\" . exp @1 @2 exp\l 9 | . \"(\" exp \")\"\l 10 | . \"identifier\"\l 11 | . \"number\"\l"]
|
||||
4 [label="State 4\n\l 8 exp: • \"incr\" exp @1 @2 exp\l 8 | \"incr\" • exp @1 @2 exp\l 9 | • \"(\" exp \")\"\l 10 | • \"identifier\"\l 11 | • \"number\"\l"]
|
||||
4 -> 4 [style=solid label="\"incr\""]
|
||||
4 -> 11 [style=solid label="\"identifier\""]
|
||||
4 -> 6 [style=solid label="\"number\""]
|
||||
4 -> 7 [style=solid label="\"(\""]
|
||||
4 -> 12 [style=dashed label="exp"]
|
||||
5 [label="State 5\n\l 5 id: \"identifier\" . [\":=\"]\l 10 exp: \"identifier\" . [\"end of file\"]\l"]
|
||||
5 [label="State 5\n\l 5 id: \"identifier\" • [\":=\"]\l 10 exp: \"identifier\" • [\"end of file\"]\l"]
|
||||
5 -> "5R5" [style=solid]
|
||||
"5R5" [label="R5", fillcolor=3, shape=diamond, style=filled]
|
||||
5 -> "5R10" [label="[\"end of file\"]", style=solid]
|
||||
"5R10" [label="R10", fillcolor=3, shape=diamond, style=filled]
|
||||
6 [label="State 6\n\l 11 exp: \"number\" .\l"]
|
||||
6 [label="State 6\n\l 11 exp: \"number\" •\l"]
|
||||
6 -> "6R11" [style=solid]
|
||||
"6R11" [label="R11", fillcolor=3, shape=diamond, style=filled]
|
||||
7 [label="State 7\n\l 8 exp: . \"incr\" exp @1 @2 exp\l 9 | . \"(\" exp \")\"\l 9 | \"(\" . exp \")\"\l 10 | . \"identifier\"\l 11 | . \"number\"\l"]
|
||||
7 [label="State 7\n\l 8 exp: • \"incr\" exp @1 @2 exp\l 9 | • \"(\" exp \")\"\l 9 | \"(\" • exp \")\"\l 10 | • \"identifier\"\l 11 | • \"number\"\l"]
|
||||
7 -> 4 [style=solid label="\"incr\""]
|
||||
7 -> 11 [style=solid label="\"identifier\""]
|
||||
7 -> 6 [style=solid label="\"number\""]
|
||||
7 -> 7 [style=solid label="\"(\""]
|
||||
7 -> 13 [style=dashed label="exp"]
|
||||
8 [label="State 8\n\l 3 assignments: assignments assignment .\l"]
|
||||
8 [label="State 8\n\l 3 assignments: assignments assignment •\l"]
|
||||
8 -> "8R3" [style=solid]
|
||||
"8R3" [label="R3", fillcolor=3, shape=diamond, style=filled]
|
||||
9 [label="State 9\n\l 4 assignment: id . \":=\" exp\l"]
|
||||
9 [label="State 9\n\l 4 assignment: id • \":=\" exp\l"]
|
||||
9 -> 14 [style=solid label="\":=\""]
|
||||
10 [label="State 10\n\l 1 unit: assignments exp .\l"]
|
||||
10 [label="State 10\n\l 1 unit: assignments exp •\l"]
|
||||
10 -> "10R1" [style=solid]
|
||||
"10R1" [label="R1", fillcolor=3, shape=diamond, style=filled]
|
||||
11 [label="State 11\n\l 10 exp: \"identifier\" .\l"]
|
||||
11 [label="State 11\n\l 10 exp: \"identifier\" •\l"]
|
||||
11 -> "11R10" [style=solid]
|
||||
"11R10" [label="R10", fillcolor=3, shape=diamond, style=filled]
|
||||
12 [label="State 12\n\l 6 @1: . %empty\l 8 exp: \"incr\" exp . @1 @2 exp\l"]
|
||||
12 [label="State 12\n\l 6 @1: • %empty\l 8 exp: \"incr\" exp • @1 @2 exp\l"]
|
||||
12 -> 15 [style=dashed label="@1"]
|
||||
12 -> "12R6" [style=solid]
|
||||
"12R6" [label="R6", fillcolor=3, shape=diamond, style=filled]
|
||||
13 [label="State 13\n\l 9 exp: \"(\" exp . \")\"\l"]
|
||||
13 [label="State 13\n\l 9 exp: \"(\" exp • \")\"\l"]
|
||||
13 -> 16 [style=solid label="\")\""]
|
||||
14 [label="State 14\n\l 4 assignment: id \":=\" . exp\l 8 exp: . \"incr\" exp @1 @2 exp\l 9 | . \"(\" exp \")\"\l 10 | . \"identifier\"\l 11 | . \"number\"\l"]
|
||||
14 [label="State 14\n\l 4 assignment: id \":=\" • exp\l 8 exp: • \"incr\" exp @1 @2 exp\l 9 | • \"(\" exp \")\"\l 10 | • \"identifier\"\l 11 | • \"number\"\l"]
|
||||
14 -> 4 [style=solid label="\"incr\""]
|
||||
14 -> 11 [style=solid label="\"identifier\""]
|
||||
14 -> 6 [style=solid label="\"number\""]
|
||||
14 -> 7 [style=solid label="\"(\""]
|
||||
14 -> 17 [style=dashed label="exp"]
|
||||
15 [label="State 15\n\l 7 @2: . %empty\l 8 exp: \"incr\" exp @1 . @2 exp\l"]
|
||||
15 [label="State 15\n\l 7 @2: • %empty\l 8 exp: \"incr\" exp @1 • @2 exp\l"]
|
||||
15 -> 18 [style=dashed label="@2"]
|
||||
15 -> "15R7" [style=solid]
|
||||
"15R7" [label="R7", fillcolor=3, shape=diamond, style=filled]
|
||||
16 [label="State 16\n\l 9 exp: \"(\" exp \")\" .\l"]
|
||||
16 [label="State 16\n\l 9 exp: \"(\" exp \")\" •\l"]
|
||||
16 -> "16R9" [style=solid]
|
||||
"16R9" [label="R9", fillcolor=3, shape=diamond, style=filled]
|
||||
17 [label="State 17\n\l 4 assignment: id \":=\" exp .\l"]
|
||||
17 [label="State 17\n\l 4 assignment: id \":=\" exp •\l"]
|
||||
17 -> "17R4" [style=solid]
|
||||
"17R4" [label="R4", fillcolor=3, shape=diamond, style=filled]
|
||||
18 [label="State 18\n\l 8 exp: . \"incr\" exp @1 @2 exp\l 8 | \"incr\" exp @1 @2 . exp\l 9 | . \"(\" exp \")\"\l 10 | . \"identifier\"\l 11 | . \"number\"\l"]
|
||||
18 [label="State 18\n\l 8 exp: • \"incr\" exp @1 @2 exp\l 8 | \"incr\" exp @1 @2 • exp\l 9 | • \"(\" exp \")\"\l 10 | • \"identifier\"\l 11 | • \"number\"\l"]
|
||||
18 -> 4 [style=solid label="\"incr\""]
|
||||
18 -> 11 [style=solid label="\"identifier\""]
|
||||
18 -> 6 [style=solid label="\"number\""]
|
||||
18 -> 7 [style=solid label="\"(\""]
|
||||
18 -> 19 [style=dashed label="exp"]
|
||||
19 [label="State 19\n\l 8 exp: \"incr\" exp @1 @2 exp .\l"]
|
||||
19 [label="State 19\n\l 8 exp: \"incr\" exp @1 @2 exp •\l"]
|
||||
19 -> "19R8" [style=solid]
|
||||
"19R8" [label="R8", fillcolor=3, shape=diamond, style=filled]
|
||||
}
|
||||
@@ -1416,32 +1416,32 @@ digraph "input.y"
|
||||
node [fontname = courier, shape = box, colorscheme = paired6]
|
||||
edge [fontname = courier]
|
||||
|
||||
0 [label="State 0\n\l 0 $accept: . exp $end\l 1 exp: . exp \"⊕\" exp\l 2 | . exp \"+\" exp\l 3 | . exp \"+\" exp\l 4 | . \"number\"\l 5 | . \"Ñùṃéℝô\"\l"]
|
||||
0 [label="State 0\n\l 0 $accept: • exp $end\l 1 exp: • exp \"⊕\" exp\l 2 | • exp \"+\" exp\l 3 | • exp \"+\" exp\l 4 | • \"number\"\l 5 | • \"Ñùṃéℝô\"\l"]
|
||||
0 -> 1 [style=solid label="\"number\""]
|
||||
0 -> 2 [style=solid label="\"Ñùṃéℝô\""]
|
||||
0 -> 3 [style=dashed label="exp"]
|
||||
1 [label="State 1\n\l 4 exp: \"number\" .\l"]
|
||||
1 [label="State 1\n\l 4 exp: \"number\" •\l"]
|
||||
1 -> "1R4" [style=solid]
|
||||
"1R4" [label="R4", fillcolor=3, shape=diamond, style=filled]
|
||||
2 [label="State 2\n\l 5 exp: \"Ñùṃéℝô\" .\l"]
|
||||
2 [label="State 2\n\l 5 exp: \"Ñùṃéℝô\" •\l"]
|
||||
2 -> "2R5" [style=solid]
|
||||
"2R5" [label="R5", fillcolor=3, shape=diamond, style=filled]
|
||||
3 [label="State 3\n\l 0 $accept: exp . $end\l 1 exp: exp . \"⊕\" exp\l 2 | exp . \"+\" exp\l 3 | exp . \"+\" exp\l"]
|
||||
3 [label="State 3\n\l 0 $accept: exp • $end\l 1 exp: exp • \"⊕\" exp\l 2 | exp • \"+\" exp\l 3 | exp • \"+\" exp\l"]
|
||||
3 -> 4 [style=solid label="$end"]
|
||||
3 -> 5 [style=solid label="\"+\""]
|
||||
3 -> 6 [style=solid label="\"⊕\""]
|
||||
4 [label="State 4\n\l 0 $accept: exp $end .\l"]
|
||||
4 [label="State 4\n\l 0 $accept: exp $end •\l"]
|
||||
4 -> "4R0" [style=solid]
|
||||
"4R0" [label="Acc", fillcolor=1, shape=diamond, style=filled]
|
||||
5 [label="State 5\n\l 1 exp: . exp \"⊕\" exp\l 2 | . exp \"+\" exp\l 2 | exp \"+\" . exp\l 3 | . exp \"+\" exp\l 3 | exp \"+\" . exp\l 4 | . \"number\"\l 5 | . \"Ñùṃéℝô\"\l"]
|
||||
5 [label="State 5\n\l 1 exp: • exp \"⊕\" exp\l 2 | • exp \"+\" exp\l 2 | exp \"+\" • exp\l 3 | • exp \"+\" exp\l 3 | exp \"+\" • exp\l 4 | • \"number\"\l 5 | • \"Ñùṃéℝô\"\l"]
|
||||
5 -> 1 [style=solid label="\"number\""]
|
||||
5 -> 2 [style=solid label="\"Ñùṃéℝô\""]
|
||||
5 -> 7 [style=dashed label="exp"]
|
||||
6 [label="State 6\n\l 1 exp: . exp \"⊕\" exp\l 1 | exp \"⊕\" . exp\l 2 | . exp \"+\" exp\l 3 | . exp \"+\" exp\l 4 | . \"number\"\l 5 | . \"Ñùṃéℝô\"\l"]
|
||||
6 [label="State 6\n\l 1 exp: • exp \"⊕\" exp\l 1 | exp \"⊕\" • exp\l 2 | • exp \"+\" exp\l 3 | • exp \"+\" exp\l 4 | • \"number\"\l 5 | • \"Ñùṃéℝô\"\l"]
|
||||
6 -> 1 [style=solid label="\"number\""]
|
||||
6 -> 2 [style=solid label="\"Ñùṃéℝô\""]
|
||||
6 -> 8 [style=dashed label="exp"]
|
||||
7 [label="State 7\n\l 1 exp: exp . \"⊕\" exp\l 2 | exp . \"+\" exp\l 2 | exp \"+\" exp . [$end, \"+\", \"⊕\"]\l 3 | exp . \"+\" exp\l 3 | exp \"+\" exp . [$end, \"+\", \"⊕\"]\l"]
|
||||
7 [label="State 7\n\l 1 exp: exp • \"⊕\" exp\l 2 | exp • \"+\" exp\l 2 | exp \"+\" exp • [$end, \"+\", \"⊕\"]\l 3 | exp • \"+\" exp\l 3 | exp \"+\" exp • [$end, \"+\", \"⊕\"]\l"]
|
||||
7 -> 6 [style=solid label="\"⊕\""]
|
||||
7 -> "7R2d" [label="[\"⊕\"]", style=solid]
|
||||
"7R2d" [label="R2", fillcolor=5, shape=diamond, style=filled]
|
||||
@@ -1449,7 +1449,7 @@ digraph "input.y"
|
||||
"7R2" [label="R2", fillcolor=3, shape=diamond, style=filled]
|
||||
7 -> "7R3d" [label="[$end, \"+\", \"⊕\"]", style=solid]
|
||||
"7R3d" [label="R3", fillcolor=5, shape=diamond, style=filled]
|
||||
8 [label="State 8\n\l 1 exp: exp . \"⊕\" exp\l 1 | exp \"⊕\" exp . [$end, \"+\", \"⊕\"]\l 2 | exp . \"+\" exp\l 3 | exp . \"+\" exp\l"]
|
||||
8 [label="State 8\n\l 1 exp: exp • \"⊕\" exp\l 1 | exp \"⊕\" exp • [$end, \"+\", \"⊕\"]\l 2 | exp • \"+\" exp\l 3 | exp • \"+\" exp\l"]
|
||||
8 -> 5 [style=solid label="\"+\""]
|
||||
8 -> 6 [style=solid label="\"⊕\""]
|
||||
8 -> "8R1d" [label="[\"+\", \"⊕\"]", style=solid]
|
||||
|
||||
Reference in New Issue
Block a user