Loading [MathJax]/extensions/tex2jax.js
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Types | Public Member Functions | List of all members
ML::experimental::forest::traversal_forest< node_t, tree_id_t > Struct Template Referenceabstract

#include <traversal_forest.hpp>

Collaboration diagram for ML::experimental::forest::traversal_forest< node_t, tree_id_t >:
Collaboration graph

Public Types

using node_type = node_t
 
using node_id_type = typename node_type::id_type
 
using tree_id_type = tree_id_t
 
using node_uid_type = std::pair< tree_id_type, node_id_type >
 
using index_type = std::size_t
 

Public Member Functions

virtual node_type get_node (tree_id_type tree_id, node_id_type node_id) const =0
 
 traversal_forest (std::vector< node_uid_type > &&root_node_uids)
 
template<forest_order order, typename lambda_t >
void for_each (lambda_t &&lambda) const
 

Member Typedef Documentation

◆ index_type

template<typename node_t = traversal_node<std::size_t>, typename tree_id_t = std::size_t>
using ML::experimental::forest::traversal_forest< node_t, tree_id_t >::index_type = std::size_t

◆ node_id_type

template<typename node_t = traversal_node<std::size_t>, typename tree_id_t = std::size_t>
using ML::experimental::forest::traversal_forest< node_t, tree_id_t >::node_id_type = typename node_type::id_type

◆ node_type

template<typename node_t = traversal_node<std::size_t>, typename tree_id_t = std::size_t>
using ML::experimental::forest::traversal_forest< node_t, tree_id_t >::node_type = node_t

◆ node_uid_type

template<typename node_t = traversal_node<std::size_t>, typename tree_id_t = std::size_t>
using ML::experimental::forest::traversal_forest< node_t, tree_id_t >::node_uid_type = std::pair<tree_id_type, node_id_type>

◆ tree_id_type

template<typename node_t = traversal_node<std::size_t>, typename tree_id_t = std::size_t>
using ML::experimental::forest::traversal_forest< node_t, tree_id_t >::tree_id_type = tree_id_t

Constructor & Destructor Documentation

◆ traversal_forest()

template<typename node_t = traversal_node<std::size_t>, typename tree_id_t = std::size_t>
ML::experimental::forest::traversal_forest< node_t, tree_id_t >::traversal_forest ( std::vector< node_uid_type > &&  root_node_uids)
inline

Member Function Documentation

◆ for_each()

template<typename node_t = traversal_node<std::size_t>, typename tree_id_t = std::size_t>
template<forest_order order, typename lambda_t >
void ML::experimental::forest::traversal_forest< node_t, tree_id_t >::for_each ( lambda_t &&  lambda) const
inline

◆ get_node()

template<typename node_t = traversal_node<std::size_t>, typename tree_id_t = std::size_t>
virtual node_type ML::experimental::forest::traversal_forest< node_t, tree_id_t >::get_node ( tree_id_type  tree_id,
node_id_type  node_id 
) const
pure virtual

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