require 5.6.0; # hoh's are ambiguous before 5.56
####
sub _least_key {
my %self = (@_);
shift @{[ sort { $a <=> $b } keys %self ]};
}
####
# NON EXPORTED METHODS
####
# EXPORTED METHODS
####
bless $self; # dont need to return() it because bless returns a ref.
####
$self -> {$in} -> {cr} -> (); # run it, its valid, we leave the code ref
# to the hacker. however, rather than return, we implicitly return
# whatever the code they gave us returned for purposes of modularity
####
return undef unless defined $self{$input};
$input;
####
return undef unless $self -> verify( $in );
####
return unless defined $self{$in};
####
shift @{[ sort { $a <=> $b } keys %self ]};
####
shift @{[ sort { $b <=> $a } keys %self ]};
####
foreach my $item ( sort( { $a <=> $b } keys %self ) ) {
####
It is rather bloated to write menus with an object
####
$self->{keys} = [ sort keys %{$self} ]
####
please see perldoc perlref for a description of why we want to
use +{ } instead of just { }. It isnt strictly necessary, but quote
"may break in the future."