public:
typedef std::string::const_iterator const_iterator;
- //! return reference to the characters in our alphabet
- const char *c_str() const;
//! case-insensitive test to check a character for existence in our alphabet
bool exists(const char) const;
// note, if you want to define an alphabet for a sequence, you probably want
// to update the enumeration in Sequence, and Sequence::get_sequence
//! The standard DNA alphabet, with unique, and unknown characters
- static const Alphabet reduced_dna_alphabet;
+ static const char *reduced_dna_cstr;
+ static const Alphabet &reduced_dna_alphabet();
//! The standard RNA alphabet, with unique, and unknown characters
- static const Alphabet reduced_rna_alphabet;
+ static const char *reduced_rna_cstr;
+ static const Alphabet &reduced_rna_alphabet();
//! The standard DNA/RNA alphabet, with unique, and unknown characters
- static const Alphabet reduced_nucleic_alphabet;
+ static const char *reduced_nucleic_cstr;
+ static const Alphabet &reduced_nucleic_alphabet();
//! this is the general IUPAC alphabet for nucleotides
- static const Alphabet nucleic_alphabet;
+ static const char *nucleic_cstr;
+ static const Alphabet &nucleic_alphabet();
//! the protein alphabet
- static const Alphabet protein_alphabet;
+ static const char *protein_cstr;
+ static const Alphabet &protein_alphabet();
private:
//! what are allowable symbols in our alphabet