Skip to content
Snippets Groups Projects
Commit 227ae696 authored by Graham McVicker's avatar Graham McVicker
Browse files

Created new Bio::EnsEMBL::Attribute class

parent 2edcd70f
No related branches found
No related tags found
No related merge requests found
#
# 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',
-DESC => 'This is my attribute description.',
-VALUE => '10023');
print $attrib->name(), "\n";
print $attrib->code(), "\n";
print $attrib->desc(), "\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<Bio::EnsEMBL::Slice>, B<Bio::EnsEMBL::MiscFeature> and
B<Bio::EnsEMBL::DBSQL::AttributeAdaptor>.
=head1 CONTACT
This modules is part of the Ensembl project http://www.ensembl.org
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 [-DESC] : 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',
-DESC => 'This is my attribute description.',
-VALUE => '10023');
Description: Constructor. Instantiates a Bio::EnsEMBL::Attribute object.
Returntype : Bio::EnsEMBL::Attribute
Exceptions : none
Caller : general
=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 DESC VALUE)], @_);
return bless {'code' => $code,
'name' => $name,
'desc' => $desc,
'value' => $value}, $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
=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
=cut
sub name {
my $self = shift;
$self->{'name'} = shift if(@_);
return $self->{'name'};
}
=head2 desc
Arg [1] : string $desc (optional)
Example : $desc = $attribute->desc();
Description: Getter/Setter for description attribute
Returntype : string
Exceptions : none
Caller : general
=cut
sub desc {
my $self = shift;
$self->{'desc'} = shift if(@_);
return $self->{'desc'};
}
=head2 value
Arg [1] : string $value (optional)
Example : $value = $attribute->value();
Description: Getter/Setter for value attribute
Returntype : string
Exceptions : none
Caller : general
=cut
sub value {
my $self = shift;
$self->{'value'} = shift if(@_);
return $self->{'value'};
}
1;
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment