use strict ;
use warnings ;
try() ; # none: 1
try(undef) ; # undef: 1
try(-1) ; # -1: 0
try(0) ; # 0: 0
try(1) ; # 1: 1
sub try {
my ($s) = @_ ;
my $r = validate_max_size(@_) ;
if (@_ == 0) { $s = "none" ; }
elsif (!defined($s)) { $s = "undef" ; } ;
printf "%8s: %d\n", $s, $r+0 ;
} ;
sub validate_max_size {
my $val = shift;
! defined $val || $val > 0;
}
####
!defined($val) || ($val > 0) ;
####
try('undef') ; # Argument "undef" isn't numeric in numeric gt (>) ...