|
A library for working with phylogenetic and population genetic data.
v0.32.0
|
|
Go to the documentation of this file. 1 #ifndef GENESIS_SEQUENCE_KMER_KMER_SCANNER_H_
2 #define GENESIS_SEQUENCE_KMER_KMER_SCANNER_H_
54 template<
typename Tag>
166 return parent_ == it.parent_;
171 return !(*
this == it);
189 void init_kmer_from_position_()
194 if( position_ +
Kmer<Tag>::k() > parent_->input.size() ) {
202 encoding.char_to_rank()
216 size_t position_ = 0;
232 : input_( std::move( input ))
242 : input_( std::move( input ))
282 #endif // include guard
Iterator & operator=(self_type const &)=default
Kmer class template for representing k-mers of various sizes, currently up to k-32.
KmerScanner(std::string const &input)
self_type & operator=(self_type const &)=default
KmerScanner(std::string const &input, uint8_t k)
value_type const & operator*() const
bool operator!=(self_type const &it) const
Container namespace for all symbols of genesis in order to keep them separate when used as a library.
bool operator==(self_type const &it) const
Compare two iterators for equality.
KmerScanner(std::string &&input)
KmerScanner(std::string &&input, uint8_t k)
std::input_iterator_tag iterator_category
std::input_iterator_tag iterator_category
uint64_t WordType
Underlying integer type used to store the k-mer.
static void set_k(uint8_t k)
Set the value of k for all Kmers of the given Tag.
value_type const & reference
value_type const * pointer
value_type * operator->()
value_type const * operator->() const