my @try_actions = @{$children->{$try_part}};
TRY_ACTION: foreach my $action (@try_actions) {
if (my $capture_attr = $action->attributes->{CaptureArgs}) {
- $capture_attr ||= 0;
+ my $capture_count = $capture_attr->[0] || 0;
# Short-circuit if not enough remaining parts
- next TRY_ACTION unless @parts >= $capture_attr->[0];
+ next TRY_ACTION unless @parts >= $capture_count;
my @captures;
my @parts = @parts; # localise
# strip CaptureArgs into list
- push(@captures, splice(@parts, 0, $capture_attr->[0]));
+ push(@captures, splice(@parts, 0, $capture_count));
# check if the action may fit, depending on a given test by the app
if ($action->can('match_captures')) { next TRY_ACTION unless $action->match_captures($c, \@captures) }
$args = Data::Dumper::Dumper($args);
Catalyst::Exception->throw(
"Invalid Args($args) for action " . $action->reverse() .
- " (use 'Args' or 'Args(<number>)'"
+ " (use 'Args' or 'Args(<number>)')"
);
}
}