view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
#####################################################################
# Common Utility Functions
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
sub _read {
view all matches for this distribution
view release on metacpan or search on metacpan
local/lib/perl5/Devel/GlobalPhase.pm view on Meta::CPAN
# END blocks are FILO so we can't install one to run first.
# only way to detect END reliably seems to be by using caller.
# I hate this but it seems to be the best available option.
# The top two frames will be an eval and the END block.
my $i = 0;
$i++ while defined CORE::caller($i + 1);
if ($i < 1) {
# there should always be the sub call and an eval frame ($^S is true).
# this will only happen if we're in END, but the outer frames are broken.
$global_phase = 'END';
}
elsif ($i > 1) {
my $top = CORE::caller($i);
my $next = CORE::caller($i - 1);
if (!$top || !$next) {
$global_phase = 'END';
}
elsif ($top eq 'main' && $next eq 'main') {
# If we're ENDing due to an exit or die in a sub generated in an eval,
# these caller calls can cause a segfault. I can't find a way to detect
# this.
my @top = CORE::caller($i);
my @next = CORE::caller($i - 1);
if (
$top[3] eq '(eval)'
&& $next[3] =~ /::END$/
&& $top[2] == $next[2]
&& $top[1] eq $next[1]
local/lib/perl5/Devel/GlobalPhase.pm view on Meta::CPAN
package # hide
Devel::GlobalPhase::_Tie;
sub TIESCALAR { bless \(my $s), $_[0]; }
sub STORE {
die sprintf "Modification of a read-only value attempted at %s line %s.\n", (caller(0))[1,2];
}
sub FETCH {
return undef
if caller eq 'Devel::GlobalDestruction';
Devel::GlobalPhase::global_phase;
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/SimpleScan/Plugin/Cache.pm view on Meta::CPAN
use strict;
use Carp;
sub pragmas {
no strict 'refs';
*{caller() . '::_cache'} = \&_do_cache;
*{caller() . '::_nocache'} = \&_do_nocache;
return ['cache', \&_do_cache],
['nocache', \&_do_nocache];
}
sub _do_nocache {
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/SimpleScan/Plugin/Forget.pm view on Meta::CPAN
use strict;
use Carp;
sub pragmas {
no strict 'refs';
*{ caller() . '::_forget' } = \&_do_forget;
return [ 'forget', \&_do_forget ];
}
sub _do_forget {
my ( $self, $rest ) = @_;
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/SimpleScan/Plugin/LinkCheck.pm view on Meta::CPAN
use Scalar::Util qw(looks_like_number);
use Text::Balanced qw(extract_quotelike extract_multiple);
sub import {
no strict 'refs';
*{caller() . '::_do_has_link'} = \&_do_has_link;
*{caller() . '::_do_no_link'} = \&_do_no_link;
*{caller() . '::link_condition'} = \&link_condition;
*{caller() . '::_link_conditions'} = \&_link_conditions;
*{caller() . '::_add_link_condition'} = \&_add_link_condition;
*{caller() . '::_extract_quotelike_args'} =
\&_extract_quotelike_args;
}
sub pragmas {
return ['has_link', \&_do_has_link],
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/SimpleScan/Plugin/Plaintext.pm view on Meta::CPAN
__PACKAGE__->mk_accessors( qw(plaintext) );
# Module implementation here
sub import {
no strict 'refs';
*{caller() . '::plaintext'} = \&plaintext;
}
sub pragmas {
return (['plaintext' => \&plaintext_pragma],
);
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/SimpleScan/Plugin/Retry.pm view on Meta::CPAN
my ($retry);
sub import {
no strict 'refs';
*{caller() . '::retry'} = \&retry;
}
sub retry {
my($self, $value) = @_;
$retry = $value if defined $value;
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/SimpleScan/Plugin/Snapshot.pm view on Meta::CPAN
my($snapdir, $snapshot, $snap_prefix, $snap_layout);
sub import {
no strict 'refs';
*{caller() . '::snapshot'} = \&snapshot;
*{caller() . '::snapshots_to'} = \&snapshots_to;
*{caller() . '::snap_prefix'} = \&snap_prefix;
*{caller() . '::snap_layout'} = \&snap_layout;
}
sub snapshot {
my($self, $value) = @_;
$snapshot = $value if defined $value;
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/SimpleScan.pm view on Meta::CPAN
contents of the object. This allows plugins to export methods
to the base class, or to add instance variables dynamically.
Note that the class passed in to this method is the class
of the I<plugin>, not of the caller (C<App::SimpleScan>
or a derived class). You should use C<caller()> if you wish
to export subroutines into the package corresponding to the
base class object.
=head3 pragmas
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/SimulateReads/CLI/App.pm view on Meta::CPAN
);
sub _build_app_path {
# Determine dynamic the app path that inherit from this class
# If no one is inheriting, return this class path
my $class = (caller(1))[3];
$class =~ s/::new//;
my $command_pm = file(split /::/ => "$class.pm");
return $INC{$command_pm};
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Skeletor.pm view on Meta::CPAN
print "Don't know want $path is!";
}
}, {recurse=>1});
}
caller(1) ? 1 : run(@ARGV);
=head1 NAME
App::Skeletor - Bootstrap a new project from a shared template
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/SlowQuitApps.pm view on Meta::CPAN
# Export API...
sub import {
for my $subname (qw< delay slowquit fastquit >) {
no strict 'refs';
*{caller().'::'.$subname} = \&{$subname};
}
}
# Set delay...
sub delay {
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
#####################################################################
# Utility Functions
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
sub _read {
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
#####################################################################
# Common Utility Functions
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
# Done in evals to avoid confusing Perl::MinimumVersion
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
#####################################################################
# Utility Functions
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
sub _read {
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/SpreadsheetUtils.pm view on Meta::CPAN
}
} # CREATE_META
{
my $package = caller();
no strict 'refs'; ## no critic: TestingAndDebugging::ProhibitNoStrict
*{"$package\::$name"} = $code;
#use DD; dd $meta;
${"$package\::SPEC"}{$name} = $meta;
}
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/AutoInstall.pm view on Meta::CPAN
chdir $cwd;
# import to main::
no strict 'refs';
*{'main::WriteMakefile'} = \&Write if caller(0) eq 'main';
}
# Check to see if we are currently running under CPAN.pm and/or CPANPLUS;
# if we are, then we simply let it taking care of our dependencies
sub _check_lock {
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/AutoInstall.pm view on Meta::CPAN
chdir $cwd;
# import to main::
no strict 'refs';
*{'main::WriteMakefile'} = \&Write if caller(0) eq 'main';
return (@Existing, @Missing);
}
sub _running_under {
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
#####################################################################
# Common Utility Functions
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
sub _read {
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
#####################################################################
# Utility Functions
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
sub _read {
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
#####################################################################
# Common Utility Functions
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
# Done in evals to avoid confusing Perl::MinimumVersion
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
#####################################################################
# Common Utility Functions
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
# Done in evals to avoid confusing Perl::MinimumVersion
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Task.pm view on Meta::CPAN
*Text::OutputFilter::PRINT = sub { $of_print->(@_); return 1 };
}
sub import {
no strict 'refs'; ## no critic
*{ caller() . '::task' } = \&task;
}
our $depth = 0;
our $level = 0;
our $steps = {};
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/AutoInstall.pm view on Meta::CPAN
chdir $cwd;
# import to main::
no strict 'refs';
*{'main::WriteMakefile'} = \&Write if caller(0) eq 'main';
return (@Existing, @Missing);
}
sub _running_under {
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
@found;
}
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
1;
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
@found;
}
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
1;
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
@found;
}
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
1;
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
@found;
}
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
1;
view all matches for this distribution
view release on metacpan or search on metacpan
sub jump_test
{
my (%setup_arguments) = @_ ;
$setup_arguments{caller} = join(':', @{[caller()]}[1 .. 2]) ;
$setup_arguments{name} =~ s/ +/_/g ;
if(exists $setup_arguments{directories_and_db})
{
@setup_arguments{'temporary_directory_structure', 'db_start'} = get_directories_and_db($setup_arguments{directories_and_db}) ;
view all matches for this distribution