PATH:
usr
/
share
/
perl5
package English; our $VERSION = '1.05'; require Exporter; @ISA = qw(Exporter); =head1 NAME English - use nice English (or awk) names for ugly punctuation variables =head1 SYNOPSIS use English qw( -no_match_vars ) ; # Avoids regex performance penalty use English; ... if ($ERRNO =~ /denied/) { ... } =head1 DESCRIPTION This module provides aliases for the built-in variables whose names no one seems to like to read. Variables with side-effects which get triggered just by accessing them (like $0) will still be affected. For those variables that have an B<awk> version, both long and short English alternatives are provided. For example, the C<$/> variable can be referred to either $RS or $INPUT_RECORD_SEPARATOR if you are using the English module. See L<perlvar> for a complete list of these. =head1 PERFORMANCE This module can provoke sizeable inefficiencies for regular expressions, due to unfortunate implementation details. If performance matters in your application and you don't need $PREMATCH, $MATCH, or $POSTMATCH, try doing use English qw( -no_match_vars ) ; . B<It is especially important to do this in modules to avoid penalizing all applications which use them.> =cut no warnings; my $globbed_match ; # Grandfather $NAME import sub import { my $this = shift; my @list = grep { ! /^-no_match_vars$/ } @_ ; local $Exporter::ExportLevel = 1; if ( @_ == @list ) { *EXPORT = \@COMPLETE_EXPORT ; $globbed_match ||= ( eval q{ *MATCH = *& ; *PREMATCH = *` ; *POSTMATCH = *' ; 1 ; } || do { require Carp ; Carp::croak("Can't create English for match leftovers: $@") ; } ) ; } else { *EXPORT = \@MINIMAL_EXPORT ; } Exporter::import($this,grep {s/^\$/*/} @list); } @MINIMAL_EXPORT = qw( *ARG *LAST_PAREN_MATCH *INPUT_LINE_NUMBER *NR *INPUT_RECORD_SEPARATOR *RS *OUTPUT_AUTOFLUSH *OUTPUT_FIELD_SEPARATOR *OFS *OUTPUT_RECORD_SEPARATOR *ORS *LIST_SEPARATOR *SUBSCRIPT_SEPARATOR *SUBSEP *FORMAT_PAGE_NUMBER *FORMAT_LINES_PER_PAGE *FORMAT_LINES_LEFT *FORMAT_NAME *FORMAT_TOP_NAME *FORMAT_LINE_BREAK_CHARACTERS *FORMAT_FORMFEED *CHILD_ERROR *OS_ERROR *ERRNO *EXTENDED_OS_ERROR *EVAL_ERROR *PROCESS_ID *PID *REAL_USER_ID *UID *EFFECTIVE_USER_ID *EUID *REAL_GROUP_ID *GID *EFFECTIVE_GROUP_ID *EGID *PROGRAM_NAME *PERL_VERSION *ACCUMULATOR *COMPILING *DEBUGGING *SYSTEM_FD_MAX *INPLACE_EDIT *PERLDB *BASETIME *WARNING *EXECUTABLE_NAME *OSNAME *LAST_REGEXP_CODE_RESULT *EXCEPTIONS_BEING_CAUGHT *LAST_SUBMATCH_RESULT @LAST_MATCH_START @LAST_MATCH_END ); @MATCH_EXPORT = qw( *MATCH *PREMATCH *POSTMATCH ); @COMPLETE_EXPORT = ( @MINIMAL_EXPORT, @MATCH_EXPORT ) ; # The ground of all being. *ARG = *_ ; # Matching. *LAST_PAREN_MATCH = *+ ; *LAST_SUBMATCH_RESULT = *^N ; *LAST_MATCH_START = *-{ARRAY} ; *LAST_MATCH_END = *+{ARRAY} ; # Input. *INPUT_LINE_NUMBER = *. ; *NR = *. ; *INPUT_RECORD_SEPARATOR = */ ; *RS = */ ; # Output. *OUTPUT_AUTOFLUSH = *| ; *OUTPUT_FIELD_SEPARATOR = *, ; *OFS = *, ; *OUTPUT_RECORD_SEPARATOR = *\ ; *ORS = *\ ; # Interpolation "constants". *LIST_SEPARATOR = *" ; *SUBSCRIPT_SEPARATOR = *; ; *SUBSEP = *; ; # Formats *FORMAT_PAGE_NUMBER = *% ; *FORMAT_LINES_PER_PAGE = *= ; *FORMAT_LINES_LEFT = *- ; *FORMAT_NAME = *~ ; *FORMAT_TOP_NAME = *^ ; *FORMAT_LINE_BREAK_CHARACTERS = *: ; *FORMAT_FORMFEED = *^L ; # Error status. *CHILD_ERROR = *? ; *OS_ERROR = *! ; *ERRNO = *! ; *OS_ERROR = *! ; *ERRNO = *! ; *EXTENDED_OS_ERROR = *^E ; *EVAL_ERROR = *@ ; # Process info. *PROCESS_ID = *$ ; *PID = *$ ; *REAL_USER_ID = *< ; *UID = *< ; *EFFECTIVE_USER_ID = *> ; *EUID = *> ; *REAL_GROUP_ID = *( ; *GID = *( ; *EFFECTIVE_GROUP_ID = *) ; *EGID = *) ; *PROGRAM_NAME = *0 ; # Internals. *PERL_VERSION = *^V ; *ACCUMULATOR = *^A ; *COMPILING = *^C ; *DEBUGGING = *^D ; *SYSTEM_FD_MAX = *^F ; *INPLACE_EDIT = *^I ; *PERLDB = *^P ; *LAST_REGEXP_CODE_RESULT = *^R ; *EXCEPTIONS_BEING_CAUGHT = *^S ; *BASETIME = *^T ; *WARNING = *^W ; *EXECUTABLE_NAME = *^X ; *OSNAME = *^O ; # Deprecated. # *ARRAY_BASE = *[ ; # *OFMT = *# ; # *OLD_PERL_VERSION = *] ; 1;
[-] AutoLoader.pm
[edit]
[+]
warnings
[+]
Perl
[-] CORE.pod
[edit]
[+]
Compress
[-] fields.pm
[edit]
[-] SelectSaver.pm
[edit]
[+]
vendor_perl
[-] DirHandle.pm
[edit]
[-] Safe.pm
[edit]
[+]
HTTP
[+]
B
[-] vmsish.pm
[edit]
[+]
Memoize
[-] SelfLoader.pm
[edit]
[-] overloading.pm
[edit]
[-] bigrat.pm
[edit]
[+]
Config
[-] bytes_heavy.pl
[edit]
[+]
..
[+]
IPC
[-] lwptut.pod
[edit]
[+]
File
[-] blib.pm
[edit]
[-] strict.pm
[edit]
[+]
IO
[+]
Net
[-] Memoize.pm
[edit]
[+]
DBM_Filter
[+]
Version
[-] utf8_heavy.pl
[edit]
[-] lwpcook.pod
[edit]
[-] less.pm
[edit]
[+]
Pod
[+]
Archive
[-] Symbol.pm
[edit]
[+]
Object
[-] utf8.pm
[edit]
[-] XSLoader.pm
[edit]
[-] CPAN.pm
[edit]
[+]
Tie
[-] deprecate.pm
[edit]
[+]
PerlIO
[-] if.pm
[edit]
[+]
pod
[-] diagnostics.pm
[edit]
[-] subs.pm
[edit]
[+]
Encode
[+]
Filter
[+]
CPAN
[+]
unicore
[+]
Devel
[-] filetest.pm
[edit]
[-] LWP.pm
[edit]
[+]
Unicode
[+]
Test
[-] NEXT.pm
[edit]
[-] sort.pm
[edit]
[-] Test.pm
[edit]
[+]
Term
[+]
overload
[-] FindBin.pm
[edit]
[+]
Attribute
[-] open.pm
[edit]
[-] sigtrap.pm
[edit]
[-] bignum.pm
[edit]
[-] vars.pm
[edit]
[-] AutoSplit.pm
[edit]
[-] FileHandle.pm
[edit]
[-] base.pm
[edit]
[-] PerlIO.pm
[edit]
[+]
Time
[+]
Text
[-] English.pm
[edit]
[+]
Getopt
[+]
ExtUtils
[+]
URI
[-] Benchmark.pm
[edit]
[+]
Package
[+]
Thread
[-] DBM_Filter.pm
[edit]
[-] _charnames.pm
[edit]
[-] warnings.pm
[edit]
[-] feature.pm
[edit]
[+]
LWP
[-] integer.pm
[edit]
[+]
Module
[+]
encoding
[-] Thread.pm
[edit]
[-] AnyDBM_File.pm
[edit]
[+]
User
[-] dumpvar.pl
[edit]
[+]
Log
[-] Dumpvalue.pm
[edit]
[-] bigint.pm
[edit]
[+]
Search
[+]
I18N
[+]
Class
[-] URI.pm
[edit]
[-] autouse.pm
[edit]
[-] perlfaq.pm
[edit]
[-] locale.pm
[edit]
[-] bytes.pm
[edit]
[+]
Math
[-] DB.pm
[edit]
[-] FileCache.pm
[edit]
[+]
JSON
[-] overload.pm
[edit]
[-] charnames.pm
[edit]
[+]
App
[-] perl5db.pl
[edit]
[+]
Locale
[-] UNIVERSAL.pm
[edit]