This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
restrict \p{IsUserDefined} to In\w+ and In\w+
authorDavid Mitchell <davem@iabyn.com>
Sun, 16 Jan 2011 14:16:20 +0000 (14:16 +0000)
committerDavid Mitchell <davem@iabyn.com>
Sun, 16 Jan 2011 14:16:20 +0000 (14:16 +0000)
commitd658a8a81c4f311bef688fd51df924a424429f14
treec90aa43119f05a7732d7f1fac94f8c0eae753002
parent95a517db36c4d56cf2a5e6103e3235de4c1c38f8
restrict \p{IsUserDefined} to In\w+ and In\w+

In L<perlunicode/"User-Defined Character Properties">, it says you can
create custom properties by defining subroutines whose names begin with
"In" or "Is". However, perl doesn't actually enforce that naming
restriction, so \p{foo::bar} will call foo::Bar() if it exists.

This commit finally enforces this convention. Note that this broke a
number of existing tests for properties, since they didn't always use an
Is/In prefix.
lib/utf8_heavy.pl
t/re/regexp_unicode_prop.t
t/uni/class.t