12 template <
typename Context>
20 template <type_t Type>
22 template <type_t Type>
24 template <type_t Type>
40 #define DEFINE(Type) \
41 using Type ## _t = Type<context_t>; \
42 virtual void visit(const Type ## _t& v)
64 #define VCSN_RAT_VISIT(Type, Val) \
65 using Type ## _t = typename super_t::Type ## _t; \
66 virtual void visit(const Type ## _t& Val) override
68 #define VCSN_RAT_UNSUPPORTED(Type) \
69 VCSN_RAT_VISIT(Type,) \
71 raise(me(), ": " #Type " is not supported"); \
std::integral_constant< bool, B > bool_constant
An inner node with multiple children.
#define BUILTIN_UNREACHABLE()
An inner node implementing a weight.
The root from which to derive the final node types.
void visit(const tuple< context_t > &v)
Implementation of nodes of tuple of rational expressions.
The abstract parameterized, root for all rational expression types.
void visit(const tuple< context_t > &, std::false_type)