logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Stone::GB_Sequence - Specialized Access to GenBank Records

Author

       Lincoln D. Stein <lstein@cshl.org>.

Constructors

       This class is not intended to be created directly, but via a Boulder::Genbank stream.

Description

       Stone::GB_Sequence provides several specialized access methods to the various fields in a GenBank flat
       file record.  You can return the sequence as a Bio::Seq object, or query the sequence for features that
       match positional or descriptional criteria that you provide.

Methods

       In addition to the standard Stone methods and accessors, the following methods are provided.  In the
       synopses, the variable $entry refers to a previously-created Stone::GB_Sequence object.

   $length=$entry->length
       Get the length of the sequence.

   $start=$entry->start
       Get the start position of the sequence, currently always "1".

   $end=$entry->end
       Get the end position of the sequence, currently always the same as the length.

   @feature_list=$entry->features(-pos=>[50,450],-type=>['CDS','Exon'])features() will search the entry feature list for those features that meet certain criteria.  The
       criteria are specified using the -pos and/or -type argument names, as shown below.

       -pos
           Provide  a  position  or  range  of  positions  which the feature must overlap.  A single position is
           specified in this way:

              -pos => 1500;         # feature must overlap postion 1500

           or a range of positions in this way:

              -pos => [1000,1500];  # 1000 to 1500 inclusive

           If no criteria are provided, then features() returns all the features, and is equivalent  to  calling
           the Features() accessor.

       -type, -types
           Filter  the  list  of  features  by type or a set of types.  Matches are case-insensitive, so "exon",
           "Exon" and "EXON" are all equivalent.  You may call with a single type as in:

              -type => 'Exon'

           or with a list of types, as in

              -types => ['Exon','CDS']

           The names "-type" and "-types" can be used interchangeably.

   $seqObj=$entry->bioSeq;
       Returns a Bio::Seq object from the Bioperl project.  Dies with  an  error  message  unless  the  Bio::Seq
       module is installed.

Name

       Stone::GB_Sequence - Specialized Access to GenBank Records

See Also

       Boulder, <Boulder:Genbank>, Stone

perl v5.34.0                                       2022-06-08                            Stone::GB_Sequence(3pm)

Synopsis

         use Boulder::Genbank;  # No need to use Stone::GB_Sequence directly
         $gb = Boulder::Genbank->newFh qw(M57939 M28274 L36028);

         while ($entry = <$gb>) {
           print "Entry's length is ",$entry->length,"\n";
           @cds   = $entry->match_features(-type=>'CDS');
           @exons = $entry->match_features(-type=>'Exon',-start=>100,-end=>300);
         }
       }

See Also