Result:
found 243 distributions and 872 files matching your query ! ( run in 0.585 )


Acme-3mxA

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

- Unfortunately search.cpan.org has totally broken Unicode in package names, so
  reluctantly renaming distro from Acme::ǝmɔA to the really awful Acme::3mxA.

1337.1
- Before perl 5.8.9 you helpfully get a "Unknown error" when compiling, require 5.8.9.
- Add configure_requires for PadWalker too.

1337
- Initial version

 view all matches for this distribution


Acme-Lexical-Thief

 view release on metacpan or  search on metacpan

lib/Acme/Lexical/Thief.pm  view on Meta::CPAN

	$Acme::Lexical::Thief::VERSION   = '0.002';
}

use Carp;
use Keyword::Simple ();
use PadWalker ();
use Text::Balanced ();

my $KEYWORD = 'steal';
my $CLASS   = __PACKAGE__;

lib/Acme/Lexical/Thief.pm  view on Meta::CPAN

	my $depth = shift // 0;
	
	$vars =~ s/(^\s*|\s*$)//g;
	my @vars = split /\s*,\s*/, $vars;
	
	my $MY  = PadWalker::peek_my($depth + 2);
	my $OUR = PadWalker::peek_our($depth + 2);
	return map {
		exists $MY->{$_}  ? $MY->{$_} :
		exists $OUR->{$_} ? $OUR->{$_} :
		croak "$KEYWORD($_) failed; caller has no $_ defined";
	} @vars;

lib/Acme/Lexical/Thief.pm  view on Meta::CPAN

Please report any bugs to
L<http://rt.cpan.org/Dist/Display.html?Queue=Acme-Lexical-Thief>.

=head1 SEE ALSO

L<PadWalker> - a slightly more sane alternative to peeking at your caller's
lexicals.

L<Data::Alias> - a slightly more sane way of creating lexical aliases.

This package was initially published on PerlMonks as C<Acme::Asplode>

 view all matches for this distribution


Acme-Locals

 view release on metacpan or  search on metacpan

lib/Acme/Locals.pm  view on Meta::CPAN

use warnings;
use version; our $VERSION = qv('0.1.1');
use 5.00600;

use Carp            qw(carp croak);
use PadWalker       ();
use Params::Util    qw(_SCALAR _ARRAY);

BEGIN {
    use English qw(-no_match_vars);
    my $find_best_say = sub {

lib/Acme/Locals.pm  view on Meta::CPAN


    my $mode = $mode_for_class{$call_class} || $DEFAULT_MODE;
    my $re   = $MODES{ $mode };

    if ($mode eq '-ruby' && !scalar keys %bind_vars) {
        %bind_vars = %{ PadWalker::peek_my($peek_level) };
    }
    
    $fmt =~ s/$re/$map_bind_var->($1, $2)/xmseg;

    return sprintf $fmt, @binds;

lib/Acme/Locals.pm  view on Meta::CPAN

sub lexicals {
    goto &locals;
}

sub locals {
    return wantarray ? %{ PadWalker::peek_my(1) }
                     :    PadWalker::peek_my(1);
}

sub globals {
    return wantarray ? %{ PadWalker::peek_our(1) }
                     :    PadWalker::peek_our(1);
}

1;

__END__

lib/Acme/Locals.pm  view on Meta::CPAN

sprintf like python/ruby.

=== {locals()}

Return a hash of all lexical variables in the current scope. (Using
PadWalker).

=== {globals()}

Return a hash of all global variables. (Using PadWalker).

=== {lexicals()}

Alias to {locals()}

lib/Acme/Locals.pm  view on Meta::CPAN


= DEPENDENCIES

* [version]

* [PadWalker]

* [Params::Util]

= INCOMPATIBILITIES

 view all matches for this distribution


Acme-Octarine

 view release on metacpan or  search on metacpan

Octarine.pm  view on Meta::CPAN


# I need some hooks in Acme::Colour's constructor. But as we all know cut and
# paste is bad. So we are good and don't do that:

use B::Deparse;
use PadWalker 'closed_over';

# Frustratingly, he uses a package lexical %r, which foils a simple re-eval of
# the deparsed method code.
my $deparse = B::Deparse->new("-sC");
my $body = $deparse->coderef2text(\&Acme::Colour::new);

 view all matches for this distribution


Acme-RPC

 view release on metacpan or  search on metacpan

lib/Acme/RPC.pm  view on Meta::CPAN

use IO::Handle;
# use Devel::Pointer;
use JSON;
use Data::Dumper;
use Devel::Caller 'caller_cv';
use PadWalker 'peek_sub';
use Scalar::Util 'blessed';

my $comment = <<'EOF';

Todo:

lib/Acme/RPC.pm  view on Meta::CPAN

* json will croak if a reference contains objects in side it somewhere.  Should handle this gracefully.

* Offer JSON output!  Not just Data::Dumper.  Do this for action=dump, action=call, and the default tree view.

* If Devel::Leak won't give us refs... have to do an Acme::State style crawl from main::, 
  but crawling into each sub and looking at its lexicals with PadWalker.
  Could make for a nice tree view.
  Would also make it easy to filter out the variables that hold refs.

* Maybe this should be called Acme::RPC.

 view all matches for this distribution


Acme-RightSideOutObject

 view release on metacpan or  search on metacpan

lib/Acme/RightSideOutObject.pm  view on Meta::CPAN


use strict; no strict 'refs';
use warnings;

use Data::Alias;
use PadWalker;
use B;
use Scalar::Util;

sub import {
    *{caller().'::guts'} = sub {

lib/Acme/RightSideOutObject.pm  view on Meta::CPAN

            my $code = *{$class.'::'.$sym}{CODE} or next;
            my $op = B::svref_2object($code) or next;
            my $rootop = $op->ROOT or next;
            $$rootop or next; # not XS
            $op->STASH->NAME eq $class or next; # not imported
            my $vars = PadWalker::peek_sub($code) or next; # don't know why this would fail but when it does, I think it dies
            for my $var (keys %$vars) {
                next unless $var =~ m/^\%/;
                next unless exists $vars->{$var};
                next unless exists $vars->{$var}->{$id};
                $debug and warn "  ... $var is $vars->{$var}->{$id}\n";

 view all matches for this distribution


Acme-Sort-Sleep

 view release on metacpan or  search on metacpan

local/lib/perl5/Sub/Uplevel.pm  view on Meta::CPAN

#pod
#pod See http://www.perl.com/perl/misc/Artistic.html
#pod
#pod =head1 SEE ALSO
#pod
#pod PadWalker (for the similar idea with lexicals), Hook::LexWrap, 
#pod Tcl's uplevel() at http://www.scriptics.com/man/tcl8.4/TclCmd/uplevel.htm
#pod
#pod =cut

1;

local/lib/perl5/Sub/Uplevel.pm  view on Meta::CPAN


See http://www.perl.com/perl/misc/Artistic.html

=head1 SEE ALSO

PadWalker (for the similar idea with lexicals), Hook::LexWrap, 
Tcl's uplevel() at http://www.scriptics.com/man/tcl8.4/TclCmd/uplevel.htm

=for :stopwords cpan testmatrix url annocpan anno bugtracker rt cpants kwalitee diff irc mailto metadata placeholders metacpan

=head1 SUPPORT

 view all matches for this distribution


Amazon-DynamoDB-Simple

 view release on metacpan or  search on metacpan

cpanfile.snapshot  view on Meta::CPAN

      Data::Alias 0
      Exporter::Tiny 0.026
      ExtUtils::MakeMaker 6.17
      Module::Runtime 0
      Moo 1.003001
      PadWalker 0
      Parse::Keyword 0.06
      Return::Type 0.004
      Sub::Util 0
      Type::Parser 0.032
      Type::Registry 0.032

cpanfile.snapshot  view on Meta::CPAN

    requirements:
      ExtUtils::MakeMaker 6.30
      XSLoader 0
      strict 0
      warnings 0
  PadWalker-1.98
    pathname: R/RO/ROBIN/PadWalker-1.98.tar.gz
    provides:
      PadWalker 1.98
    requirements:
      ExtUtils::MakeMaker 0
      perl 5.008001
  Params-Util-1.07
    pathname: A/AD/ADAMK/Params-Util-1.07.tar.gz

 view all matches for this distribution


Amb

 view release on metacpan or  search on metacpan

Amb.pm  view on Meta::CPAN


bootstrap Amb $VERSION;

use B::Generate 1.13; 
use Carp qw(confess croak);
use PadWalker;

BEGIN { *CORE::GLOBAL::die = \&dier } ;

my (%patched, %cv, @stack, $charged, $debug);
$debug = $ENV{AMB_DEBUG}||0;

Amb.pm  view on Meta::CPAN


sub find_ctx
{
	# get the COP that is right before the call of amb()
	my $what = shift;
	my $up  = PadWalker::_upcontext(1);
	fail $what unless $up;
	my $op  = Amb::caller_op($up);
	fail $what unless $op and ref($op) eq 'B::COP';

	# ensure that the call is inside if(...) statement

Amb.pm  view on Meta::CPAN

	fail $what unless $x and ref($x) eq 'B::UNOP';
	$x = $x-> first;
	fail $what unless $x and ref($x) eq 'B::LOGOP' and $x-> name =~ /^(cond_expr|and)$/;

	# get the cv frame that has called
	my $upper = PadWalker::_upcontext(2);
	my $cx;
	if ( $upper) {
		$cx = Amb::context_cv($upper);
		fail $what unless $cx and ref($cx) eq 'CODE';
	}

 view all matches for this distribution


AnyEvent-ProcessPool

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

0.07 2017-12-01
- Use common::sense
- Use DumpLex and PadWalker to include as much closing state as possible in
  serialized task code
- Fix typo in AnyEvent::ProcessPool::Util::cpu_count and add android to linux
  case

0.06 2017-11-13

 view all matches for this distribution


App-BS

 view release on metacpan or  search on metacpan

lib/BS/Common.pm  view on Meta::CPAN

const our $DEBUG   => ( any { $_ } @ENV{qw(BS_DEBUG DEBUG)} ) || 0;
const our $TRIM_RE => qr/\s*(.+)\s*\n*/i;

eval {
    use Devel::StackTrace::WithLexicals;
    use PadWalker qw(peek_my peek_our);
    use Module::Metadata;
} if $DEBUG;

my class BsxResult {
    use utf8;

 view all matches for this distribution


App-Cheats

 view release on metacpan or  search on metacpan

cheats.txt  view on Meta::CPAN

# Perl Modules - overload example code.
pod Set::Scalar::Base -e


#############################################################
## Perl Modules - PadWalker
#############################################################

# View the lexical variables in a scope.
perl -MPadWalker=peek_my -Mojo -E 'my $var=123; say r peek_my(0)'
{
  "\$var" => \123
}

# Call a method of an object obtained from peek_my
perl -MDevel::Peek -MPadWalker=peek_my -Mojo -E '{ package My; sub Func {"My-Func"} } my $var =  bless {}, "My"; my $obj_ref = peek_my(0)->{q($var)}; Dump $var; Dump $obj_ref; say $$obj_ref->Func'

# Update a lexical variable in a different scope.
my $lexicals = peek_my(1);
$lexicals->{'@arr'}->[1] = 4;


#############################################################
## Perl Modules - PadWalker::Eval
#############################################################

# Idea for a new module to run eval at a specific scope.
perl -E 'my $v=1; {package My; my $v=2; sub run_code { my ($code) = @_; my $v=3; eval $code }} my $v=4, say My::run_code(q($v))'

# PadWalker::Eval ideas.
sub eval ($string, $scope_level=0)


#############################################################
## Perl Modules - Parallel::ForkManager

 view all matches for this distribution


App-Koyomi

 view release on metacpan or  search on metacpan

cpanfile.snapshot  view on Meta::CPAN

    requirements:
      ExtUtils::MakeMaker 6.30
      XSLoader 0
      strict 0
      warnings 0
  PadWalker-2.1
    pathname: R/RO/ROBIN/PadWalker-2.1.tar.gz
    provides:
      PadWalker 2.1
    requirements:
      ExtUtils::MakeMaker 0
      perl 5.008001
  Params-Util-1.07
    pathname: A/AD/ADAMK/Params-Util-1.07.tar.gz

cpanfile.snapshot  view on Meta::CPAN

      Exporter 5.63
      ExtUtils::CBuilder 0
      Module::Build 0.38
      Mouse 0.92
      Mouse::Util::TypeConstraints 0
      PadWalker 1.92
      Scalar::Util 1.21
      perl 5.008001
  Spiffy-0.46
    pathname: I/IN/INGY/Spiffy-0.46.tar.gz
    provides:

 view all matches for this distribution


App-MultiModule

 view release on metacpan or  search on metacpan

lib/App/MultiModule/Tasks/OutOfBand.pm  view on Meta::CPAN

$App::MultiModule::Tasks::OutOfBand::VERSION = '1.171870';
use strict;use warnings;
use Storable;
use Message::Match qw(mmatch);
use IPC::Transit;
use PadWalker qw(peek_my);

$Storable::Deparse = 1;
$Storable::Deparse = 1;
$Storable::Eval = 1;
$Storable::Eval = 1;

 view all matches for this distribution


App-Prima-REPL

 view release on metacpan or  search on metacpan

lib/PrimaX/InputHistory.pm  view on Meta::CPAN

#
# If the event is properly handled by one of the hooks, the hook should call the
# clear_event() method on this object.
{
	# Keep the notifications hash in its own lexically scoped block so that
	# other's can't mess with it (at least, not without using PadWalker or some
	# such).
	my %notifications = (
		%{Prima::InputLine-> notification_types()},
		PressEnter => nt::Request,
		Evaluate => nt::Action,

 view all matches for this distribution


App-REPL

 view release on metacpan or  search on metacpan

lib/App/REPL.pm  view on Meta::CPAN

package App::REPL;
use warnings;
use strict;
use Data::Dumper;
use PadWalker 'peek_my';
use Term::ANSIColor ':constants';
$Term::ANSIColor::AUTORESET = 1;
require Exporter;
use vars qw(@ISA @EXPORT $VERSION);

 view all matches for this distribution


App-RetroPAN

 view release on metacpan or  search on metacpan

t/retropan.t  view on Meta::CPAN

            MSCHILLI/LWP-Protocol-https-6.06
            RJBS/CPAN-Uploader-0.103007
            ETHER/Dist-Zilla-Plugin-Test-Compile-2.051
            ETHER/Dist-Zilla-Plugin-Keywords-0.006
            ETHER/Module-Runtime-Conflicts-0.001
            ROBIN/PadWalker-2.0
            RCLAMP/Devel-Caller-2.06
            RCLAMP/Devel-LexAlias-0.05
            SHANCOCK/Perl-Tidy-20140711
            DOY/Eval-Closure-0.11
            RJBS/Config-MVP-Reader-INI-2.101463

 view all matches for this distribution


App-Sqitch

 view release on metacpan or  search on metacpan

inc/Menlo/Sqitch.pm  view on Meta::CPAN

        Moo
        MooX-Types-MooseLike
        MySQL-Config
        Package-Stash
        Package-Stash-XS
        PadWalker
        Params-ValidationCompiler
        Path-Class
        Ref-Util
        Ref-Util-XS
        Regexp-Util

 view all matches for this distribution


Art-World

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

            "DBI" : "== 1.643",
            "Data::Printer" : "== 1.000004",
            "Faker" : "== 1.04",
            "Math::Round" : "== 0.07",
            "Moo" : "== 2.005004",
            "PadWalker" : "== 2.5",
            "Teng" : "== 0.32",
            "Time::Moment" : "== 0.44",
            "Try::Tiny" : "== 0.30",
            "Type::Tiny" : "== 1.012001",
            "Type::Tiny::XS" : "== 0.022",

 view all matches for this distribution


B-C

 view release on metacpan or  search on metacpan

t/mymodules  view on Meta::CPAN

Net::SSLeay
Net::Telnet
Number::Compare
PAR::Dist
PPI
PadWalker
Params::Util
Params::Validate
Parse::RecDescent
Path::Class
Perl::Critic

 view all matches for this distribution


Binding

 view release on metacpan or  search on metacpan

lib/Binding.pm  view on Meta::CPAN

package Binding;

use warnings;
use strict;
use PadWalker qw(peek_my peek_our peek_sub closed_over);
use Devel::Caller qw(caller_cv);
use Data::Dump qw(pp);

use 5.008;

lib/Binding.pm  view on Meta::CPAN

Returns all variables declared with "my" in the given binding.

Returns a hashref, which keys are variable names and values are
references to variable values.

See C<peek_my> function in L<PadWalker>.

=item our_vars

Returns all variables declared with "our" that's visible in the given
binding.

Returns a hashref, which keys are variable names and values are
references to variable values.

See C<peek_our> function in L<PadWalker>.

=back

=head1 DEPENDENCIES

L<PadWalker>, L<Data::Dump>, L<Devel::Caller>


=head1 BUGS AND LIMITATIONS

No bugs have been reported.

 view all matches for this distribution


BioPerl-DB

 view release on metacpan or  search on metacpan

t/lib/Sub/Uplevel.pm  view on Meta::CPAN

See http://www.perl.com/perl/misc/Artistic.html


=head1 SEE ALSO

PadWalker (for the similar idea with lexicals), Hook::LexWrap, 
Tcl's uplevel() at http://www.scriptics.com/man/tcl8.4/TclCmd/uplevel.htm

=cut


 view all matches for this distribution


BioPerl-Network

 view release on metacpan or  search on metacpan

t/lib/Sub/Uplevel.pm  view on Meta::CPAN

See http://www.perl.com/perl/misc/Artistic.html


=head1 SEE ALSO

PadWalker (for the similar idea with lexicals), Hook::LexWrap, 
Tcl's uplevel() at http://www.scriptics.com/man/tcl8.4/TclCmd/uplevel.htm

=cut


 view all matches for this distribution





CGI-Inspect

 view release on metacpan or  search on metacpan

lib/CGI/Inspect.pm  view on Meta::CPAN

error logs you'll see something like "Please connect to localhost:8080". When
you do, you'll be greeted with an inspection UI which includes a stack trace,
REPL, and other goodies.

To work it's magic this modules uses Continuity, Devel::LexAlias,
Devel::StackTrace::WithLexicals, and their prerequisites (such as PadWalker).
Remember that you can always install such things locally for debugging -- no
need to install them systemwide (in case you are afraid of the power that they
provide).

=cut

 view all matches for this distribution


CLI-Startup

 view release on metacpan or  search on metacpan

Debian_CPANTS.txt  view on Meta::CPAN

"libouch-perl", "Ouch", "0.0401", "0", "0"
"libpackage-deprecationmanager-perl", "Package-DeprecationManager", "0.10", "0", "0"
"libpackage-pkg-perl", "Package-Pkg", "0.0019", "0", "0"
"libpackage-stash-perl", "Package-Stash", "0.29", "0", "1"
"libpackage-stash-xs-perl", "Package-Stash-XS", "0.22", "0", "0"
"libpadwalker-perl", "PadWalker", "1.92", "0", "1"
"libpalm-perl", "p5-Palm", "1.012", "0", "2"
"libpango-perl", "Pango", "1.221", "0", "1"
"libpar-dist-perl", "PAR-Dist", "0.45", "0", "0"
"libpar-packer-perl", "PAR-Packer", "1.008", "0", "2"
"libpar-perl", "PAR", "1.002", "0", "1"

 view all matches for this distribution


CPAN-Changes-Group-Dependencies-Stats

 view release on metacpan or  search on metacpan

example/moose-dif/Moose-2.1005-META.json  view on Meta::CPAN

            "IO::String" : "0",
            "Locale::US" : "0",
            "Module::Info" : "0",
            "Module::Refresh" : "0",
            "MooseX::NonMoose" : "0",
            "PadWalker" : "0",
            "Params::Coerce" : "0",
            "Regexp::Common" : "0",
            "SUPER" : "0",
            "Specio" : "0.07",
            "Test::Deep" : "0",

 view all matches for this distribution


CPAN

 view release on metacpan or  search on metacpan

MANIFEST  view on Meta::CPAN

distroprefs/RJBS.MIME-Light.yml
distroprefs/RJRAY.RPC-XML.yml
distroprefs/RKINYON.DBM-Deep.yml
distroprefs/RKOBES.PPM-Make.yml
distroprefs/RMUHLE.classes.yml
distroprefs/ROBIN.PadWalker.yml
distroprefs/ROBIN.Want.yml
distroprefs/ROCKY.Array-Columnize.yml
distroprefs/ROKR.Config-Identity.yml
distroprefs/RONAN.Transform-Canvas.yml
distroprefs/ROODE.Readonly-XS.yml

 view all matches for this distribution


( run in 0.585 second using v1.01-cache-2.11-cpan-05444aca049 )