From: Yitzchak Scott-Thoennes Date: Mon, 9 Feb 2004 00:51:45 +0000 (-0800) Subject: reduce overhead of charnames.pm, make op/pat.t work under miniperl X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=b8effcb5f9b63a03069dd25d50d5af552626f11a;p=p5sagit%2Fp5-mst-13.2.git reduce overhead of charnames.pm, make op/pat.t work under miniperl Message-ID: <20040209085145.GA3204@efn.org> (plus an etymological notice) p4raw-id: //depot/perl@22291 --- diff --git a/lib/charnames.pm b/lib/charnames.pm index 3457b8b..4f7fdeb 100644 --- a/lib/charnames.pm +++ b/lib/charnames.pm @@ -3,7 +3,7 @@ use strict; use warnings; use Carp; use File::Spec; -our $VERSION = '1.02'; +our $VERSION = '1.03'; use bytes (); # for $bytes::hint_bits $charnames::hint_bits = 0x20000; # HINT_LOCALIZE_HH @@ -238,7 +238,19 @@ sub import } } # import -require Unicode::UCD; # for Unicode::UCD::_getcode() +# this comes actually from Unicode::UCD, but it avoids the +# overhead of loading it +sub _getcode { + my $arg = shift; + + if ($arg =~ /^[1-9]\d*$/) { + return $arg; + } elsif ($arg =~ /^(?:[Uu]\+|0[xX])?([[:xdigit:]]+)$/) { + return hex($1); + } + + return; +} my %viacode; @@ -250,7 +262,7 @@ sub viacode } my $arg = shift; - my $code = Unicode::UCD::_getcode($arg); + my $code = _getcode($arg); my $hex;