template<typename ParentNodeT, typename PreFuncT, typename PostFuncT>
struct Rose::Traits::traversal_details::FieldTreeTraversal< ParentNodeT, PreFuncT, PostFuncT >
Definition at line 45 of file Traversal.h.
|
template<typename F , typename N > |
using | enable_nop = std::enable_if_t< do_nothing< F, N >> |
|
template<typename F , typename N > |
using | enable_call = std::enable_if_t<!do_nothing< F, N > &&!F::iterable > |
|
template<typename F , typename N > |
using | enable_iterate = std::enable_if_t<!do_nothing< F, N > &&F::iterable > |
|
|
template<typename FieldT , typename ChildNodeT , enable_nop< FieldT, ChildNodeT > * = nullptr> |
void | operator() (ChildNodeT *node, PreFuncT &pre, PostFuncT &post) const |
|
template<typename FieldT , typename ChildNodeT , enable_call< FieldT, ChildNodeT > * = nullptr> |
void | operator() (ChildNodeT *node, PreFuncT &pre, PostFuncT &post) const |
|
template<typename FieldT , typename ChildNodeT , enable_iterate< FieldT, ChildNodeT > * = nullptr> |
void | operator() (ChildNodeT *node, PreFuncT &pre, PostFuncT &post) const |
|
|
template<typename ChildNodeT > |
static constexpr bool | is_match = std::is_same<ParentNodeT, ChildNodeT>::value |
|
template<typename F , typename N > |
static constexpr bool | do_nothing = !is_match<N> || !F::traverse |
|
The documentation for this struct was generated from the following file: