##
sub pack {
my $self = shift;
my @order = $self->order();
my $result = join(':', @$self{@order});
return $result;
}
####
{
my @order = qw( name price description );
sub order {
return @order;
}
}
####
sub DESTROY {
# even if it's empty, it won't hit AUTOLOAD
}