X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FEval%2FWithLexicals.pm;h=8faa583930679742779cd1f3774b6693b806ba5d;hb=refs%2Fheads%2Fline;hp=ac04ed97cbb9eded0595d3cb89532ad002081055;hpb=3092edd9bbbb87a896accb18efcef8524de40926;p=p5sagit%2FEval-WithLexicals.git diff --git a/lib/Eval/WithLexicals.pm b/lib/Eval/WithLexicals.pm index ac04ed9..8faa583 100644 --- a/lib/Eval/WithLexicals.pm +++ b/lib/Eval/WithLexicals.pm @@ -30,6 +30,8 @@ has prelude => ( is => 'rw', default => quote_sub q{ 'use strictures 1;' } ); +has line => ( is => 'rw', default => 1 ); + sub with_plugins { my($class, @names) = @_; @@ -53,6 +55,8 @@ sub eval { local *Eval::WithLexicals::Cage::grab_captures; my $package = $self->in_package; + my $line = $self->line; + $self->line($line+1); my $setup_code = join '', $self->setup_code, # $_[2] being what is passed to _eval_do below Sub::Quote::capture_unroll('$_[2]', $self->lexicals, 2); @@ -63,7 +67,7 @@ sub eval { ${setup_code} sub Eval::WithLexicals::Cage::current_line { package ${package}; -#line 1 "(eval)" +#line $line "(eval)" ${to_eval} ;sub Eval::WithLexicals::Cage::pad_capture { } ${capture_code} @@ -262,6 +266,8 @@ Matt S. Trout David Leadbeater +haarg - Graham Knop (cpan:HAARG) + =head1 COPYRIGHT Copyright (c) 2010 the Eval::WithLexicals L and L