__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
package locale;
use strict;
use warnings;
our $VERSION = '1.12';
use Config;
$Carp::Internal{ (__PACKAGE__) } = 1;
=head1 NAME
locale - Perl pragma to use or avoid POSIX locales for built-in operations
=head1 SYNOPSIS
my @x1 = sort @y; # Native-platform/Unicode code point sort order
{
use locale;
my @x2 = sort @y; # Locale-defined sort order
}
my @x3 = sort @y; # Native-platform/Unicode code point sort order
# again
# Parameters to the pragma are to work around deficiencies in locale
# handling that have since been fixed, and hence these are likely no
# longer useful
use locale qw(:ctype :collate); # Only use the locale for character
# classification (\w, \d, etc.), and
# for string comparison operations
# like '$a le $b' and sorting.
use locale ':not_characters'; # Use the locale for everything but
# character classification and string
# comparison operations
use locale ':!numeric'; # Use the locale for everything but
# numeric-related operations
use locale ':not_numeric'; # Same
no locale; # Turn off locale handling for the remainder of
# the scope.
=head1 DESCRIPTION
This pragma tells the compiler to enable (or disable) the use of POSIX
locales for built-in operations (for example, C<LC_CTYPE> for regular
expressions, C<LC_COLLATE> for string comparison, and C<LC_NUMERIC> for number
formatting). Each C<use locale> or C<no locale>
affects statements to the end of the enclosing BLOCK.
The pragma is documented as part of L<perllocale>.
=cut
# A separate bit is used for each of the two forms of the pragma, to save
# having to look at %^H for the normal case of a plain 'use locale' without an
# argument.
$locale::hint_bits = 0x4;
$locale::partial_hint_bits = 0x10; # If pragma has an argument
# The pseudo-category :characters consists of 2 real ones; but it also is
# given its own number, -1, because in the complement form it also has the
# side effect of "use feature 'unicode_strings'"
sub import {
shift; # should be 'locale'; not checked
$^H{locale} = 0 unless defined $^H{locale};
if (! @_) { # If no parameter, use the plain form that changes all categories
$^H |= $locale::hint_bits;
}
else {
my @categories = ( qw(:ctype :collate :messages
:numeric :monetary :time) );
for (my $i = 0; $i < @_; $i++) {
my $arg = $_[$i];
my $complement = $arg =~ s/ : ( ! | not_ ) /:/x;
if (! grep { $arg eq $_ } @categories, ":characters") {
require Carp;
Carp::croak("Unknown parameter '$_[$i]' to 'use locale'");
}
if ($complement) {
if ($i != 0 || $i < @_ - 1) {
require Carp;
Carp::croak("Only one argument to 'use locale' allowed"
. "if is $complement");
}
if ($arg eq ':characters') {
push @_, grep { $_ ne ':ctype' && $_ ne ':collate' }
@categories;
# We add 1 to the category number; This category number
# is -1
$^H{locale} |= (1 << 0);
}
else {
push @_, grep { $_ ne $arg } @categories;
}
next;
}
elsif ($arg eq ':characters') {
push @_, ':ctype', ':collate';
next;
}
$^H |= $locale::partial_hint_bits;
# This form of the pragma overrides the other
$^H &= ~$locale::hint_bits;
$arg =~ s/^://;
eval { require POSIX; POSIX->import('locale_h'); };
# Map our names to the ones defined by POSIX
my $LC = "LC_" . uc($arg);
my $bit = eval "&POSIX::$LC";
if (defined $bit) { # XXX Should we warn that this category isn't
# supported on this platform, or make it
# always be the C locale?
# Verify our assumption.
if (! ($bit >= 0 && $bit < 31)) {
require Carp;
Carp::croak("Cannot have ':$arg' parameter to 'use locale'"
. " on this platform. Use the 'perlbug' utility"
. " to report this problem, or send email to"
. " 'perlbug\@perl.org'. $LC=$bit");
}
# 1 is added so that the pseudo-category :characters, which is
# -1, comes out 0.
$^H{locale} |= 1 << ($bit + 1);
}
}
}
}
sub unimport {
$^H &= ~($locale::hint_bits | $locale::partial_hint_bits);
$^H{locale} = 0;
}
1;
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| App | Folder | 0755 |
|
|
| Archive | Folder | 0755 |
|
|
| Attribute | Folder | 0755 |
|
|
| B | Folder | 0755 |
|
|
| CPAN | Folder | 0755 |
|
|
| Carp | Folder | 0755 |
|
|
| Class | Folder | 0755 |
|
|
| Compress | Folder | 0755 |
|
|
| Config | Folder | 0755 |
|
|
| DBM_Filter | Folder | 0755 |
|
|
| Devel | Folder | 0755 |
|
|
| Digest | Folder | 0755 |
|
|
| Encode | Folder | 0755 |
|
|
| Exporter | Folder | 0755 |
|
|
| ExtUtils | Folder | 0755 |
|
|
| File | Folder | 0755 |
|
|
| Filter | Folder | 0755 |
|
|
| Getopt | Folder | 0755 |
|
|
| HTTP | Folder | 0755 |
|
|
| I18N | Folder | 0755 |
|
|
| IO | Folder | 0755 |
|
|
| IPC | Folder | 0755 |
|
|
| JSON | Folder | 0755 |
|
|
| Locale | Folder | 0755 |
|
|
| Math | Folder | 0755 |
|
|
| Memoize | Folder | 0755 |
|
|
| Module | Folder | 0755 |
|
|
| Net | Folder | 0755 |
|
|
| Params | Folder | 0755 |
|
|
| Parse | Folder | 0755 |
|
|
| Perl | Folder | 0755 |
|
|
| PerlIO | Folder | 0755 |
|
|
| Pod | Folder | 0755 |
|
|
| Search | Folder | 0755 |
|
|
| TAP | Folder | 0755 |
|
|
| Term | Folder | 0755 |
|
|
| Test | Folder | 0755 |
|
|
| Test2 | Folder | 0755 |
|
|
| Text | Folder | 0755 |
|
|
| Thread | Folder | 0755 |
|
|
| Tie | Folder | 0755 |
|
|
| Time | Folder | 0755 |
|
|
| Unicode | Folder | 0755 |
|
|
| User | Folder | 0755 |
|
|
| autodie | Folder | 0755 |
|
|
| encoding | Folder | 0755 |
|
|
| overload | Folder | 0755 |
|
|
| pod | Folder | 0755 |
|
|
| unicore | Folder | 0755 |
|
|
| version | Folder | 0755 |
|
|
| warnings | Folder | 0755 |
|
|
| AnyDBM_File.pm | File | 2.56 KB | 0644 |
|
| AutoLoader.pm | File | 15.43 KB | 0644 |
|
| AutoSplit.pm | File | 19.18 KB | 0644 |
|
| Benchmark.pm | File | 30.3 KB | 0644 |
|
| CORE.pod | File | 3.11 KB | 0644 |
|
| CPAN.pm | File | 144.5 KB | 0644 |
|
| Carp.pm | File | 35.15 KB | 0644 |
|
| DB.pm | File | 18.48 KB | 0644 |
|
| DBM_Filter.pm | File | 14.05 KB | 0644 |
|
| Digest.pm | File | 10.96 KB | 0644 |
|
| DirHandle.pm | File | 2.04 KB | 0644 |
|
| Dumpvalue.pm | File | 17.25 KB | 0644 |
|
| English.pm | File | 4.65 KB | 0644 |
|
| Env.pm | File | 5.44 KB | 0644 |
|
| Exporter.pm | File | 18.76 KB | 0644 |
|
| Fatal.pm | File | 59.19 KB | 0644 |
|
| FileCache.pm | File | 5.42 KB | 0644 |
|
| FileHandle.pm | File | 6.65 KB | 0644 |
|
| FindBin.pm | File | 4.69 KB | 0644 |
|
| Internals.pod | File | 2.87 KB | 0644 |
|
| Memoize.pm | File | 31.82 KB | 0644 |
|
| NEXT.pm | File | 18.54 KB | 0644 |
|
| PerlIO.pm | File | 13.92 KB | 0644 |
|
| Safe.pm | File | 24.8 KB | 0644 |
|
| SelectSaver.pm | File | 1.05 KB | 0644 |
|
| SelfLoader.pm | File | 17.27 KB | 0644 |
|
| Symbol.pm | File | 4.79 KB | 0644 |
|
| Test.pm | File | 29.34 KB | 0644 |
|
| Test2.pm | File | 6.25 KB | 0644 |
|
| Thread.pm | File | 8.09 KB | 0644 |
|
| UNIVERSAL.pm | File | 6.31 KB | 0644 |
|
| XSLoader.pm | File | 11.13 KB | 0644 |
|
| _charnames.pm | File | 34.84 KB | 0644 |
|
| autodie.pm | File | 12.11 KB | 0644 |
|
| autouse.pm | File | 4.14 KB | 0644 |
|
| base.pm | File | 10.7 KB | 0644 |
|
| bigfloat.pm | File | 21.38 KB | 0644 |
|
| bigint.pm | File | 22.63 KB | 0644 |
|
| bignum.pm | File | 27.48 KB | 0644 |
|
| bigrat.pm | File | 20.55 KB | 0644 |
|
| blib.pm | File | 2.01 KB | 0644 |
|
| builtin.pm | File | 12.86 KB | 0644 |
|
| bytes.pm | File | 3.77 KB | 0644 |
|
| charnames.pm | File | 20.56 KB | 0644 |
|
| constant.pm | File | 14.38 KB | 0644 |
|
| deprecate.pm | File | 4.92 KB | 0644 |
|
| diagnostics.pm | File | 18.89 KB | 0644 |
|
| dumpvar.pl | File | 15.19 KB | 0644 |
|
| experimental.pm | File | 8.72 KB | 0644 |
|
| feature.pm | File | 30.29 KB | 0644 |
|
| fields.pm | File | 9.24 KB | 0644 |
|
| filetest.pm | File | 3.91 KB | 0644 |
|
| if.pm | File | 3.55 KB | 0644 |
|
| integer.pm | File | 3.18 KB | 0644 |
|
| less.pm | File | 3.13 KB | 0644 |
|
| locale.pm | File | 5.03 KB | 0644 |
|
| meta_notation.pm | File | 2.02 KB | 0644 |
|
| ok.pm | File | 971 B | 0644 |
|
| open.pm | File | 8.3 KB | 0644 |
|
| overload.pm | File | 53.44 KB | 0644 |
|
| overloading.pm | File | 1.77 KB | 0644 |
|
| parent.pm | File | 2.64 KB | 0644 |
|
| perl5db.pl | File | 310.2 KB | 0644 |
|
| perlfaq.pm | File | 77 B | 0644 |
|
| sigtrap.pm | File | 8.53 KB | 0644 |
|
| sort.pm | File | 2.92 KB | 0644 |
|
| stable.pm | File | 4.75 KB | 0644 |
|
| strict.pm | File | 5.03 KB | 0644 |
|
| subs.pm | File | 945 B | 0644 |
|
| utf8.pm | File | 10.63 KB | 0644 |
|
| vars.pm | File | 2.4 KB | 0644 |
|
| version.pm | File | 1.93 KB | 0644 |
|
| version.pod | File | 9.6 KB | 0644 |
|
| vmsish.pm | File | 4.21 KB | 0644 |
|
| warnings.pm | File | 56.44 KB | 0644 |
|