40 Seq::substr(std::string::size_type beg, std::string::size_type len)
const 45 return seq.substr(beg, len);
54 return seq.substr(beg);
81 assert(i < seq.length());
91 assert(i < seq.length());
103 return (this->seq == rhs.seq);
114 return (this->seq != rhs.seq);
117 Seq::operator std::string() const
132 = size_type(std::count(seq.begin(), seq.end(),
'-'));
133 return (seq.length() - ngap);
143 return (seq.find(
'-') != std::string::npos);
158 assert(beg < seq.length() && (beg + length < seq.length()));
159 seq.assign(seq.begin() + beg, seq.begin() + beg +
length);
184 std::reverse(seq.begin(), seq.end());
class Sequence::Seq, an abstract base class for Sequences
bool operator!=(const Seq &rhs) const
Abstract interface to sequence objects.
std::string::const_iterator const_iterator
void Subseq(const unsigned &, const unsigned &)
size_type size(void) const
const char * c_str(void) const
The namespace in which this library resides.
virtual std::ostream & print(std::ostream &s) const =0
std::ostream & operator<<(std::ostream &s, const AlignStream< T > &c)
virtual std::istream & read(std::istream &s)=0
const_iterator cbegin() const
std::string substr(std::string::size_type beg, std::string::size_type len) const
size_type length(void) const
size_type UngappedLength(void) const
std::istream & operator>>(std::istream &s, AlignStream< T > &c)
bool IsGapped(void) const
const_iterator cend() const
bool operator==(const Seq &rhs) const
std::string::iterator iterator
reference operator[](const size_type &i)