projects
/
sbp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
use >> and << for indent/dedent
[sbp.git]
/
tests
/
meta.g
diff --git
a/tests/meta.g
b/tests/meta.g
index
b7dc2b8
..
f06eb2f
100644
(file)
--- a/
tests/meta.g
+++ b/
tests/meta.g
@@
-15,7
+15,7
@@
NonTerminal = NonTerminal:: Word ws "=" ws RHS
| Word "*" ws ^"=" ws RHS
| Word "*/" Word ws ^"=" ws RHS
| Word "*" ws ^"=" ws RHS
| Word "*/" Word ws ^"=" ws RHS
-RHS:: = ("|":: Sequence +/ (ws "|" ws)) +/ (ws ">" ws)
+RHS:: = ("|":: Sequence +/ (ws "|" ws)) +/ (ws (">" -> ~">") ws)
Elements:: = e*/ws
Elements:: = e*/ws
@@
-26,6
+26,7
@@
PreSequence = Elements
Sequence = PreSequence
| Sequence ^"&" Elements /ws
Sequence = PreSequence
| Sequence ^"&" Elements /ws
+ | ^"~~" Elements /ws
| Sequence ^"&~" Elements /ws
e = e ^"!"
| Sequence ^"&~" Elements /ws
e = e ^"!"
@@
-49,9
+50,11
@@
e = e ^"!"
| ^"..."
| "(" Word ^")"
> ^"(" RHS ")" /ws
| ^"..."
| "(" Word ^")"
> ^"(" RHS ")" /ws
- | ^"~" e
+ | "~":: ("~" -> ~"~")! e
| ^"\\{"
| ^"\\}"
| ^"\\{"
| ^"\\}"
+ | ^">>"
+ | ^"<<"
Word:: = [.a-zA-Z0-9_]++ &~ "."+
Quoted:: = "\"" (~[\"\\] | escaped)+ "\""
Word:: = [.a-zA-Z0-9_]++ &~ "."+
Quoted:: = "\"" (~[\"\\] | escaped)+ "\""
@@
-59,8
+62,12
@@
Quoted:: = "\"" (~[\"\\] | escaped)+ "\""
Range:: = ec
| ec "-" ec
Range:: = ec
| ec "-" ec
+ | "<<":: [<][<]
+ | ">>":: [>][>]
-ec = ~[\-\]\\]
+ec = ~[\-\]\\<>]
+ | [>] -> ~[>]
+ | [<] -> ~[<]
| escaped
escaped = "\n":: "\\n"
| "\r":: "\\r"
| escaped
escaped = "\n":: "\\n"
| "\r":: "\\r"