diff options
author | Jesse Luehrs <doy@tozt.net> | 2013-06-26 13:52:02 -0400 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2013-06-26 13:52:02 -0400 |
commit | 68371e78f12feffce4151d6fd9434c3ca46700bd (patch) | |
tree | 73c94f3e0ca365133be1b07974c067ae400bc4e3 /lib/Reply/Plugin/Defaults.pm | |
parent | e3b56981b944b01084a51d5fc150ad596dd4a2fa (diff) | |
download | reply-68371e78f12feffce4151d6fd9434c3ca46700bd.tar.gz reply-68371e78f12feffce4151d6fd9434c3ca46700bd.zip |
turn setting the current package into a parameter
Diffstat (limited to 'lib/Reply/Plugin/Defaults.pm')
-rw-r--r-- | lib/Reply/Plugin/Defaults.pm | 6 |
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, ); |