-CANY REG_ANY, no 0 S ; Match any one byte.
-ANYOF ANYOF, sv 0 S ; Match character in (or not in) this class, single char match only
-
-# Order (within each group) of the below is important. See ordering comment
-# above. The PLACEHOLDERn ones are wasting a value. Right now, we have plenty
-# to spare, but these would be obvious candidates if ever we ran out of node
-# types in a U8.
-ALNUM ALNUM, no 0 S ; Match any alphanumeric character using native charset semantics for non-utf8
-ALNUML ALNUM, no 0 S ; Match any alphanumeric char in locale
-ALNUMU ALNUM, no 0 S ; Match any alphanumeric char using Unicode semantics
-ALNUMA ALNUM, no 0 S ; Match [A-Za-z_0-9]
-NALNUM NALNUM, no 0 S ; Match any non-alphanumeric character using native charset semantics for non-utf8
-NALNUML NALNUM, no 0 S ; Match any non-alphanumeric char in locale
-NALNUMU NALNUM, no 0 S ; Match any non-alphanumeric char using Unicode semantics
-NALNUMA NALNUM, no 0 S ; Match [^A-Za-z_0-9]
-SPACE SPACE, no 0 S ; Match any whitespace character using native charset semantics for non-utf8
-SPACEL SPACE, no 0 S ; Match any whitespace char in locale
-SPACEU SPACE, no 0 S ; Match any whitespace char using Unicode semantics
-SPACEA SPACE, no 0 S ; Match [ \t\n\f\r]
-NSPACE NSPACE, no 0 S ; Match any non-whitespace character using native charset semantics for non-utf8
-NSPACEL NSPACE, no 0 S ; Match any non-whitespace char in locale
-NSPACEU NSPACE, no 0 S ; Match any non-whitespace char using Unicode semantics
-NSPACEA NSPACE, no 0 S ; Match [^ \t\n\f\r]
-DIGIT DIGIT, no 0 S ; Match any numeric character using native charset semantics for non-utf8
-DIGITL DIGIT, no 0 S ; Match any numeric character in locale
-PLACEHOLDER1 NOTHING, no ; placeholder for missing DIGITU
-DIGITA DIGIT, no 0 S ; Match [0-9]
-NDIGIT NDIGIT, no 0 S ; Match any non-numeric character using native charset semantics for non-utf8
-NDIGITL NDIGIT, no 0 S ; Match any non-numeric character in locale
-PLACEHOLDER2 NOTHING, no ; placeholder for missing NDIGITU
-NDIGITA NDIGIT, no 0 S ; Match [^0-9]
-
-POSIXD POSIXD, none 0 S ; currently unused except as a placeholder
-POSIXL POSIXD, none 0 S ; currently unused except as a placeholder
-POSIXU POSIXD, none 0 S ; currently unused except as a placeholder
+ANYOF ANYOF, sv charclass S ; Match character in (or not in) this class, single char match only
+ANYOFD ANYOF, sv charclass S ; Like ANYOF, but /d is in effect
+ANYOFL ANYOF, sv charclass S ; Like ANYOF, but /l is in effect
+ANYOFPOSIXL ANYOF, sv charclass_posixl S ; Like ANYOFL, but matches [[:posix:]] classes
+ANYOFH ANYOF, sv 1 S ; Like ANYOF, but only has "High" matches, none in the bitmap; non-zero flags "f" means "f" is the first UTF-8 byte shared in common by all code points matched
+ANYOFM ANYOFM byte 1 S ; Like ANYOF, but matches an invariant byte as determined by the mask and arg
+NANYOFM ANYOFM byte 1 S ; complement of ANYOFM
+
+#* POSIX Character Classes:
+# Order of the below is important. See ordering comment above.
+POSIXD POSIXD, none 0 S ; Some [[:class:]] under /d; the FLAGS field gives which one
+POSIXL POSIXD, none 0 S ; Some [[:class:]] under /l; the FLAGS field gives which one
+POSIXU POSIXD, none 0 S ; Some [[:class:]] under /u; the FLAGS field gives which one