maint: restructure to use Dist::Zilla
[bioperl-live.git] / lib / Bio / Seq / LargeSeqI.pm
blobc6b1faf4457fe26083cdafe2a11093b5a58e4dfe
2 # BioPerl module for Bio::Seq::LargeSeqI
4 # Please direct questions and support issues to <bioperl-l@bioperl.org>
6 # Cared for by Albert Vilella
8 # Copyright Albert Vilella
10 # You may distribute this module under the same terms as perl itself
12 # POD documentation - main docs before the code
14 =head1 NAME
16 Bio::Seq::LargeSeqI - Interface class for sequences that cache their
17 residues in a temporary file
19 =head1 SYNOPSIS
23 =head1 DESCRIPTION
25 The interface class defines a group of sequence classes that do not
26 keep their sequence information in memory but store it in a file. This
27 makes it possible to work with very large files even with limited RAM.
29 The most important consequence of file caching for sequences is that
30 you do not want to inspect the sequence unless absolutely
31 necessary. These sequences typically override the length() method not
32 to check the sequence.
34 The seq() method is not resetable, if you want to add to the end of the
35 sequence you have to use add_sequence_as_string(), for any other sequence changes you'll
36 have to create a new object.
38 =head1 FEEDBACK
40 =head2 Mailing Lists
42 User feedback is an integral part of the evolution of this and other
43 Bioperl modules. Send your comments and suggestions preferably to
44 the Bioperl mailing list. Your participation is much appreciated.
46 bioperl-l@bioperl.org - General discussion
47 http://bioperl.org/wiki/Mailing_lists - About the mailing lists
49 =head2 Support
51 Please direct usage questions or support issues to the mailing list:
53 I<bioperl-l@bioperl.org>
55 rather than to the module maintainer directly. Many experienced and
56 reponsive experts will be able look at the problem and quickly
57 address it. Please include a thorough description of the problem
58 with code and data examples if at all possible.
60 =head2 Reporting Bugs
62 Report bugs to the Bioperl bug tracking system to help us keep track
63 of the bugs and their resolution. Bug reports can be submitted via
64 email or the web:
66 https://github.com/bioperl/bioperl-live/issues
68 =head1 AUTHOR - Albert Vilella
70 Email avilella-AT-gmail-DOT-com
72 =head1 CONTRIBUTORS
74 Heikki Lehvaslaiho, heikki-at-bioperl-dot-org
76 =head1 APPENDIX
78 The rest of the documentation details each of the object methods.
79 Internal methods are usually preceded with a _
81 =cut
84 # Let the code begin...
87 package Bio::Seq::LargeSeqI;
88 use strict;
91 use base qw(Bio::Root::RootI);
94 =head2 add_sequence_as_string
96 Title : add_sequence_as_string
97 Usage : $seq->add_sequence_as_string("CATGAT");
98 Function: Appends additional residues to an existing object.
99 This allows one to build up a large sequence without
100 storing entire object in memory.
101 Returns : Current length of sequence
102 Args : string to append
104 =cut
106 sub add_sequence_as_string {
107 my ($self) = @_;
108 $self->throw_not_implemented();