##   Enumerated character lists
<[c]>			abcdef		y	character class
# todo :pugs<feature>
<[ z ]>			abc def		n	character class ignores ws
# todo :pugs<feature>
<[dcb]>**{3}		abcdef		y	repeated character class
^<[a]>			abcdef		y	anchored character class
<-[e]>			abcdef		y	negated character class
^<[a]>?			abcdef		y	anchored optional character class
<-[e]>?			abcdef		y	negated optional character class
<-[dcb]>**{3}		abcdef		n	repeated negated character class
^<-[e]>			abcdef		y	anchored negated character class
^<-[a]>			abcdef		n	anchored negated character class
<[b..d]>		abcdef		y	character range
# todo :pugs<feature>
<[b .. d]>		c		y	character range ignores ws
<[b..d]>		abxxef		y	character range
<[b..d]>		axcxef		y	character range
<[b..d]>		axxdef		y	character range
<[b..d]>		axxxef		n	character range
<-[b..d]>		abcdef		y	negated character range
# todo :pugs<feature>
<- [b..d]>		abcdef		y	negated allows ws
<-[b..d]>		bbccdd		n	negated character range
# todo :pge<reversed character range>
<-[d..b]>		bbccdd		/parse error/	illegal character range
<[-]>			ab-def		/parse error/	unescaped hyphen
<[\-]>			ab-def		y	escaped hyphen
<[\-]>			abcdef		n	escaped hyphen
<-[\-]>			---x--		y	negated escaped hyphen
<-[\-]>			------		n	negated escaped hyphen
<[\-+]>			ab-def		y	escaped hyphen in range
<[\-+]>			ab+def		y	escaped hyphen in range
<[\-+]>			abcdef		n	escaped hyphen in range
<[+\-]>			ab-def		y	escaped hyphen in range
<[+\-]>			ab+def		y	escaped hyphen in range
<[+\-]>			abcdef		n	escaped hyphen in range
<-[\-+]>		---x--		y	negated escaped hyphen in range
<-[\-+]>		------		n	negated escaped hyphen in range
<-[+\-]>		---x--		y	negated escaped hyphen in range
<-[+\-]>		------		n	negated escaped hyphen in range
<["\\]>			\\			y	escaped backslash
<[\]]>			]			y	escaped close bracket
<[\]>			\\]]		/parse error/	unescaped backslash (or no closing brace)
^\><[<]>		><		y	lt character class
^<[>]>\<		><		y	gt character class
# todo :pugs<feature>
^<[><]>**{2}		><		y	gt, lt character class
# todo :pugs<feature>
^<[<>]>**{2}		><		y	lt, gt  character class
^<-[><]>		><		n	not gt, lt character class
^<-[<>]>		><		n	not lt, gt  character class
'... --- ...'		... --- ...	y	literal match (\')
'... --- ...'		...---...	n	literal match (\')
# todo :pugs<feature>
'ab\'>cd'		ab'>cd		y	literal match with quote
'ab\\yz'		ab\x5cyz	y	literal match with backslash
'ab"cd'			ab"cd		y	literal match with quote
# todo :pugs<feature>
'ab\\yz'		ab\x5cyz	y	literal match with backslash
# todo :pugs<feature> :pge<feature>
"... --- ..."		... --- ...	y	literal match (\")
# todo :pugs<feature> :pge<feature>
"... --- ..."		...---...	n	literal match (\")
# todo :pugs<feature> :pge<feature>
"ab<\">cd"		ab<">cd		y	literal match with quote
# todo :pugs<feature> :pge<feature>
"ab<'>cd"		ab<'>cd		y	literal match with quote
# todo :pugs<feature> :pge<feature>
"ab\\cd"		ab\x5ccd	y	literal match with backslash
# todo :pugs<feature> :pge<feature>
(ab)x"$0"		abxab		y	literal match with interpolation
# todo :pugs<feature> :pge<feature>
(ab)"x$0"		abxab		y	literal match with interpolation
'?'			ab<?		y	literal match with question mark
'<'			ab<?		y	literal match with lt 
'<?'			ab<?		y	literal match with lt and question mark
'<?'			ab<x?		n	non-matching literal match 
<[A..Z0..9]>		abcdef		n	two enumerated ranges
<[A..Z0..9]>		abcDef		y	two enumerated ranges

## vim: noexpandtab tabstop=4 shiftwidth=4
