summaryrefslogtreecommitdiffstats
path: root/lib/Reply/Plugin/Defaults.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Reply/Plugin/Defaults.pm')
-rw-r--r--lib/Reply/Plugin/Defaults.pm6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/Reply/Plugin/Defaults.pm b/lib/Reply/Plugin/Defaults.pm
index debed09..f1813fb 100644
--- a/lib/Reply/Plugin/Defaults.pm
+++ b/lib/Reply/Plugin/Defaults.pm
@@ -26,7 +26,6 @@ sub read_line {
}
(my $PREFIX = <<'PREFIX') =~ s/__PACKAGE__/__PACKAGE__/ge;
-package main;
BEGIN {
$^H = $__PACKAGE__::default_hints;
%^H = %$__PACKAGE__::default_hinthash;
@@ -47,8 +46,11 @@ sub compile {
$args{environment} = { map { %$_ } @envs }
}
+ my $package = delete $args{package} || 'main';
+ my $prefix = "package $package;\n$PREFIX";
+
return eval_closure(
- source => "sub {\n$PREFIX;\n$line\n}",
+ source => "sub {\n$prefix;\n$line\n}",
terse_error => 1,
%args,
);