Skip to content

Instantly share code, notes, and snippets.

@ronaldxs
Created September 18, 2015 18:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ronaldxs/df389180dffb7c216131 to your computer and use it in GitHub Desktop.
Save ronaldxs/df389180dffb7c216131 to your computer and use it in GitHub Desktop.
use v6;
#`{{
From page 49 of http://www.ietf.org/rfc/rfc3986.txt
reserved = gen-delims / sub-delims
gen-delims = ":" / "/" / "?" / "#" / "[" / "]" / "@"
sub-delims = "!" / "$" / "&" / "'" / "(" / ")"
/ "*" / "+" / "," / ";" / "="
}}
grammar TestGrammar {
token TOP { ^ <reserved>+ $ }
token reserved { <+ gen_delims + sub-delims> };
token gen_delims { <[:/?\#\[\]@]> };
token sub-delims { <[;!$&'()*+,=]> };
}
my $m = TestGrammar.parse(':///#;*');
say ~$m;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment