+ if ($num_args > 0) {
+ croak "Parameter count mismatch for $method(actual: " . scalar(@args) . " wanted: $num_args)" if scalar(@args) != $num_args;
+ } else {
+ $num_args *= -1;
+ croak "Parameter count mismatch for $method(actual: " . scalar(@args) . " wanted at least: $num_args)" if scalar(@args) < $num_args;
+ $num_args = scalar @args;
+ }
+
+ foreach my $idx (0..$num_args - 1) {
+ # Force flattening from SL::Presenter::EscapedText and trim leading whitespace for scalars
+ $args[$idx] = "" . $args[$idx] if ref($args[$idx]) eq 'SL::Presenter::EscapedText';
+ $args[$idx] =~ s/^\s+// if !ref($args[$idx]);