]> gitweb.factorcode.org Git - factor.git/commitdiff
peg.ebnf: fix named variables in groups
authorJohn Benediktsson <mrjbq7@gmail.com>
Tue, 13 Dec 2022 18:31:07 +0000 (10:31 -0800)
committerJohn Benediktsson <mrjbq7@gmail.com>
Tue, 13 Dec 2022 18:31:07 +0000 (10:31 -0800)
basis/peg/ebnf/ebnf-tests.factor
basis/peg/ebnf/ebnf.factor

index 3551951330b575acdbfa635f569c35e63ab448e2..7aaaba47c422aad0a0b15dbb4b0c698b9191252b 100644 (file)
@@ -647,3 +647,11 @@ Tok                = Spaces (Number | Special )
     "abc" EBNF[=[ rule="a":a "b"+~ "c":c => [[ a c 2array ]] ]=]
 ] unit-test
 
+! Bugfix, ensure that named vars work in groups
+{ { "a" "b" } } [
+    "ab" EBNF[=[ rule = ( "a":a "b":b ) => [[ { a b } ]] ]=]
+] unit-test
+
+{ { "a" "b" } } [
+    "a b" EBNF[=[ rule = { "a":a "b":b } => [[ { a b } ]] ]=]
+] unit-test
index 0b9b94e31a6ce902bd3ae9afe7dbb7c3b51e8852..599611ec358f0830c14ba3845fe1b8eed417eeb9 100644 (file)
@@ -469,6 +469,9 @@ M: ebnf-var build-locals
         " nip ]" %
     ] "" make ;
 
+M: ebnf-whitespace build-locals
+    group>> build-locals ;
+
 M: object build-locals
     drop ;