Lines Matching refs:macro
322 my ($macro, $sub, %def) = @_;
325 $macros{ $macro } = {
331 if ($macros{ $macro }{concat_until}) {
332 $macros{ $macros{ $macro }{concat_until} } = { run => sub { @_ } };
333 $macros{ $macro }{greedy} = 1;
339 my ($macro) = @_;
340 croak "Macro <$macro> not defined" if not exists $macros{ $macro };
341 +{ %{ $macros{ $macro } } }
455 my ($macro, @args) = @_;
461 @args = _unquote(@args) if (!$macros{ $macro }{raw});
469 if ($macros{ $macro }{greedy}) {
479 if ($macros{ $macro }{concat_until}) {
482 die "EOF was reached and no $macros{ $macro }{concat_until} found"
485 if ($n_macro eq $macros{ $macro }{concat_until}) {
496 if ($macros{ $macro }{greedy}) {
498 return $macros{ $macro }{run}->(@ret);
502 return $macros{ $macro }{run}->(@newargs), @ret;
524 my ($macro, @args) = quotewords(' ', 1, $line);
527 if ($macro && exists $macros{ $macro }) {
528 return ($macro, @args);