Acme-Capture

 view release on metacpan or  search on metacpan

Makefile.PL  view on Meta::CPAN


my %FallbackPrereqs = (
  "Capture::Tiny" => 0,
  "Exporter" => 0,
  "Test::More" => 0,
  "strict" => 0,
  "warnings" => 0
);


unless ( eval { ExtUtils::MakeMaker->VERSION(6.63_03) } ) {
  delete $WriteMakefileArgs{TEST_REQUIRES};
  delete $WriteMakefileArgs{BUILD_REQUIRES};
  $WriteMakefileArgs{PREREQ_PM} = \%FallbackPrereqs;
}

delete $WriteMakefileArgs{CONFIGURE_REQUIRES}
  unless eval { ExtUtils::MakeMaker->VERSION(6.52) };

WriteMakefile(%WriteMakefileArgs);

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

  capture_stderr  => [0,1,0,0],
  capture_merged  => [1,1,1,0],
  tee             => [1,1,0,1],
  tee_stdout      => [1,0,0,1],
  tee_stderr      => [0,1,0,1],
  tee_merged      => [1,1,1,1],
);

for my $sub (keys %api) {
    my $args = join q{, }, @{$api{$sub}};
    eval "sub $sub(&;@) { unshift \@_, $args; goto \\&Capture::Tiny::_capture_tee; }"; ## no critic
}

{
    no warnings 'redefine';
    eval <<'EOT' or die "Can't redefine _relayer() ==> $@";
    sub Capture::Tiny::_relayer {
        my ($fh, $layers) = @_;

        my $unix_utf8_crlf = @$layers > 4
          && $layers->[0] eq 'unix'
          && $layers->[1] eq 'crlf'
          && $layers->[2] eq 'utf8'
          && $layers->[3] eq 'unix'
          && $layers->[4] eq 'encoding(utf8)' ? 1 : 0;



( run in 0.937 second using v1.01-cache-2.11-cpan-ceb78f64989 )