sub name {
my $self = shift;
if (1 == @_ && ! ref $_[0]) {
$self->{name} = shift;
return $self;
}
elsif (! @_) {
return $self->{name};
}
else {
croak "Unknown arguments to name()";
}
}
####
sub name {
my $self = shift;
$self->{name} = shift, return $self if @_ == 1
croak "Unknown arguments to name" if @_;
return $self->{name};
}
##
##
sub name {
my $self = shift;
$self->{name} = shift if @_ == 1
croak "Unknown arguments to name" if @_;
return $self->{name};
}
##
##
sub name {
@_ > 1 and croak "Too many arguments for name";
my $self = shift;
return @_ ? $self->{name} = shift : $self->{name};
}
##
##
sub name : lvalue { shift->{name} }