regex: Add pseudo-Posix class: 'cased'
authorKarl Williamson <public@khwilliamson.com>
Mon, 31 Dec 2012 04:14:58 +0000 (21:14 -0700)
committerKarl Williamson <public@khwilliamson.com>
Mon, 31 Dec 2012 18:03:28 +0000 (11:03 -0700)
commitb0d691b286d92d66e559deb75501333ab819383b
treea3148f7f77ccb80faadea0a5f30774485f7f36b1
parente8d596e06a8502f992b53ea859e136ec40f7497c
regex: Add pseudo-Posix class: 'cased'

/[[:upper:]]/i and /[[:lower:]]/i should match the Unicode property
\p{Cased}. This commit introduces a pseudo-Posix class, internally named
'cased', to represent this.  This class isn't specifiable by the user,
except through using either /[[:upper:]]/i or /[[:lower:]]/i.  Debug
output will say ':cased:'.

The regex parsing either of :lower: or :upper: will change them into
:cased:, where already existing logic can handle this, just like any
other class.

This commit fixes the regression introduced in
3018b823898645e44b8c37c70ac5c6302b031381, and that these have never
worked under 'use locale'.  The next commit will un-TODO the tests for
these things.
embedvar.h
handy.h
intrpvar.h
l1_char_class_tab.h
regcomp.c
regcomp.h
regen/mk_PL_charclass.pl
regexec.c
sv.c