9 #ifndef __NODAMUSHI_VISITOR_VISITOR_HPP__ 10 #define __NODAMUSHI_VISITOR_VISITOR_HPP__ 18 template<
typename CONTROLLER,
typename VISITOR,
typename T>
21 template<
typename CONTROLLER,
typename VISITOR,
typename T>
24 template<
typename CONTROLLER,
typename VISITOR,
typename T>
27 template<
typename CONTROLLER,
typename VISITOR,
typename T>
31 template<
typename VISITOR,
typename T>
34 template<
typename VISITOR,
typename T>
38 template<
typename VISITOR,
typename T>
41 template<
typename VISITOR,
typename T>
50 template<
typename T,_visitor_member_type_ v>
struct is_static 57 #define __NODAMUSHI_VISIT_ENUM__(x,y) ::nodamushi::visitor::_visitor_member_type_::__NODAMUSHI_VISIT_ENUM2__(x,y) 58 #define __NODAMUSHI_VISIT_ENUM2__(x,y) x##y 60 using result = ::nodamushi::visitor::result; \ 61 static constexpr result CONTINUE = result::CONTINUE; \ 62 static constexpr result BREAK = result::BREAK; \ 63 static constexpr result SKIP = result::SKIP; \ 64 template<typename T>VISITOR_MEMBER result visit(const T& t){return result::CONTINUE;} \ 65 template<typename T>VISITOR_MEMBER result visit(T& t){return result::CONTINUE;} \ 66 template<typename T>VISITOR_MEMBER result postVisit(const T& t){return result::CONTINUE;} \ 67 template<typename T>VISITOR_MEMBER result postVisit(T& t){return result::CONTINUE;} 69 # ifndef VISITOR_MEMBER 70 # define VISITOR_MEMBER 78 #endif // __NODAMUSHI_VISITOR_VISITOR_HPP__ result applyPostVisit(T &t)
static constexpr bool value
result applyController(T &t)