[
{ "a" "a" }
] [
- EBNF: foo2 Bar = "a":1a "a":2a => [[ 1a 2a 2array ]] ;EBNF
+ EBNF: foo2 Bar = "a":a-1 "a":a-2 => [[ a-1 a-2 2array ]] ;EBNF
"aa" foo2
] unit-test
-
-[
- { "a" "a" }
-] [
- EBNF: foo3 Bar = "a":11 "a":22 => [[ 11 22 2array ]] ;EBNF
- "aa" foo3
-] unit-test
-
-[
- { "a" "a" }
-] [
- EBNF: foo4 Bar = "a":a-1 "a":a-2 => [[ a-1 a-2 2array ]] ;EBNF
- "aa" foo4
-] unit-test
\r
: 'element' ( -- parser )\r
[\r
- [ ('element') , ":" syntax , "(a-zA-Z0-9_-)+" range-pattern repeat1 [ >string ] action , ] seq* [ first2 <ebnf-var> ] action ,\r
+ [\r
+ ('element') , ":" syntax ,\r
+ "a-zA-Z_" range-pattern\r
+ "a-zA-Z0-9_-" range-pattern repeat1 2seq [ first2 swap prefix >string ] action ,\r
+ ] seq* [ first2 <ebnf-var> ] action ,\r
('element') ,\r
] choice* ;\r
\r