From 335364e6d5ae00e62a2d33514eaded969cd41e78 Mon Sep 17 00:00:00 2001 From: jason Date: Fri, 22 Jan 2010 19:14:12 +0000 Subject: [PATCH] add an alphabet init arg and get/setter svn path=/bioperl-live/trunk/; revision=16737 --- Bio/AlignIO.pm | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/Bio/AlignIO.pm b/Bio/AlignIO.pm index 6fcbde71a..089d94e8e 100644 --- a/Bio/AlignIO.pm +++ b/Bio/AlignIO.pm @@ -380,9 +380,10 @@ sub fh { sub _initialize { my($self,@args) = @_; - my ($flat) = $self->_rearrange([qw(DISPLAYNAME_FLAT)], + my ($flat,$alphabet) = $self->_rearrange([qw(DISPLAYNAME_FLAT ALPHABET)], @args); $self->force_displayname_flat($flat) if defined $flat; + $self->alphabet($alphabet); $self->_initialize_io(@args); 1; } @@ -522,4 +523,27 @@ sub force_displayname_flat{ return $self->{'_force_displayname_flat'} || 0; } +=head2 alphabet + + Title : alphabet + Usage : $obj->alphabet($newval) + Function: Get/Set alphabet for purpose of passing to Bio::LocatableSeq creation + Example : $obj->alphabet('dna'); + Returns : value of alphabet (a scalar) + Args : on set, new value (a scalar or undef, optional) + + +=cut + +sub alphabet { + my $self = shift; + my $value = shift; + if ( defined $value ) { + $self->throw("Invalid alphabet $value") unless $value eq 'rna' || $value eq 'protein' || $value eq 'dna'; + $self->{'_alphabet'} = $value; + } + return $self->{'_alphabet'}; +} + + 1; -- 2.11.4.GIT