diff options
Diffstat (limited to 'beagle/debian-rfs/usr/share/perl/5.10.1/strict.pm')
| -rw-r--r-- | beagle/debian-rfs/usr/share/perl/5.10.1/strict.pm | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/beagle/debian-rfs/usr/share/perl/5.10.1/strict.pm b/beagle/debian-rfs/usr/share/perl/5.10.1/strict.pm new file mode 100644 index 0000000..7928712 --- /dev/null +++ b/beagle/debian-rfs/usr/share/perl/5.10.1/strict.pm @@ -0,0 +1,46 @@ +package strict; + +$strict::VERSION = "1.04"; + +# Verify that we're called correctly so that strictures will work. +unless ( __FILE__ =~ /(^|[\/\\])\Q${\__PACKAGE__}\E\.pmc?$/ ) { + # Can't use Carp, since Carp uses us! + my (undef, $f, $l) = caller; + die("Incorrect use of pragma '${\__PACKAGE__}' at $f line $l.\n"); +} + +my %bitmask = ( +refs => 0x00000002, +subs => 0x00000200, +vars => 0x00000400 +); + +sub bits { + my $bits = 0; + my @wrong; + foreach my $s (@_) { + push @wrong, $s unless exists $bitmask{$s}; + $bits |= $bitmask{$s} || 0; + } + if (@wrong) { + require Carp; + Carp::croak("Unknown 'strict' tag(s) '@wrong'"); + } + $bits; +} + +my $default_bits = bits(qw(refs subs vars)); + +sub import { + shift; + $^H |= @_ ? bits(@_) : $default_bits; +} + +sub unimport { + shift; + $^H &= ~ (@_ ? bits(@_) : $default_bits); +} + +1; +__END__ + |
