package Data::Model::Accessor;
use strict;
use warnings;
sub mk_accessors {
my $class = shift;
for my $field (@_) {
no strict 'refs';
*{"$class\::$field"} = sub {
return $_[0]->{$field} unless @_ > 1;
my $self = shift;
$self->{$field} = (@_ == 1 ? $_[0] : [@_]);
};
}
}
1;