App-RegexpCommonUtils

 view release on metacpan or  search on metacpan

lib/Regexp/Common/Patch/DumpPatterns.pm  view on Meta::CPAN


sub _wrap_pattern {
    my $ctx = shift;
    push @main::_patterns, [@_];
    &{$ctx->{orig}}(@_);
}

END {
    print "# BEGIN DUMP $config{-tag}\n";
    local $Data::Dmp::OPT_DEPARSE = 0;
    say dmp(\@main::_patterns);
    print "# END DUMP $config{-tag}\n";
}

sub patch_data {
    return {
        v => 3,
        patches => [
            {
                action      => 'wrap',
                sub_name    => 'pattern',

script/get-regexp-common-pattern  view on Meta::CPAN

    ],
};
sub app {
    my %args = @_;

    my $opts = $args{options} // {};
    my $code = '$RE' .
        join("", map {"{$_}"} split(/\./, $args{name})) .
            join("", map { "{-$_ => ".dmp($opts->{$_})."}" } sort keys %$opts);

    #say $code;
    my $re = eval $code; die "Can't eval code: $code: $@" if $@;

    if (-t STDOUT && $args{-cmdline} &&
            ($args{-cmdline_r}{format} // 'text') =~ /text/) {
        require Data::Dump::Color;
        return [200, "OK", Data::Dump::Color::dump("$re") . "\n",
                {'cmdline.skip_format'=>1}];
    } else {
        return [200, "OK", "$re"];
    }



( run in 0.397 second using v1.01-cache-2.11-cpan-d7a12ab2c7f )