package Descriptions;
$VERSION = '1.00';
use Attribute::Handlers;
my %name;
sub name {
return $name{$_[2]}||*{$_[1]}{NAME};
}
sub UNIVERSAL::Name :ATTR {
$name{$_[2]} = $_[4];
}
sub UNIVERSAL::Purpose :ATTR {
print STDERR "Purpose of ", &name, " is $_[4]\n";
}
sub UNIVERSAL::Unit :ATTR {
print STDERR &name, " measured in $_[4]\n";
}
1;
|