Error Handling and Defensive Perl
Early Return
Return a clear result as soon as a guard condition matches.
Early Return
early_return.pl
use strict;
use warnings;
sub count_label {
my ($count) = @_;
return "none" if $count <= 0;
return "many" if $count > 3;
return "some";
}
my $count = ;
my $label = count_label($count);
print "count=$count\n";
print "label=$label\n";
use strict;
use warnings;
sub count_label {
my ($count) = @_;
return "none" if $count <= 0;
return "many" if $count > 3;
return "some";
}
my $count = ;
my $label = count_label($count);
print "count=$count\n";
print "label=$label\n";
use strict;
use warnings;
sub count_label {
my ($count) = @_;
return "none" if $count <= 0;
return "many" if $count > 3;
return "some";
}
my $count = ;
my $label = count_label($count);
print "count=$count\n";
print "label=$label\n";
early-return
An early return keeps special cases close to the top of a subroutine.