#!perl -w package version; use 5.006002; use strict; use vars qw(@ISA $VERSION $CLASS $STRICT $LAX *declare *qv); $VERSION = 0.9907; $CLASS = 'version'; # !!!!Delete this next block completely when adding to Perl core!!!! { local $SIG{'__DIE__'}; eval "use version::vxs $VERSION"; if ( $@ ) { # don't have the XS version installed eval "use version::vpp $VERSION"; # don't tempt fate die "$@" if ( $@ ); push @ISA, "version::vpp"; local $^W; *version::qv = \&version::vpp::qv; *version::declare = \&version::vpp::declare; *version::_VERSION = \&version::vpp::_VERSION; *version::vcmp = \&version::vpp::vcmp; *version::new = \&version::vpp::new; if ($] >= 5.009000) { no strict 'refs'; *version::stringify = \&version::vpp::stringify; *{'version::(""'} = \&version::vpp::stringify; *{'version::(<=>'} = \&version::vpp::vcmp; *version::parse = \&version::vpp::parse; } } else { # use XS module push @ISA, "version::vxs"; local $^W; *version::declare = \&version::vxs::declare; *version::qv = \&version::vxs::qv; *version::_VERSION = \&version::vxs::_VERSION; *version::vcmp = \&version::vxs::VCMP; *version::new = \&version::vxs::new; if ($] >= 5.009000) { no strict 'refs'; *version::stringify = \&version::vxs::stringify; *{'version::(""'} = \&version::vxs::stringify; *{'version::(<=>'} = \&version::vxs::VCMP; *version::parse = \&version::vxs::parse; } } } # avoid using Exporter require version::regex; *version::is_lax = \&version::regex::is_lax; *version::is_strict = \&version::regex::is_strict; *LAX = \$version::regex::LAX; *STRICT = \$version::regex::STRICT; sub import { no strict 'refs'; my ($class) = shift; # Set up any derived class unless ($class eq $CLASS) { local $^W; *{$class.'::declare'} = \&{$CLASS.'::declare'}; *{$class.'::qv'} = \&{$CLASS.'::qv'}; } my %args; if (@_) { # any remaining terms are arguments map { $args{$_} = 1 } @_ } else { # no parameters at all on use line %args = ( qv => 1, 'UNIVERSAL::VERSION' => 1, ); } my $callpkg = caller(); if (exists($args{declare})) { *{$callpkg.'::declare'} = sub {return $class->declare(shift) } unless defined(&{$callpkg.'::declare'}); } if (exists($args{qv})) { *{$callpkg.'::qv'} = sub {return $class->qv(shift) } unless defined(&{$callpkg.'::qv'}); } if (exists($args{'UNIVERSAL::VERSION'})) { local $^W; *UNIVERSAL::VERSION = \&{$CLASS.'::_VERSION'}; } if (exists($args{'VERSION'})) { *{$callpkg.'::VERSION'} = \&{$CLASS.'::_VERSION'}; } if (exists($args{'is_strict'})) { *{$callpkg.'::is_strict'} = \&{$CLASS.'::is_strict'} unless defined(&{$callpkg.'::is_strict'}); } if (exists($args{'is_lax'})) { *{$callpkg.'::is_lax'} = \&{$CLASS.'::is_lax'} unless defined(&{$callpkg.'::is_lax'}); } } 1;
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
Bundle | Folder | 0755 |
|
|
Compress | Folder | 0755 |
|
|
Crypt | Folder | 0755 |
|
|
DBD | Folder | 0755 |
|
|
DBI | Folder | 0755 |
|
|
Data | Folder | 0755 |
|
|
Digest | Folder | 0755 |
|
|
Encode | Folder | 0755 |
|
|
File | Folder | 0755 |
|
|
Filter | Folder | 0755 |
|
|
HTML | Folder | 0755 |
|
|
IO | Folder | 0755 |
|
|
JSON | Folder | 0755 |
|
|
List | Folder | 0755 |
|
|
Net | Folder | 0755 |
|
|
Readonly | Folder | 0755 |
|
|
Scalar | Folder | 0755 |
|
|
Sys | Folder | 0755 |
|
|
Term | Folder | 0755 |
|
|
Text | Folder | 0755 |
|
|
Time | Folder | 0755 |
|
|
Unicode | Folder | 0755 |
|
|
YAML | Folder | 0755 |
|
|
auto | Folder | 0755 |
|
|
threads | Folder | 0755 |
|
|
version | Folder | 0755 |
|
|
Cwd.pm | File | 21.25 KB | 0644 |
|
DBI.pm | File | 304.17 KB | 0644 |
|
DB_File.pm | File | 62.24 KB | 0644 |
|
Encode.pm | File | 32.17 KB | 0644 |
|
FCGI.pm | File | 7.36 KB | 0644 |
|
Socket.pm | File | 35.47 KB | 0644 |
|
Socket6.pm | File | 9.57 KB | 0644 |
|
Storable.pm | File | 42.12 KB | 0644 |
|
dbixs_rev.pl | File | 1.51 KB | 0755 |
|
encoding.pm | File | 20.04 KB | 0644 |
|
threads.pm | File | 34.48 KB | 0644 |
|
version.pm | File | 2.85 KB | 0644 |
|
version.pod | File | 9.6 KB | 0644 |
|