3 use Eval::WithLexicals;
5 my $eval = Eval::WithLexicals->new;
8 [ $eval->eval('my $x; $x++; $x;') ],
14 $eval->lexicals, { '$x' => \1 },
19 [ $eval->eval('$x+1') ],
25 [ $eval->eval('{ my $x = 0 }; $x') ],
27 'Inner scope plus lexical ok'
31 [ $eval->eval('{ my $y = 0 }; $x') ],
33 'Inner scope and other lexical ok'
37 [ keys %{$eval->lexicals} ],
39 'No capture of invisible $y'
42 $eval->eval('my $y = sub { $_[0]+1 }');
45 [ $eval->eval('$y->(2)') ],