App-GenModEmbedder
view release on metacpan or search on metacpan
bin/gen-mod-embedder view on Meta::CPAN
as (see --as)
format (see --format)
indent_level (see --indent-level)
module (see --module)
naked_res (see --naked-res)
strip_pod (see --strip-pod)
=head1 ENVIRONMENT
=head2 GEN_MOD_EMBEDDER_OPT => str
Specify additional command-line options
=head1 FILES
~/.config/gen-mod-embedder.conf
~/gen-mod-embedder.conf
/etc/gen-mod-embedder.conf
lib/App/GenModEmbedder.pm view on Meta::CPAN
if ($mod ne $as) {
$source =~ s/\b(package\s+)\Q$mod\E\b/$1 . $as/es;
}
$source =~ s/\s+\z//s;
$source .= "\n";
$source =~ s/^/#/mg;
my $i0 = " " x $args{indent_level};
my $preamble = "${i0}# BEGIN EMBEDDING MODULE: mod=$mod ver=$version generator=\"".__PACKAGE__." ".(${__PACKAGE__."::VERSION"})."\" generated-at=\"".(scalar localtime)."\"\n";
$preamble .= "${i0}unless (eval { require $as; 1 }) {\n";
$preamble .= "${i0} my \$source = '##line ' . (__LINE__+1) . ' \"' . __FILE__ . qq(\"\\n) . <<'EOS';\n";
my $postamble = "EOS\n";
$postamble .= "${i0} \$source =~ s/^#//gm;\n";
$postamble .= "${i0} eval \$source; die if \$@;\n";
$postamble .= "${i0} \$INC{'$as_pm'} = '(set by embedding code in '.__FILE__.')';\n";
$postamble .= "${i0}}\n";
$postamble .= "${i0}# END EMBEDDING MODULE\n";
return [200, "OK", $preamble . $source . $postamble,
{"cmdline.skip_format" => 1}];
}
1;
# ABSTRACT: Generate a piece of Perl code that embeds a module
__END__
( run in 0.453 second using v1.01-cache-2.11-cpan-0b58ddf2af1 )