get_set_sub.txt
### foo() (set or get)
BEGIN { #=====================================================================
no strict 'refs';
for my $sub (qw/forename surname age city zip/) {
*$sub = sub {
my $self = shift;
$self->{$sub} = shift if(@_);
return $self->{$sub};
};
}
}
# foo_get()
# foo_set()
BEGIN { #=====================================================================
no strict 'refs';
for my $sub (qw/forename surname age city zip/) {
*{"${sub}_get"} = sub { shift->{$sub} };
*{"${sub}_set"} = sub {
my $self = shift;
$self->{$sub} = shift if(@_);
$self->{$sub};
};
}
}
# ... or just use Class::Accessor, or even better: Moose