SPARK  0.1.0
A general purpose game engine written in C++.
Loading...
Searching...
No Matches
spark::patterns::Traverser< NodeType, FnArgsTypes > Class Template Reference

A base class for any traverser used by the traverse_tree function. More...

#include <Traverser.h>

Public Types

using FnType = std::function<void(NodeType*, FnArgsTypes&&...)>
 

Public Member Functions

 Traverser (FnType apply, FnType pre={}, FnType post={})
 
void apply (NodeType *child, FnArgsTypes &&... args)
 
void pre (NodeType *child, FnArgsTypes &&... args)
 
void post (NodeType *child, FnArgsTypes &&... args)
 

Detailed Description

template<typename NodeType, typename... FnArgsTypes>
class spark::patterns::Traverser< NodeType, FnArgsTypes >

A base class for any traverser used by the traverse_tree function.

Template Parameters
NodeTypeType of the nodes of the tree.
FnArgsTypesThe types of arguments that will be passed to the pre/post/apply functions.