A library for working with phylogenetic and population genetic data.
v0.32.0
FastxInputStream< Reader >::Iterator Class Reference

#include <genesis/sequence/formats/fastx_input_stream.hpp>

Detailed Description

template<class Reader>
class genesis::sequence::FastxInputStream< Reader >::Iterator

Internal iterator over the sequences.

This is the class that does the actual work. Use the dereference operator*() and operator->() to get the current Sequence of the iteration.

Definition at line 116 of file fastx_input_stream.hpp.

Public Member Functions

 Iterator (self_type &&)=default
 
 Iterator (self_type const &)=default
 
 ~Iterator ()=default
 
bool operator!= (self_type const &it) const
 
value_typeoperator* ()
 
value_type const & operator* () const
 
self_typeoperator++ ()
 
value_typeoperator-> ()
 
value_type const * operator-> () const
 
Iteratoroperator= (self_type &&)=default
 
Iteratoroperator= (self_type const &)=default
 
bool operator== (self_type const &it) const
 Compare two iterators for equality. More...
 

Public Types

using difference_type = std::ptrdiff_t
 
using iterator_category = std::input_iterator_tag
 
using pointer = value_type const *
 
using reference = value_type const &
 
using self_type = FastxInputStream::Iterator
 
using value_type = Sequence
 

Public Attributes

friend FastxInputStream
 

Constructor & Destructor Documentation

◆ ~Iterator()

~Iterator ( )
default

◆ Iterator() [1/2]

Iterator ( self_type const &  )
default

◆ Iterator() [2/2]

Iterator ( self_type &&  )
default

Member Function Documentation

◆ operator!=()

bool operator!= ( self_type const &  it) const
inline

Definition at line 221 of file fastx_input_stream.hpp.

◆ operator*() [1/2]

value_type& operator* ( )
inline

Definition at line 185 of file fastx_input_stream.hpp.

◆ operator*() [2/2]

value_type const& operator* ( ) const
inline

Definition at line 180 of file fastx_input_stream.hpp.

◆ operator++()

self_type& operator++ ( )
inline

Definition at line 194 of file fastx_input_stream.hpp.

◆ operator->() [1/2]

value_type* operator-> ( )
inline

Definition at line 175 of file fastx_input_stream.hpp.

◆ operator->() [2/2]

value_type const* operator-> ( ) const
inline

Definition at line 170 of file fastx_input_stream.hpp.

◆ operator=() [1/2]

Iterator& operator= ( self_type &&  )
default

◆ operator=() [2/2]

Iterator& operator= ( self_type const &  )
default

◆ operator==()

bool operator== ( self_type const &  it) const
inline

Compare two iterators for equality.

Any two iterators that are created by calling begin() on the same FastxInputStream instance will compare equal, as long as neither of them is past-the-end. A valid (not past-the-end) iterator and an end() iterator will not compare equal; all past-the-end iterators compare equal, independently from which parent they were created.

Definition at line 216 of file fastx_input_stream.hpp.

Member Typedef Documentation

◆ difference_type

using difference_type = std::ptrdiff_t

Definition at line 128 of file fastx_input_stream.hpp.

◆ iterator_category

using iterator_category = std::input_iterator_tag

Definition at line 129 of file fastx_input_stream.hpp.

◆ pointer

using pointer = value_type const*

Definition at line 126 of file fastx_input_stream.hpp.

◆ reference

using reference = value_type const&

Definition at line 127 of file fastx_input_stream.hpp.

◆ self_type

Definition at line 124 of file fastx_input_stream.hpp.

◆ value_type

Definition at line 125 of file fastx_input_stream.hpp.

Member Data Documentation

◆ FastxInputStream

Definition at line 164 of file fastx_input_stream.hpp.


The documentation for this class was generated from the following file: