ebnf 2.4.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 47cef27b676f78632ab4898ee26c5c1af57de2c3dbfafa90c7e5a124335ade4c
4
- data.tar.gz: f14be1671157a53571c64c3563173b5325ff6d0f8b52c772676594ebe36e75a2
3
+ metadata.gz: 76a49d9fe4e2cf23f7bde8a55f600bfad24d0f3e55ecaf8a9c0a2e21b7e1310d
4
+ data.tar.gz: fbf204b9ff0bbe4dff0056ba75c6ed535269584bac336d041f904d2d3fb2e571
5
5
  SHA512:
6
- metadata.gz: d50eb81d6f029a8eb68778430bcc7a82749064edc24eb0aaa5c65470056d091cbde401e1945a83123ef7e0b9196268fa0d6e76e503d4a916f179e83b98b0ec4f
7
- data.tar.gz: 8d9ad8ba8816473d6ba954472dffb7d05a9d986568942f01dc265a87917f05e141d9cabb193a3c67c404715658f766eab99585da1735c84f0b24dc6ee681b6f0
6
+ metadata.gz: 74963a92956d8cbf2fe24f6df8fe0584667f941f42fd523c8a5e3f7f39f3bd0c74eaf8480ed22cc54d358cfd350630fcd6c84449dfff6591dc41e95174fd06b9
7
+ data.tar.gz: 02c0844b57ffd898764a4cd3dd163105b8e4d32f34df20f3874b2f7dd2590e14ddff98d72f8fd40f2573897f858327ba7eee8e6cff21f551f9882a9c4f82514f
data/README.md CHANGED
@@ -250,6 +250,10 @@ and [First Follow Notation-3 rules](https://www.w3.org/2000/10/swap/grammar/firs
250
250
  ## Documentation
251
251
  Full documentation available on [Rubydoc.info][EBNF doc].
252
252
 
253
+ ## Change Log
254
+
255
+ See [Release Notes on GitHub](https://github.com/dryruby/ebnf/releases)
256
+
253
257
  ## Future Work
254
258
  * Better LL(1) parser tests
255
259
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.4.0
1
+ 2.5.0
data/etc/abnf.sxp CHANGED
@@ -28,7 +28,7 @@
28
28
  (seq "x" (plus HEXDIG) (opt (alt (plus (seq "." (plus HEXDIG))) (seq "-" (plus HEXDIG))))))
29
29
  (terminal prose_val (seq "<" (star (range "#x20-#x3D#x3F-#x7E")) ">"))
30
30
  (terminal ALPHA (range "#x41-#x5A#x61-#x7A"))
31
- (terminal BIT (alt "0" "1"))
31
+ (terminal BIT (alt '0' '1'))
32
32
  (terminal CHAR (range "#x01-#x7F"))
33
33
  (terminal CR (hex "#x0D"))
34
34
  (terminal CRLF (seq (opt CR) LF))
data/etc/ebnf.html CHANGED
@@ -1,4 +1,4 @@
1
- <!-- Generated with ebnf version 2.3.4. See https://github.com/dryruby/ebnf. -->
1
+ <!-- Generated with ebnf version 2.4.0. See https://github.com/dryruby/ebnf. -->
2
2
  <table class="grammar">
3
3
  <tbody id="grammar-productions" class="ebnf">
4
4
  <tr id="grammar-production-ebnf">
@@ -11,7 +11,7 @@
11
11
  <td>[2]</td>
12
12
  <td><code>declaration</code></td>
13
13
  <td>::=</td>
14
- <td>"<code class="grammar-literal">@terminals</code>" <code class="grammar-alt">|</code> <a href="#grammar-production-pass">pass</a></td>
14
+ <td>'<code class="grammar-literal">@terminals</code>' <code class="grammar-alt">|</code> <a href="#grammar-production-pass">pass</a></td>
15
15
  </tr>
16
16
  <tr id="grammar-production-rule">
17
17
  <td>[3]</td>
@@ -29,7 +29,7 @@
29
29
  <td>[5]</td>
30
30
  <td><code>alt</code></td>
31
31
  <td>::=</td>
32
- <td><a href="#grammar-production-seq">seq</a> <code class="grammar-paren">(</code>"<code class="grammar-literal">|</code>" <a href="#grammar-production-seq">seq</a><code class="grammar-paren">)</code><code class="grammar-star">*</code></td>
32
+ <td><a href="#grammar-production-seq">seq</a> <code class="grammar-paren">(</code>'<code class="grammar-literal">|</code>' <a href="#grammar-production-seq">seq</a><code class="grammar-paren">)</code><code class="grammar-star">*</code></td>
33
33
  </tr>
34
34
  <tr id="grammar-production-seq">
35
35
  <td>[6]</td>
@@ -41,7 +41,7 @@
41
41
  <td>[7]</td>
42
42
  <td><code>diff</code></td>
43
43
  <td>::=</td>
44
- <td><a href="#grammar-production-postfix">postfix</a> <code class="grammar-paren">(</code>"<code class="grammar-literal">-</code>" <a href="#grammar-production-postfix">postfix</a><code class="grammar-paren">)</code><code class="grammar-opt">?</code></td>
44
+ <td><a href="#grammar-production-postfix">postfix</a> <code class="grammar-paren">(</code>'<code class="grammar-literal">-</code>' <a href="#grammar-production-postfix">postfix</a><code class="grammar-paren">)</code><code class="grammar-opt">?</code></td>
45
45
  </tr>
46
46
  <tr id="grammar-production-postfix">
47
47
  <td>[8]</td>
@@ -53,13 +53,13 @@
53
53
  <td>[9]</td>
54
54
  <td><code>primary</code></td>
55
55
  <td>::=</td>
56
- <td><a href="#grammar-production-HEX">HEX</a> <code class="grammar-alt">|</code> <a href="#grammar-production-SYMBOL">SYMBOL</a> <code class="grammar-alt">|</code> <a href="#grammar-production-O_RANGE">O_RANGE</a> <code class="grammar-alt">|</code> <a href="#grammar-production-RANGE">RANGE</a> <code class="grammar-alt">|</code> <a href="#grammar-production-STRING1">STRING1</a> <code class="grammar-alt">|</code> <a href="#grammar-production-STRING2">STRING2</a> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code>"<code class="grammar-literal">(</code>" <a href="#grammar-production-expression">expression</a> "<code class="grammar-literal">)</code>"<code class="grammar-paren">)</code></td>
56
+ <td><a href="#grammar-production-HEX">HEX</a> <code class="grammar-alt">|</code> <a href="#grammar-production-SYMBOL">SYMBOL</a> <code class="grammar-alt">|</code> <a href="#grammar-production-O_RANGE">O_RANGE</a> <code class="grammar-alt">|</code> <a href="#grammar-production-RANGE">RANGE</a> <code class="grammar-alt">|</code> <a href="#grammar-production-STRING1">STRING1</a> <code class="grammar-alt">|</code> <a href="#grammar-production-STRING2">STRING2</a> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code>'<code class="grammar-literal">(</code>' <a href="#grammar-production-expression">expression</a> '<code class="grammar-literal">)</code>'<code class="grammar-paren">)</code></td>
57
57
  </tr>
58
58
  <tr id="grammar-production-pass">
59
59
  <td>[10]</td>
60
60
  <td><code>pass</code></td>
61
61
  <td>::=</td>
62
- <td>"<code class="grammar-literal">@pass</code>" <a href="#grammar-production-expression">expression</a></td>
62
+ <td>'<code class="grammar-literal">@pass</code>' <a href="#grammar-production-expression">expression</a></td>
63
63
  </tr>
64
64
  <tr id="grammar-declaration-terminals">
65
65
  <td>@terminals</td>
@@ -71,31 +71,31 @@
71
71
  <td>[11]</td>
72
72
  <td><code>LHS</code></td>
73
73
  <td>::=</td>
74
- <td><code class="grammar-paren">(</code>"<code class="grammar-literal">[</code>" <a href="#grammar-production-SYMBOL">SYMBOL</a> "<code class="grammar-literal">]</code>" <code class="grammar-char-escape"><abbr title="space">#x20</abbr></code><code class="grammar-plus">+</code><code class="grammar-paren">)</code><code class="grammar-opt">?</code> <a href="#grammar-production-SYMBOL">SYMBOL</a> <code class="grammar-char-escape"><abbr title="space">#x20</abbr></code><code class="grammar-star">*</code> "<code class="grammar-literal">::=</code>"</td>
74
+ <td><code class="grammar-paren">(</code>'<code class="grammar-literal">[</code>' <a href="#grammar-production-SYMBOL">SYMBOL</a> '<code class="grammar-literal">]</code>' <code class="grammar-char-escape"><abbr title="space">#x20</abbr></code><code class="grammar-plus">+</code><code class="grammar-paren">)</code><code class="grammar-opt">?</code> <a href="#grammar-production-SYMBOL">SYMBOL</a> <code class="grammar-char-escape"><abbr title="space">#x20</abbr></code><code class="grammar-star">*</code> '<code class="grammar-literal">::=</code>'</td>
75
75
  </tr>
76
76
  <tr id="grammar-production-SYMBOL">
77
77
  <td>[12]</td>
78
78
  <td><code>SYMBOL</code></td>
79
79
  <td>::=</td>
80
- <td><code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">a-z</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">A-Z</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> "<code class="grammar-literal">_</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">.</code>"<code class="grammar-paren">)</code><code class="grammar-plus">+</code></td>
80
+ <td><code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">a-z</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">A-Z</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> '<code class="grammar-literal">_</code>' <code class="grammar-alt">|</code> '<code class="grammar-literal">.</code>'<code class="grammar-paren">)</code><code class="grammar-plus">+</code></td>
81
81
  </tr>
82
82
  <tr id="grammar-production-HEX">
83
83
  <td>[13]</td>
84
84
  <td><code>HEX</code></td>
85
85
  <td>::=</td>
86
- <td>"<code class="grammar-literal">#x</code>" <code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">a-f</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">A-F</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code><code class="grammar-plus">+</code></td>
86
+ <td>'<code class="grammar-literal">#x</code>' <code class="grammar-paren">(</code><code class="grammar-brac">[</code><code class="grammar-literal">a-f</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">A-F</code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">0-9</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code><code class="grammar-plus">+</code></td>
87
87
  </tr>
88
88
  <tr id="grammar-production-RANGE">
89
89
  <td>[14]</td>
90
90
  <td><code>RANGE</code></td>
91
91
  <td>::=</td>
92
- <td>"<code class="grammar-literal">[</code>" <code class="grammar-paren">(</code><code class="grammar-paren">(</code><a href="#grammar-production-R_CHAR">R_CHAR</a> "<code class="grammar-literal">-</code>" <a href="#grammar-production-R_CHAR">R_CHAR</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code><a href="#grammar-production-HEX">HEX</a> "<code class="grammar-literal">-</code>" <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <a href="#grammar-production-R_CHAR">R_CHAR</a> <code class="grammar-alt">|</code> <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code><code class="grammar-plus">+</code> "<code class="grammar-literal">-</code>"<code class="grammar-opt">?</code> <code class="grammar-paren">(</code>"<code class="grammar-literal">]</code>" <code class="grammar-diff">-</code> <a href="#grammar-production-LHS">LHS</a><code class="grammar-paren">)</code></td>
92
+ <td>'<code class="grammar-literal">[</code>' <code class="grammar-paren">(</code><code class="grammar-paren">(</code><a href="#grammar-production-R_CHAR">R_CHAR</a> '<code class="grammar-literal">-</code>' <a href="#grammar-production-R_CHAR">R_CHAR</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code><a href="#grammar-production-HEX">HEX</a> '<code class="grammar-literal">-</code>' <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <a href="#grammar-production-R_CHAR">R_CHAR</a> <code class="grammar-alt">|</code> <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code><code class="grammar-plus">+</code> '<code class="grammar-literal">-</code>'<code class="grammar-opt">?</code> <code class="grammar-paren">(</code>'<code class="grammar-literal">]</code>' <code class="grammar-diff">-</code> <a href="#grammar-production-LHS">LHS</a><code class="grammar-paren">)</code></td>
93
93
  </tr>
94
94
  <tr id="grammar-production-O_RANGE">
95
95
  <td>[15]</td>
96
96
  <td><code>O_RANGE</code></td>
97
97
  <td>::=</td>
98
- <td>"<code class="grammar-literal">[^</code>" <code class="grammar-paren">(</code><code class="grammar-paren">(</code><a href="#grammar-production-R_CHAR">R_CHAR</a> "<code class="grammar-literal">-</code>" <a href="#grammar-production-R_CHAR">R_CHAR</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code><a href="#grammar-production-HEX">HEX</a> "<code class="grammar-literal">-</code>" <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <a href="#grammar-production-R_CHAR">R_CHAR</a> <code class="grammar-alt">|</code> <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code><code class="grammar-plus">+</code> "<code class="grammar-literal">-</code>"<code class="grammar-opt">?</code> "<code class="grammar-literal">]</code>"</td>
98
+ <td>'<code class="grammar-literal">[^</code>' <code class="grammar-paren">(</code><code class="grammar-paren">(</code><a href="#grammar-production-R_CHAR">R_CHAR</a> '<code class="grammar-literal">-</code>' <a href="#grammar-production-R_CHAR">R_CHAR</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code><a href="#grammar-production-HEX">HEX</a> '<code class="grammar-literal">-</code>' <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <a href="#grammar-production-R_CHAR">R_CHAR</a> <code class="grammar-alt">|</code> <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code><code class="grammar-plus">+</code> '<code class="grammar-literal">-</code>'<code class="grammar-opt">?</code> '<code class="grammar-literal">]</code>'</td>
99
99
  </tr>
100
100
  <tr id="grammar-production-STRING1">
101
101
  <td>[16]</td>
@@ -119,7 +119,7 @@
119
119
  <td>[19]</td>
120
120
  <td><code>R_CHAR</code></td>
121
121
  <td>::=</td>
122
- <td><a href="#grammar-production-CHAR">CHAR</a> <code class="grammar-diff">-</code> <code class="grammar-paren">(</code>"<code class="grammar-literal">]</code>" <code class="grammar-alt">|</code> "<code class="grammar-literal">-</code>" <code class="grammar-alt">|</code> <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code></td>
122
+ <td><a href="#grammar-production-CHAR">CHAR</a> <code class="grammar-diff">-</code> <code class="grammar-paren">(</code>'<code class="grammar-literal">]</code>' <code class="grammar-alt">|</code> '<code class="grammar-literal">-</code>' <code class="grammar-alt">|</code> <a href="#grammar-production-HEX">HEX</a><code class="grammar-paren">)</code></td>
123
123
  </tr>
124
124
  <tr id="grammar-production-POSTFIX">
125
125
  <td>[20]</td>
@@ -131,7 +131,7 @@
131
131
  <td>[21]</td>
132
132
  <td><code>PASS</code></td>
133
133
  <td>::=</td>
134
- <td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="horizontal tab">#x09</abbr></code><code class="grammar-char-escape"><abbr title="new line">#x0A</abbr></code><code class="grammar-char-escape"><abbr title="carriage return">#x0D</abbr></code><code class="grammar-char-escape"><abbr title="space">#x20</abbr></code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code><code class="grammar-paren">(</code><code class="grammar-paren">(</code>"<code class="grammar-literal">#</code>" <code class="grammar-diff">-</code> "<code class="grammar-literal">#x</code>"<code class="grammar-paren">)</code> <code class="grammar-alt">|</code> "<code class="grammar-literal">//</code>"<code class="grammar-paren">)</code> <code class="grammar-brac">[</code><code class="grammar-literal">^</code><code class="grammar-char-escape"><abbr title="new line">#x0A</abbr></code><code class="grammar-char-escape"><abbr title="carriage return">#x0D</abbr></code><code class="grammar-brac">]</code><code class="grammar-star">*</code><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code>"<code class="grammar-literal">/*</code>" <code class="grammar-paren">(</code><code class="grammar-paren">(</code>"<code class="grammar-literal">*</code>" <code class="grammar-brac">[</code><code class="grammar-literal">^/</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code><code class="grammar-opt">?</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">^*</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code><code class="grammar-star">*</code> "<code class="grammar-literal">*/</code>"<code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code>"<code class="grammar-literal">(*</code>" <code class="grammar-paren">(</code><code class="grammar-paren">(</code>"<code class="grammar-literal">*</code>" <code class="grammar-brac">[</code><code class="grammar-literal">^)</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code><code class="grammar-opt">?</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">^*</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code><code class="grammar-star">*</code> "<code class="grammar-literal">*)</code>"<code class="grammar-paren">)</code></td>
134
+ <td><code class="grammar-brac">[</code><code class="grammar-char-escape"><abbr title="horizontal tab">#x09</abbr></code><code class="grammar-char-escape"><abbr title="new line">#x0A</abbr></code><code class="grammar-char-escape"><abbr title="carriage return">#x0D</abbr></code><code class="grammar-char-escape"><abbr title="space">#x20</abbr></code><code class="grammar-brac">]</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code><code class="grammar-paren">(</code><code class="grammar-paren">(</code>'<code class="grammar-literal">#</code>' <code class="grammar-diff">-</code> '<code class="grammar-literal">#x</code>'<code class="grammar-paren">)</code> <code class="grammar-alt">|</code> '<code class="grammar-literal">//</code>'<code class="grammar-paren">)</code> <code class="grammar-brac">[</code><code class="grammar-literal">^</code><code class="grammar-char-escape"><abbr title="new line">#x0A</abbr></code><code class="grammar-char-escape"><abbr title="carriage return">#x0D</abbr></code><code class="grammar-brac">]</code><code class="grammar-star">*</code><code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code>'<code class="grammar-literal">/*</code>' <code class="grammar-paren">(</code><code class="grammar-paren">(</code>'<code class="grammar-literal">*</code>' <code class="grammar-brac">[</code><code class="grammar-literal">^/</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code><code class="grammar-opt">?</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">^*</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code><code class="grammar-star">*</code> '<code class="grammar-literal">*/</code>'<code class="grammar-paren">)</code> <code class="grammar-alt">|</code> <code class="grammar-paren">(</code>'<code class="grammar-literal">(*</code>' <code class="grammar-paren">(</code><code class="grammar-paren">(</code>'<code class="grammar-literal">*</code>' <code class="grammar-brac">[</code><code class="grammar-literal">^)</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code><code class="grammar-opt">?</code> <code class="grammar-alt">|</code> <code class="grammar-brac">[</code><code class="grammar-literal">^*</code><code class="grammar-brac">]</code><code class="grammar-paren">)</code><code class="grammar-star">*</code> '<code class="grammar-literal">*)</code>'<code class="grammar-paren">)</code></td>
135
135
  </tr>
136
136
  <tr id="grammar-declaration-pass">
137
137
  <td>@pass</td>
data/etc/ebnf.ll1.rb CHANGED
@@ -1,4 +1,4 @@
1
- # This file is automatically generated by ebnf version 2.3.4
1
+ # This file is automatically generated by ebnf version 2.4.0
2
2
  # Derived from etc/ebnf.ebnf
3
3
  module Meta
4
4
  START = :ebnf
data/etc/ebnf.ll1.sxp CHANGED
@@ -2,114 +2,114 @@
2
2
  (rule _empty "0" (first _eps) (seq))
3
3
  (rule ebnf "1"
4
4
  (start #t)
5
- (first "@pass" "@terminals" LHS _eps)
5
+ (first '@pass' '@terminals' LHS _eps)
6
6
  (follow _eof)
7
7
  (cleanup star)
8
8
  (alt _empty _ebnf_2))
9
9
  (rule _ebnf_2 "1.2"
10
- (first "@pass" "@terminals" LHS)
10
+ (first '@pass' '@terminals' LHS)
11
11
  (follow _eof)
12
12
  (cleanup merge)
13
13
  (seq _ebnf_1 ebnf))
14
14
  (rule _ebnf_1 "1.1"
15
- (first "@pass" "@terminals" LHS)
16
- (follow "@pass" "@terminals" LHS _eof)
15
+ (first '@pass' '@terminals' LHS)
16
+ (follow '@pass' '@terminals' LHS _eof)
17
17
  (alt declaration rule))
18
18
  (rule declaration "2"
19
- (first "@pass" "@terminals")
20
- (follow "@pass" "@terminals" LHS _eof)
21
- (alt "@terminals" pass))
22
- (rule rule "3" (first LHS) (follow "@pass" "@terminals" LHS _eof) (seq LHS expression))
19
+ (first '@pass' '@terminals')
20
+ (follow '@pass' '@terminals' LHS _eof)
21
+ (alt '@terminals' pass))
22
+ (rule rule "3" (first LHS) (follow '@pass' '@terminals' LHS _eof) (seq LHS expression))
23
23
  (rule expression "4"
24
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
25
- (follow ")" "@pass" "@terminals" LHS _eof)
24
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
25
+ (follow ')' '@pass' '@terminals' LHS _eof)
26
26
  (seq alt))
27
27
  (rule alt "5"
28
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
29
- (follow ")" "@pass" "@terminals" LHS _eof)
28
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
29
+ (follow ')' '@pass' '@terminals' LHS _eof)
30
30
  (seq seq _alt_1))
31
31
  (rule _alt_1 "5.1"
32
- (first _eps "|")
33
- (follow ")" "@pass" "@terminals" LHS _eof)
32
+ (first _eps '|')
33
+ (follow ')' '@pass' '@terminals' LHS _eof)
34
34
  (cleanup star)
35
35
  (alt _empty _alt_3))
36
36
  (rule _alt_3 "5.3"
37
- (first "|")
38
- (follow ")" "@pass" "@terminals" LHS _eof)
37
+ (first '|')
38
+ (follow ')' '@pass' '@terminals' LHS _eof)
39
39
  (cleanup merge)
40
40
  (seq _alt_2 _alt_1))
41
41
  (rule _alt_2 "5.2"
42
- (first "|")
43
- (follow ")" "@pass" "@terminals" LHS _eof "|")
44
- (seq "|" seq))
42
+ (first '|')
43
+ (follow ')' '@pass' '@terminals' LHS _eof '|')
44
+ (seq '|' seq))
45
45
  (rule seq "6"
46
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
47
- (follow ")" "@pass" "@terminals" LHS _eof "|")
46
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
47
+ (follow ')' '@pass' '@terminals' LHS _eof '|')
48
48
  (cleanup plus)
49
49
  (seq diff _seq_1))
50
50
  (rule _seq_1 "6.1"
51
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL _eps)
52
- (follow ")" "@pass" "@terminals" LHS _eof "|")
51
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL _eps)
52
+ (follow ')' '@pass' '@terminals' LHS _eof '|')
53
53
  (cleanup star)
54
54
  (alt _empty _seq_2))
55
55
  (rule _seq_2 "6.2"
56
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
57
- (follow ")" "@pass" "@terminals" LHS _eof "|")
56
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
57
+ (follow ')' '@pass' '@terminals' LHS _eof '|')
58
58
  (cleanup merge)
59
59
  (seq diff _seq_1))
60
60
  (rule diff "7"
61
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
62
- (follow "(" ")" "@pass" "@terminals" HEX LHS O_RANGE RANGE STRING1 STRING2
63
- SYMBOL _eof "|" )
61
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
62
+ (follow '(' ')' '@pass' '@terminals' HEX LHS O_RANGE RANGE STRING1 STRING2
63
+ SYMBOL _eof '|' )
64
64
  (seq postfix _diff_1))
65
65
  (rule _diff_1 "7.1"
66
- (first "-" _eps)
67
- (follow "(" ")" "@pass" "@terminals" HEX LHS O_RANGE RANGE STRING1 STRING2
68
- SYMBOL _eof "|" )
66
+ (first '-' _eps)
67
+ (follow '(' ')' '@pass' '@terminals' HEX LHS O_RANGE RANGE STRING1 STRING2
68
+ SYMBOL _eof '|' )
69
69
  (cleanup opt)
70
70
  (alt _empty _diff_2))
71
71
  (rule _diff_2 "7.2"
72
- (first "-")
73
- (follow "(" ")" "@pass" "@terminals" HEX LHS O_RANGE RANGE STRING1 STRING2
74
- SYMBOL _eof "|" )
75
- (seq "-" postfix))
72
+ (first '-')
73
+ (follow '(' ')' '@pass' '@terminals' HEX LHS O_RANGE RANGE STRING1 STRING2
74
+ SYMBOL _eof '|' )
75
+ (seq '-' postfix))
76
76
  (rule postfix "8"
77
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
78
- (follow "(" ")" "-" "@pass" "@terminals" HEX LHS O_RANGE RANGE STRING1
79
- STRING2 SYMBOL _eof "|" )
77
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
78
+ (follow '(' ')' '-' '@pass' '@terminals' HEX LHS O_RANGE RANGE STRING1
79
+ STRING2 SYMBOL _eof '|' )
80
80
  (seq primary _postfix_1))
81
81
  (rule _postfix_1 "8.1"
82
82
  (first POSTFIX _eps)
83
- (follow "(" ")" "-" "@pass" "@terminals" HEX LHS O_RANGE RANGE STRING1
84
- STRING2 SYMBOL _eof "|" )
83
+ (follow '(' ')' '-' '@pass' '@terminals' HEX LHS O_RANGE RANGE STRING1
84
+ STRING2 SYMBOL _eof '|' )
85
85
  (cleanup opt)
86
86
  (alt _empty POSTFIX))
87
87
  (rule primary "9"
88
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
89
- (follow "(" ")" "-" "@pass" "@terminals" HEX LHS O_RANGE POSTFIX RANGE
90
- STRING1 STRING2 SYMBOL _eof "|" )
88
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
89
+ (follow '(' ')' '-' '@pass' '@terminals' HEX LHS O_RANGE POSTFIX RANGE
90
+ STRING1 STRING2 SYMBOL _eof '|' )
91
91
  (alt HEX SYMBOL O_RANGE RANGE STRING1 STRING2 _primary_1))
92
92
  (rule _primary_1 "9.1"
93
- (first "(")
94
- (follow "(" ")" "-" "@pass" "@terminals" HEX LHS O_RANGE POSTFIX RANGE
95
- STRING1 STRING2 SYMBOL _eof "|" )
96
- (seq "(" expression ")"))
93
+ (first '(')
94
+ (follow '(' ')' '-' '@pass' '@terminals' HEX LHS O_RANGE POSTFIX RANGE
95
+ STRING1 STRING2 SYMBOL _eof '|' )
96
+ (seq '(' expression ')'))
97
97
  (rule pass "10"
98
- (first "@pass")
99
- (follow "@pass" "@terminals" LHS _eof)
100
- (seq "@pass" expression))
98
+ (first '@pass')
99
+ (follow '@pass' '@terminals' LHS _eof)
100
+ (seq '@pass' expression))
101
101
  (terminals _terminals (seq))
102
- (terminal LHS "11" (seq (opt (seq "[" SYMBOL "]" (plus " "))) SYMBOL (star " ") "::="))
103
- (terminal SYMBOL "12" (plus (alt (range "a-z") (range "A-Z") (range "0-9") "_" ".")))
104
- (terminal HEX "13" (seq "#x" (plus (alt (range "a-f") (range "A-F") (range "0-9")))))
102
+ (terminal LHS "11" (seq (opt (seq '[' SYMBOL ']' (plus ' '))) SYMBOL (star ' ') '::='))
103
+ (terminal SYMBOL "12" (plus (alt (range "a-z") (range "A-Z") (range "0-9") '_' '.')))
104
+ (terminal HEX "13" (seq '#x' (plus (alt (range "a-f") (range "A-F") (range "0-9")))))
105
105
  (terminal RANGE "14"
106
- (seq "["
107
- (plus (alt (seq R_CHAR "-" R_CHAR) (seq HEX "-" HEX) R_CHAR HEX))
108
- (opt "-")
109
- (diff "]" LHS)) )
106
+ (seq '['
107
+ (plus (alt (seq R_CHAR '-' R_CHAR) (seq HEX '-' HEX) R_CHAR HEX))
108
+ (opt '-')
109
+ (diff ']' LHS)) )
110
110
  (terminal O_RANGE "15"
111
- (seq "[^" (plus (alt (seq R_CHAR "-" R_CHAR) (seq HEX "-" HEX) R_CHAR HEX)) (opt "-") "]"))
112
- (terminal STRING1 "16" (seq "\"" (star (diff CHAR "\"")) "\""))
111
+ (seq '[^' (plus (alt (seq R_CHAR '-' R_CHAR) (seq HEX '-' HEX) R_CHAR HEX)) (opt '-') ']'))
112
+ (terminal STRING1 "16" (seq '"' (star (diff CHAR '"')) '"'))
113
113
  (terminal STRING2 "17" (seq "'" (star (diff CHAR "'")) "'"))
114
114
  (terminal CHAR "18"
115
115
  (alt
@@ -117,66 +117,66 @@
117
117
  (range "#x20-#xD7FF")
118
118
  (range "#xE000-#xFFFD")
119
119
  (range "#x10000-#x10FFFF")) )
120
- (terminal R_CHAR "19" (diff CHAR (alt "]" "-" HEX)))
120
+ (terminal R_CHAR "19" (diff CHAR (alt ']' '-' HEX)))
121
121
  (terminal POSTFIX "20" (range "?*+"))
122
122
  (terminal PASS "21"
123
123
  (alt
124
124
  (range "#x9#xA#xD#x20")
125
- (seq (alt (diff "#" "#x") "//") (star (range "^#xA#xD")))
126
- (seq "/*" (star (alt (opt (seq "*" (range "^/"))) (range "^*"))) "*/")
127
- (seq "(*" (star (alt (opt (seq "*" (range "^)"))) (range "^*"))) "*)")) )
125
+ (seq (alt (diff '#' '#x') '//') (star (range "^#xA#xD")))
126
+ (seq '/*' (star (alt (opt (seq '*' (range "^/"))) (range "^*"))) '*/')
127
+ (seq '(*' (star (alt (opt (seq '*' (range "^)"))) (range "^*"))) '*)')) )
128
128
  (pass _pass (seq PASS))
129
- (rule _ebnf_3 "1.3" (first "@pass" "@terminals" LHS _eps) (follow _eof) (seq ebnf))
129
+ (rule _ebnf_3 "1.3" (first '@pass' '@terminals' LHS _eps) (follow _eof) (seq ebnf))
130
130
  (rule _rule_1 "3.1"
131
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
132
- (follow "@pass" "@terminals" LHS _eof)
131
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
132
+ (follow '@pass' '@terminals' LHS _eof)
133
133
  (seq expression))
134
134
  (rule _alt_4 "5.4"
135
- (first _eps "|")
136
- (follow ")" "@pass" "@terminals" LHS _eof)
135
+ (first _eps '|')
136
+ (follow ')' '@pass' '@terminals' LHS _eof)
137
137
  (seq _alt_1))
138
138
  (rule _alt_5 "5.5"
139
- (first _eps "|")
140
- (follow ")" "@pass" "@terminals" LHS _eof)
139
+ (first _eps '|')
140
+ (follow ')' '@pass' '@terminals' LHS _eof)
141
141
  (seq _alt_1))
142
142
  (rule _alt_6 "5.6"
143
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
144
- (follow ")" "@pass" "@terminals" LHS _eof "|")
143
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
144
+ (follow ')' '@pass' '@terminals' LHS _eof '|')
145
145
  (seq seq))
146
146
  (rule _seq_3 "6.3"
147
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL _eps)
148
- (follow ")" "@pass" "@terminals" LHS _eof "|")
147
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL _eps)
148
+ (follow ')' '@pass' '@terminals' LHS _eof '|')
149
149
  (seq _seq_1))
150
150
  (rule _seq_4 "6.4"
151
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL _eps)
152
- (follow ")" "@pass" "@terminals" LHS _eof "|")
151
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL _eps)
152
+ (follow ')' '@pass' '@terminals' LHS _eof '|')
153
153
  (seq _seq_1))
154
154
  (rule _diff_3 "7.3"
155
- (first "-" _eps)
156
- (follow "(" ")" "@pass" "@terminals" HEX LHS O_RANGE RANGE STRING1 STRING2
157
- SYMBOL _eof "|" )
155
+ (first '-' _eps)
156
+ (follow '(' ')' '@pass' '@terminals' HEX LHS O_RANGE RANGE STRING1 STRING2
157
+ SYMBOL _eof '|' )
158
158
  (seq _diff_1))
159
159
  (rule _diff_4 "7.4"
160
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
161
- (follow "(" ")" "@pass" "@terminals" HEX LHS O_RANGE RANGE STRING1 STRING2
162
- SYMBOL _eof "|" )
160
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
161
+ (follow '(' ')' '@pass' '@terminals' HEX LHS O_RANGE RANGE STRING1 STRING2
162
+ SYMBOL _eof '|' )
163
163
  (seq postfix))
164
164
  (rule _postfix_2 "8.2"
165
165
  (first POSTFIX _eps)
166
- (follow "(" ")" "-" "@pass" "@terminals" HEX LHS O_RANGE RANGE STRING1
167
- STRING2 SYMBOL _eof "|" )
166
+ (follow '(' ')' '-' '@pass' '@terminals' HEX LHS O_RANGE RANGE STRING1
167
+ STRING2 SYMBOL _eof '|' )
168
168
  (seq _postfix_1))
169
169
  (rule _primary_2 "9.2"
170
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
171
- (follow "(" ")" "-" "@pass" "@terminals" HEX LHS O_RANGE POSTFIX RANGE
172
- STRING1 STRING2 SYMBOL _eof "|" )
173
- (seq expression ")"))
170
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
171
+ (follow '(' ')' '-' '@pass' '@terminals' HEX LHS O_RANGE POSTFIX RANGE
172
+ STRING1 STRING2 SYMBOL _eof '|' )
173
+ (seq expression ')'))
174
174
  (rule _pass_1 "10.1"
175
- (first "(" HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
176
- (follow "@pass" "@terminals" LHS _eof)
175
+ (first '(' HEX O_RANGE RANGE STRING1 STRING2 SYMBOL)
176
+ (follow '@pass' '@terminals' LHS _eof)
177
177
  (seq expression))
178
178
  (rule _primary_3 "9.3"
179
- (first ")")
180
- (follow "(" ")" "-" "@pass" "@terminals" HEX LHS O_RANGE POSTFIX RANGE
181
- STRING1 STRING2 SYMBOL _eof "|" )
182
- (seq ")")) )
179
+ (first ')')
180
+ (follow '(' ')' '-' '@pass' '@terminals' HEX LHS O_RANGE POSTFIX RANGE
181
+ STRING1 STRING2 SYMBOL _eof '|' )
182
+ (seq ')')) )
data/etc/ebnf.peg.rb CHANGED
@@ -1,4 +1,4 @@
1
- # This file is automatically generated by ebnf version 2.3.4
1
+ # This file is automatically generated by ebnf version 2.4.0
2
2
  # Derived from etc/ebnf.ebnf
3
3
  module EBNFMeta
4
4
  RULES = [
data/etc/ebnf.peg.sxp CHANGED
@@ -1,54 +1,54 @@
1
1
  (
2
2
  (rule ebnf "1" (star _ebnf_1))
3
3
  (rule _ebnf_1 "1.1" (alt declaration rule))
4
- (rule declaration "2" (alt "@terminals" pass))
4
+ (rule declaration "2" (alt '@terminals' pass))
5
5
  (rule rule "3" (seq LHS expression))
6
6
  (rule expression "4" (seq alt))
7
7
  (rule alt "5" (seq seq _alt_1))
8
8
  (rule _alt_1 "5.1" (star _alt_2))
9
- (rule _alt_2 "5.2" (seq "|" seq))
9
+ (rule _alt_2 "5.2" (seq '|' seq))
10
10
  (rule seq "6" (plus diff))
11
11
  (rule diff "7" (seq postfix _diff_1))
12
12
  (rule _diff_1 "7.1" (opt _diff_2))
13
- (rule _diff_2 "7.2" (seq "-" postfix))
13
+ (rule _diff_2 "7.2" (seq '-' postfix))
14
14
  (rule postfix "8" (seq primary _postfix_1))
15
15
  (rule _postfix_1 "8.1" (opt POSTFIX))
16
16
  (rule primary "9" (alt HEX SYMBOL O_RANGE RANGE STRING1 STRING2 _primary_1))
17
- (rule _primary_1 "9.1" (seq "(" expression ")"))
18
- (rule pass "10" (seq "@pass" expression))
17
+ (rule _primary_1 "9.1" (seq '(' expression ')'))
18
+ (rule pass "10" (seq '@pass' expression))
19
19
  (terminals _terminals (seq))
20
- (terminal LHS "11" (seq _LHS_1 SYMBOL _LHS_2 "::="))
20
+ (terminal LHS "11" (seq _LHS_1 SYMBOL _LHS_2 '::='))
21
21
  (terminal _LHS_1 "11.1" (opt _LHS_3))
22
- (terminal _LHS_3 "11.3" (seq "[" SYMBOL "]" _LHS_4))
23
- (terminal _LHS_4 "11.4" (plus " "))
24
- (terminal _LHS_2 "11.2" (star " "))
22
+ (terminal _LHS_3 "11.3" (seq '[' SYMBOL ']' _LHS_4))
23
+ (terminal _LHS_4 "11.4" (plus ' '))
24
+ (terminal _LHS_2 "11.2" (star ' '))
25
25
  (terminal SYMBOL "12" (plus _SYMBOL_1))
26
- (terminal _SYMBOL_1 "12.1" (alt _SYMBOL_2 _SYMBOL_3 _SYMBOL_4 "_" "."))
26
+ (terminal _SYMBOL_1 "12.1" (alt _SYMBOL_2 _SYMBOL_3 _SYMBOL_4 '_' '.'))
27
27
  (terminal _SYMBOL_2 "12.2" (range "a-z"))
28
28
  (terminal _SYMBOL_3 "12.3" (range "A-Z"))
29
29
  (terminal _SYMBOL_4 "12.4" (range "0-9"))
30
- (terminal HEX "13" (seq "#x" _HEX_1))
30
+ (terminal HEX "13" (seq '#x' _HEX_1))
31
31
  (terminal _HEX_1 "13.1" (plus _HEX_2))
32
32
  (terminal _HEX_2 "13.2" (alt _HEX_3 _HEX_4 _HEX_5))
33
33
  (terminal _HEX_3 "13.3" (range "a-f"))
34
34
  (terminal _HEX_4 "13.4" (range "A-F"))
35
35
  (terminal _HEX_5 "13.5" (range "0-9"))
36
- (terminal RANGE "14" (seq "[" _RANGE_1 _RANGE_2 _RANGE_3))
36
+ (terminal RANGE "14" (seq '[' _RANGE_1 _RANGE_2 _RANGE_3))
37
37
  (terminal _RANGE_1 "14.1" (plus _RANGE_4))
38
38
  (terminal _RANGE_4 "14.4" (alt _RANGE_5 _RANGE_6 R_CHAR HEX))
39
- (terminal _RANGE_5 "14.5" (seq R_CHAR "-" R_CHAR))
40
- (terminal _RANGE_6 "14.6" (seq HEX "-" HEX))
41
- (terminal _RANGE_2 "14.2" (opt "-"))
42
- (terminal _RANGE_3 "14.3" (diff "]" LHS))
43
- (terminal O_RANGE "15" (seq "[^" _O_RANGE_1 _O_RANGE_2 "]"))
39
+ (terminal _RANGE_5 "14.5" (seq R_CHAR '-' R_CHAR))
40
+ (terminal _RANGE_6 "14.6" (seq HEX '-' HEX))
41
+ (terminal _RANGE_2 "14.2" (opt '-'))
42
+ (terminal _RANGE_3 "14.3" (diff ']' LHS))
43
+ (terminal O_RANGE "15" (seq '[^' _O_RANGE_1 _O_RANGE_2 ']'))
44
44
  (terminal _O_RANGE_1 "15.1" (plus _O_RANGE_3))
45
45
  (terminal _O_RANGE_3 "15.3" (alt _O_RANGE_4 _O_RANGE_5 R_CHAR HEX))
46
- (terminal _O_RANGE_4 "15.4" (seq R_CHAR "-" R_CHAR))
47
- (terminal _O_RANGE_5 "15.5" (seq HEX "-" HEX))
48
- (terminal _O_RANGE_2 "15.2" (opt "-"))
49
- (terminal STRING1 "16" (seq "\"" _STRING1_1 "\""))
46
+ (terminal _O_RANGE_4 "15.4" (seq R_CHAR '-' R_CHAR))
47
+ (terminal _O_RANGE_5 "15.5" (seq HEX '-' HEX))
48
+ (terminal _O_RANGE_2 "15.2" (opt '-'))
49
+ (terminal STRING1 "16" (seq '"' _STRING1_1 '"'))
50
50
  (terminal _STRING1_1 "16.1" (star _STRING1_2))
51
- (terminal _STRING1_2 "16.2" (diff CHAR "\""))
51
+ (terminal _STRING1_2 "16.2" (diff CHAR '"'))
52
52
  (terminal STRING2 "17" (seq "'" _STRING2_1 "'"))
53
53
  (terminal _STRING2_1 "17.1" (star _STRING2_2))
54
54
  (terminal _STRING2_2 "17.2" (diff CHAR "'"))
@@ -58,27 +58,27 @@
58
58
  (terminal _CHAR_3 "18.3" (range "#xE000-#xFFFD"))
59
59
  (terminal _CHAR_4 "18.4" (range "#x10000-#x10FFFF"))
60
60
  (terminal R_CHAR "19" (diff CHAR _R_CHAR_1))
61
- (terminal _R_CHAR_1 "19.1" (alt "]" "-" HEX))
61
+ (terminal _R_CHAR_1 "19.1" (alt ']' '-' HEX))
62
62
  (terminal POSTFIX "20" (range "?*+"))
63
63
  (terminal PASS "21" (alt _PASS_1 _PASS_2 _PASS_3 _PASS_4))
64
64
  (terminal _PASS_1 "21.1" (range "#x9#xA#xD#x20"))
65
65
  (terminal _PASS_2 "21.2" (seq _PASS_5 _PASS_6))
66
- (terminal _PASS_5 "21.5" (alt _PASS_7 "//"))
67
- (terminal _PASS_7 "21.7" (diff "#" "#x"))
66
+ (terminal _PASS_5 "21.5" (alt _PASS_7 '//'))
67
+ (terminal _PASS_7 "21.7" (diff '#' '#x'))
68
68
  (terminal _PASS_6 "21.6" (star _PASS_8))
69
69
  (terminal _PASS_8 "21.8" (range "^#xA#xD"))
70
- (terminal _PASS_3 "21.3" (seq "/*" _PASS_9 "*/"))
70
+ (terminal _PASS_3 "21.3" (seq '/*' _PASS_9 '*/'))
71
71
  (terminal _PASS_9 "21.9" (star _PASS_10))
72
72
  (terminal _PASS_10 "21.10" (alt _PASS_11 _PASS_12))
73
73
  (terminal _PASS_11 "21.11" (opt _PASS_13))
74
- (terminal _PASS_13 "21.13" (seq "*" _PASS_14))
74
+ (terminal _PASS_13 "21.13" (seq '*' _PASS_14))
75
75
  (terminal _PASS_14 "21.14" (range "^/"))
76
76
  (terminal _PASS_12 "21.12" (range "^*"))
77
- (terminal _PASS_4 "21.4" (seq "(*" _PASS_15 "*)"))
77
+ (terminal _PASS_4 "21.4" (seq '(*' _PASS_15 '*)'))
78
78
  (terminal _PASS_15 "21.15" (star _PASS_16))
79
79
  (terminal _PASS_16 "21.16" (alt _PASS_17 _PASS_18))
80
80
  (terminal _PASS_17 "21.17" (opt _PASS_19))
81
- (terminal _PASS_19 "21.19" (seq "*" _PASS_20))
81
+ (terminal _PASS_19 "21.19" (seq '*' _PASS_20))
82
82
  (terminal _PASS_20 "21.20" (range "^)"))
83
83
  (terminal _PASS_18 "21.18" (range "^*"))
84
84
  (pass _pass (seq PASS)))