Raw content of Bio::EnsEMBL::Attribute
#
# Ensembl module for Bio::EnsEMBL::Attribute
#
# Copyright (c) 2004 Ensembl
#
# You may distribute this module under the same terms as perl itself
# POD documentation - main docs before the code
=head1 NAME
Bio::EnsEMBL::Attribute - A generic Attribute class.
=head1 SYNOPSIS
use Bio::EnsEMBL::Attribute;
my $attribute = Bio::EnsEMBL::Attribute->new
(-CODE => 'myCode',
-NAME => 'My Attribute',
-DESCRIPTION => 'This is my attribute description.',
-VALUE => '10023');
print $attrib->name(), "\n";
print $attrib->code(), "\n";
print $attrib->description(), "\n";
print $attrib->value(), "\n";
=head1 DESCRIPTION
This is a generic attribute class used to represent attributes
associated with seq_regions (and their Slices) and MiscFeatures.
Also see B, B and
B.
=head1 CONTACT
This modules is part of the Ensembl project
Questions can be posted to the ensembl-dev mailing list:
ensembl-dev@ebi.ac.uk
=head1 METHODS
=cut
use strict;
use warnings;
package Bio::EnsEMBL::Attribute;
use Bio::EnsEMBL::Utils::Argument qw(rearrange);
=head2 new
Arg [-CODE] : string - the code for this attribute
Arg [-NAME] : string - a human readable name for this attribute
Arg [-DESCRIPTION] : string - a description for this attribute
Arg [-VALUE] : value - the value of this attribute
Example : my $attribute = Bio::EnsEMBL::Attribute->new
(-CODE => 'myCode',
-NAME => 'My Attribute',
-DESCRIPTION => 'This is my attribute description.',
-VALUE => '10023');
Description: Constructor. Instantiates a Bio::EnsEMBL::Attribute object.
Returntype : Bio::EnsEMBL::Attribute
Exceptions : none
Caller : general
Status : Stable
=cut
sub new {
my $caller = shift;
# allow to be called as class or object method
my $class = ref($caller) || $caller;
my ($code, $name, $desc, $value) =
rearrange([qw(CODE NAME DESCRIPTION VALUE)], @_);
return bless {'code' => $code,
'name' => $name,
'description' => $desc,
'value' => $value}, $class;
}
=head2 new_fast
Arg [1] : hashref to be blessed
Description: Construct a new Bio::EnsEMBL::Attribute using the hashref.
Exceptions : none
Returntype : Bio::EnsEMBL::Attribute
Caller : general, subclass constructors
Status : Stable
=cut
sub new_fast {
my $class = shift;
my $hashref = shift;
return bless $hashref, $class;
}
=head2 code
Arg [1] : string $code (optional)x
Example : $code = $attribute->code();
Description: Getter/Setter for code attribute
Returntype : string
Exceptions : none
Caller : general
Status : Stable
=cut
sub code {
my $self = shift;
$self->{'code'} = shift if(@_);
return $self->{'code'};
}
=head2 name
Arg [1] : string $name (optional)
Example : $name = $attribute->name();
Description: Getter/Setter for name attribute
Returntype : string
Exceptions : none
Caller : general
Status : Stable
=cut
sub name {
my $self = shift;
$self->{'name'} = shift if(@_);
return $self->{'name'};
}
=head2 description
Arg [1] : string $description (optional)
Example : $description = $attribute->description();
Description: Getter/Setter for description attribute
Returntype : string
Exceptions : none
Caller : general
Status : Stable
=cut
sub description {
my $self = shift;
$self->{'description'} = shift if(@_);
return $self->{'description'};
}
=head2 value
Arg [1] : string $value (optional)
Example : $value = $attribute->value();
Description: Getter/Setter for value attribute
Returntype : string
Exceptions : none
Caller : general
Status : Stable
=cut
sub value {
my $self = shift;
$self->{'value'} = shift if(@_);
return $self->{'value'};
}
1;