xref: /openbsd-src/gnu/usr.bin/perl/lib/locale.pm (revision b2ea75c1b17e1a9a339660e7ed45cd24946b230e)
1package locale;
2
3=head1 NAME
4
5locale - Perl pragma to use and avoid POSIX locales for built-in operations
6
7=head1 SYNOPSIS
8
9    @x = sort @y;	# ASCII sorting order
10    {
11        use locale;
12        @x = sort @y;   # Locale-defined sorting order
13    }
14    @x = sort @y;	# ASCII sorting order again
15
16=head1 DESCRIPTION
17
18This pragma tells the compiler to enable (or disable) the use of POSIX
19locales for built-in operations (LC_CTYPE for regular expressions, and
20LC_COLLATE for string comparison).  Each "use locale" or "no locale"
21affects statements to the end of the enclosing BLOCK.
22
23See L<perllocale> for more detailed information on how Perl supports
24locales.
25
26=cut
27
28$locale::hint_bits = 0x800;
29
30sub import {
31    $^H |= $locale::hint_bits;
32}
33
34sub unimport {
35    $^H &= ~$locale::hint_bits;
36}
37
381;
39