Attribute-Cached

 view release on metacpan or  search on metacpan

bench/attr_bench.pl  view on Meta::CPAN

use strict; use warnings;
use Data::Dumper;

use Attribute::Cached;
use constant CACHETIME => 20;

use Cache::MemoryCache;
my %caches;

sub getCache {
    my (undef, undef, undef, $method) = caller(2);
    return $caches{$method} ||= do {
         warn "Getting cache $method";
         Cache::MemoryCache->new({namespace=>$method});
        };
}
sub getCacheKey {
    return join ',' => @_;
}
sub customCacheKey {
    return join ':' => @_;

inc/Module/AutoInstall.pm  view on Meta::CPAN

        # make an educated guess of whether we'll need root permission.
        print "    (You may need to do that as the 'root' user.)\n"
          if eval '$>';
    }
    print "*** $class configuration finished.\n";

    chdir $cwd;

    # import to main::
    no strict 'refs';
    *{'main::WriteMakefile'} = \&Write if caller(0) eq 'main';
}

sub _running_under {
    my $thing = shift;
    print <<"END_MESSAGE";
*** Since we're running under ${thing}, I'll just let it take care
    of the dependency's installation later.
END_MESSAGE
    return 1;
}

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 {
	local *FH;
	if ( $] >= 5.006 ) {
		open( FH, '<', $_[0] ) or die "open($_[0]): $!";
	} else {
		open( FH, "< $_[0]"  ) or die "open($_[0]): $!";

inc/Module/Install/Makefile.pm  view on Meta::CPAN

}

sub Makefile { $_[0] }

my %seen = ();

sub prompt {
	shift;

	# Infinite loop protection
	my @c = caller();
	if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
		die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
	}

	# In automated testing, always use defaults
	if ( $ENV{AUTOMATED_TESTING} and ! $ENV{PERL_MM_USE_DEFAULT} ) {
		local $ENV{PERL_MM_USE_DEFAULT} = 1;
		goto &ExtUtils::MakeMaker::prompt;
	} else {
		goto &ExtUtils::MakeMaker::prompt;

t/01_cacheset.t  view on Meta::CPAN

    $self->{time}{$key} = $time;
}

package main;

my %caches;

sub getCache {
    my $method = $_[1];
    if (!$method) {
        my $method_name = (caller(2))[3];
        $method_name=~/\((.*?)\)/;
        $method = $1;
    }
    return $caches{$method} ||= do {
         diag "Getting cache $method";
         Cache::MockCache->new({namespace=>$method});
        };
}
sub getCacheKey {
    return join ',' => @_;



( run in 0.267 second using v1.01-cache-2.11-cpan-a9ef4e587e4 )