A toolkit for working with phylogenetic data.
v0.18.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
IteratorEulertour< LinkType, NodeType, EdgeType > Class Template Reference

#include <genesis/tree/iterator/eulertour.hpp>

Detailed Description

template<typename LinkType, typename NodeType, typename EdgeType>
class genesis::tree::IteratorEulertour< LinkType, NodeType, EdgeType >

Definition at line 56 of file eulertour.hpp.

Public Member Functions

 IteratorEulertour ()
 
 IteratorEulertour (Tree &tree)
 
 IteratorEulertour (Tree const &tree)
 
 IteratorEulertour (NodeType &node)
 
 IteratorEulertour (LinkType &link)
 
 IteratorEulertour (IteratorEulertour const &)=default
 
 IteratorEulertour (IteratorEulertour &&)=default
 
 ~IteratorEulertour ()=default
 
EdgeType & edge () const
 
bool is_first_iteration () const
 
LinkType & link () const
 
NodeType & node () const
 
bool operator!= (const self_type &other) const
 
self_type operator* ()
 
self_typeoperator++ ()
 
self_type operator++ (int)
 
IteratorEulertouroperator= (IteratorEulertour const &)=default
 
IteratorEulertouroperator= (IteratorEulertour &&)=default
 
bool operator== (const self_type &other) const
 
LinkType & start_link () const
 
NodeType & start_node () const
 

Public Types

using iterator_category = std::forward_iterator_tag
 
using self_type = IteratorEulertour< LinkType, NodeType, EdgeType >
 

Constructor & Destructor Documentation

IteratorEulertour ( )
inline

Definition at line 72 of file eulertour.hpp.

IteratorEulertour ( Tree tree)
inlineexplicit

Definition at line 77 of file eulertour.hpp.

IteratorEulertour ( Tree const &  tree)
inlineexplicit

Definition at line 82 of file eulertour.hpp.

IteratorEulertour ( NodeType &  node)
inlineexplicit

Definition at line 87 of file eulertour.hpp.

IteratorEulertour ( LinkType &  link)
inlineexplicit

Definition at line 92 of file eulertour.hpp.

~IteratorEulertour ( )
default
IteratorEulertour ( IteratorEulertour< LinkType, NodeType, EdgeType > const &  )
default
IteratorEulertour ( IteratorEulertour< LinkType, NodeType, EdgeType > &&  )
default

Member Function Documentation

EdgeType& edge ( ) const
inline

Definition at line 159 of file eulertour.hpp.

bool is_first_iteration ( ) const
inline

Definition at line 144 of file eulertour.hpp.

LinkType& link ( ) const
inline

Definition at line 149 of file eulertour.hpp.

NodeType& node ( ) const
inline

Definition at line 154 of file eulertour.hpp.

bool operator!= ( const self_type other) const
inline

Definition at line 135 of file eulertour.hpp.

self_type operator* ( )
inline

Definition at line 109 of file eulertour.hpp.

self_type& operator++ ( )
inline

Definition at line 114 of file eulertour.hpp.

self_type operator++ ( int  )
inline

Definition at line 123 of file eulertour.hpp.

IteratorEulertour& operator= ( IteratorEulertour< LinkType, NodeType, EdgeType > const &  )
default
IteratorEulertour& operator= ( IteratorEulertour< LinkType, NodeType, EdgeType > &&  )
default
bool operator== ( const self_type other) const
inline

Definition at line 130 of file eulertour.hpp.

LinkType& start_link ( ) const
inline

Definition at line 164 of file eulertour.hpp.

NodeType& start_node ( ) const
inline

Definition at line 169 of file eulertour.hpp.

Member Typedef Documentation

using iterator_category = std::forward_iterator_tag

Definition at line 65 of file eulertour.hpp.

using self_type = IteratorEulertour<LinkType, NodeType, EdgeType>

Definition at line 66 of file eulertour.hpp.


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