/usr/share/perl5/Package/Pkg/Loader.pm is in libpackage-pkg-perl 0.0020-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | package Package::Pkg::Loader;
use strict;
use warnings;
use Mouse;
use Package::Pkg;
has namespacelist => qw/ is ro required 1 isa ArrayRef /;
has alias => qw/ is ro lazy_build 1 isa HashRef /;
sub _build_alias { {} }
sub load {
my $self = shift;
my $moniker = @_ > 1 ? Package::Pkg->name( @_ ) : $_[0];
my $package = $self->softload( $moniker );
unless ( $package ) {
my @namespacelist = @{ $self->namespacelist };
confess "Unable to load package ($moniker) under any namespace (@namespacelist)";
}
return $package;
}
sub softload {
my $self = shift;
my $moniker = @_ > 1 ? Package::Pkg->name( @_ ) : $_[0];
my @namespacelist = @{ $self->namespacelist };
for my $namespace (@namespacelist) {
if ( my $package = Package::Pkg->softload( $namespace, $moniker ) ) {
return $package;
}
}
return;
}
1;
|