A library for working with phylogenetic and population genetic data.
v0.27.0
taxonomy/iterator/preorder.hpp File Reference
#include "genesis/taxonomy/taxonomy.hpp"
#include "genesis/taxonomy/taxon.hpp"
#include "genesis/utils/containers/range.hpp"
#include <cassert>
#include <functional>
#include <iterator>
#include <stack>

Go to the source code of this file.

Classes

class  IteratorPreorder< TaxonomyType, TaxonType >
 

Namespaces

 genesis
 Container namespace for all symbols of genesis in order to keep them separate when used as a library.
 
 genesis::taxonomy
 

Functions

template<typename TaxonomyType >
utils::Range< IteratorPreorder< Taxonomy, Taxon > > preorder (TaxonomyType &taxonomy)
 
template<typename TaxonomyType >
utils::Range< IteratorPreorder< Taxonomy const, Taxon const > > preorder (TaxonomyType const &taxonomy)
 
void preorder_for_each (Taxonomy &tax, std::function< void(Taxon &)> fn, bool include_inner_taxa=true)
 Apply a function to all taxa of the Taxonomy, traversing it in preorder. More...
 
void preorder_for_each (Taxonomy const &tax, std::function< void(Taxon const &)> fn, bool include_inner_taxa=true)
 Apply a function to all taxa of the Taxonomy, traversing it in preorder. More...