Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tree: a8aa70bd08
Fetching contributors…

Cannot retrieve contributors at this time

21 lines (15 sloc) 0.661 kb
our ($CgOp, $OpCallSub, $OpLexical, $OpCgOp, $OptBeta);
class OptBeta;
# A simple Perl6 compiler generates a lot of expressions of the form
# (-> $x { block })($y), due to control structures and regexes. Try to clean
# that up here.
method make_call($/, $var, *@params) {
my $nonopt = $OpCallSub.new(pos=>$/,
positionals => [ @params ],
invocant => $OpLexical.new(name => $var));
my @lex = $*CURLEX<!sub>.lookup_lex($var) or return $nonopt;
return $nonopt unless @lex[0] eq 'sub' && @lex[4].is_inlinable;
@lex[4].set_inlined;
return $OpCgOp.new(optree => [ "_inline", @lex[4], @params ]);
}
INIT { $OptBeta = OptBeta }
Jump to Line
Something went wrong with that request. Please try again.