demo_range.pl revision 7c478bd95313f5f23a4c958a745db2134aa03244
package UNIVERSAL;
use Attribute::Handlers;
use Tie::RangeHash;
sub Ranged : ATTR(HASH) {
my ($package, $symbol, $referent, $attr, $data) = @_;
tie %$referent, 'Tie::RangeHash';
}
package main;
my %next : Ranged;
$next{'cat,dog'} = "animal";
$next{'fish,fowl'} = "meal";
$next{'heaven,hell'} = "reward";
while (<>) {
chomp;
print $next{$_}||"???", "\n";
}