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 )