| Server IP : 180.180.241.3 / Your IP : 216.73.216.216 Web Server : Microsoft-IIS/7.5 System : Windows NT NETWORK-NHRC 6.1 build 7601 (Windows Server 2008 R2 Standard Edition Service Pack 1) i586 User : IUSR ( 0) PHP Version : 5.3.28 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/Program Files (x86)/Git/lib/perl5/5.8.8/msys/B/ |
Upload File : |
# Stash.pm -- show what stashes are loaded
# vishalb@hotmail.com
package B::Stash;
our $VERSION = '1.00';
=pod
=head1 NAME
B::Stash - show what stashes are loaded
=cut
BEGIN { %Seen = %INC }
CHECK {
my @arr=scan($main::{"main::"});
@arr=map{s/\:\:$//;$_ eq "<none>"?():$_;} @arr;
print "-umain,-u", join (",-u",@arr) ,"\n";
}
sub scan{
my $start=shift;
my $prefix=shift;
$prefix = '' unless defined $prefix;
my @return;
foreach my $key ( keys %{$start}){
# print $prefix,$key,"\n";
if ($key =~ /::$/){
unless ($start eq ${$start}{$key} or $key eq "B::" ){
push @return, $key unless omit($prefix.$key);
foreach my $subscan ( scan(${$start}{$key},$prefix.$key)){
push @return, "$key".$subscan;
}
}
}
}
return @return;
}
sub omit{
my $module = shift;
my %omit=("DynaLoader::" => 1 , "XSLoader::" => 1, "CORE::" => 1 ,
"CORE::GLOBAL::" => 1, "UNIVERSAL::" => 1 );
return 1 if $omit{$module};
if ($module eq "IO::" or $module eq "IO::Handle::"){
$module =~ s/::/\//g;
return 1 unless $INC{$module};
}
return 0;
}
1;