- | (e ws ^"**" > e ws ^"*")
- | e ^"*/" e /ws
- | (e ws ^"++" > e ws ^"+")
- | e ^"+/" e /ws
- | e ^"?" /ws
-
- | quoted => "literal"
-
- | "(" word ^")" /ws
- > ^"(" alternatives ")" /ws
-
-w !::= " "
- | "//" ([~\n]*) "\n"
- | "\n"
- | "\r"
-an ::= [a-zA-Z0-9_]
-word ::= an++
-quoted ::= "\"" (([~\"\\] | escaped)+) "\""
- | "\"\"" => ""
-escaped ::= "\\n" => "\n"
- | "\\r" => "\r"
- | "\\" [~nr]