App-Yabsm
view release on metacpan or search on metacpan
lib/App/Yabsm/Tools.pm view on Meta::CPAN
my $lower = shift;
my $upper = shift;
my $num_args = scalar @_;
$lower = 0 if $lower eq '_';
my $lower_ok = $lower <= $num_args;
my $upper_ok = $upper eq '_' ? 1 : $upper >= $num_args;
unless ($lower_ok && $upper_ok) {
my $caller = ( caller(1) )[3];
my $error_msg = "yabsm: internal error: called '$caller' with $num_args args but it expects";
my $range_msg;
if ($upper eq '_') { $range_msg = "at least $lower args" }
elsif ($lower == $upper) { $range_msg = "$lower args" }
else { $range_msg = "$lower-$upper args" }
confess("$error_msg $range_msg");
}
return 1;
}
( run in 0.229 second using v1.01-cache-2.11-cpan-26ccb49234f )