Closure-Explicit

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

         "requires" : {
            "Test::Mojibake" : "0",
            "Test::More" : "0",
            "Test::Pod" : "1.41",
            "Test::Synopsis" : "0",
            "Test::Version" : "1"
         }
      },
      "runtime" : {
         "requires" : {
            "PadWalker" : "0",
            "parent" : "0"
         }
      },
      "test" : {
         "recommends" : {
            "CPAN::Meta" : "2.120900"
         },
         "requires" : {
            "ExtUtils::MakeMaker" : "0",
            "File::Spec" : "0",

META.yml  view on Meta::CPAN

configure_requires:
  ExtUtils::MakeMaker: '6.48'
dynamic_config: 0
generated_by: 'Dist::Zilla version 6.009, CPAN::Meta::Converter version 2.150010'
license: perl
meta-spec:
  url: http://module-build.sourceforge.net/META-spec-v1.4.html
  version: '1.4'
name: Closure-Explicit
requires:
  PadWalker: '0'
  parent: '0'
resources:
  bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=Closure-Explicit
  homepage: http://search.cpan.org/dist/Closure-Explicit/
version: '0.002'
x_serialization_backend: 'YAML::Tiny version 1.70'

Makefile.PL  view on Meta::CPAN

  "ABSTRACT" => "check coderefs for unintended lexical capture",
  "AUTHOR" => "Tom Molesworth <cpan\@perlsite.co.uk>",
  "CONFIGURE_REQUIRES" => {
    "ExtUtils::MakeMaker" => "6.48"
  },
  "DISTNAME" => "Closure-Explicit",
  "LICENSE" => "perl",
  "MIN_PERL_VERSION" => "5.014000",
  "NAME" => "Closure::Explicit",
  "PREREQ_PM" => {
    "PadWalker" => 0,
    "parent" => 0
  },
  "TEST_REQUIRES" => {
    "ExtUtils::MakeMaker" => 0,
    "File::Spec" => 0,
    "IO::Handle" => 0,
    "IPC::Open3" => 0,
    "Test::CheckDeps" => "0.010",
    "Test::Fatal" => 0,
    "Test::More" => "0.98",

Makefile.PL  view on Meta::CPAN

    "TESTS" => "t/*.t"
  }
);


my %FallbackPrereqs = (
  "ExtUtils::MakeMaker" => 0,
  "File::Spec" => 0,
  "IO::Handle" => 0,
  "IPC::Open3" => 0,
  "PadWalker" => 0,
  "Test::CheckDeps" => "0.010",
  "Test::Fatal" => 0,
  "Test::More" => "0.98",
  "Test::Refcount" => "0.07",
  "parent" => 0
);


unless ( eval { ExtUtils::MakeMaker->VERSION(6.63_03) } ) {
  delete $WriteMakefileArgs{TEST_REQUIRES};

cpanfile  view on Meta::CPAN

requires 'parent', 0;
requires 'PadWalker', 0;

on 'test' => sub {
	requires 'Test::More', '>= 0.98';
	requires 'Test::Fatal', 0;
	requires 'Test::Refcount', '0.07';
};

lib/Closure/Explicit.pm  view on Meta::CPAN

package Closure::Explicit;
# ABSTRACT: check coderefs for unintended lexical capture
use strict;
use warnings;
use B;
use PadWalker qw(closed_over peek_sub peek_my);
use Scalar::Util ();

our $VERSION = '0.002';

=head1 NAME

Closure::Explicit - check coderefs for variable capture

=head1 VERSION

lib/Closure/Explicit.pm  view on Meta::CPAN

1;

__END__

=head1 SEE ALSO

=over 4

=item * L<curry> - provides a convenient interface for creating callbacks

=item * L<PadWalker> - does most of the real work behind this module

=item * L<Test::RefCount> - convenient testing for reference counts, makes
cycles easier to detect in test code

=item * L<Devel::Cycle> - reports whether cycles exist and provides useful
diagnostics when any are found

=back

=head1 AUTHOR

lib/Closure/Explicit.pod  view on Meta::CPAN


It's unlikely that the C<weaken> parameter will work when calling this
function directly - this may be fixed in a future version.

=head1 SEE ALSO

=over 4

=item * L<curry> - provides a convenient interface for creating callbacks

=item * L<PadWalker> - does most of the real work behind this module

=item * L<Test::RefCount> - convenient testing for reference counts, makes
cycles easier to detect in test code

=item * L<Devel::Cycle> - reports whether cycles exist and provides useful
diagnostics when any are found

=back

=head1 INHERITED METHODS

t/00-report-prereqs.dd  view on Meta::CPAN

                      'requires' => {
                                      'Test::Mojibake' => '0',
                                      'Test::More' => '0',
                                      'Test::Pod' => '1.41',
                                      'Test::Synopsis' => '0',
                                      'Test::Version' => '1'
                                    }
                    },
       'runtime' => {
                      'requires' => {
                                      'PadWalker' => '0',
                                      'parent' => '0'
                                    }
                    },
       'test' => {
                   'recommends' => {
                                     'CPAN::Meta' => '2.120900'
                                   },
                   'requires' => {
                                   'ExtUtils::MakeMaker' => '0',
                                   'File::Spec' => '0',



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