9 #define VISIT(Type, Name) \
10 template <typename Context> \
12 const_visitor<Context>::visit(const Type ## _t& Name)
16 for (
const auto& t :
v)
22 for (
const auto& t :
v)
28 for (
const auto& t : v)
34 for (
const auto& t : v)
40 for (
const auto& t : v)
46 for (
const auto& t : v)
52 for (
const auto& t : v)
58 v.sub()->accept(*
this);
63 v.sub()->accept(*
this);
68 v.sub()->accept(*
this);
73 v.sub()->accept(*
this);
78 v.sub()->accept(*
this);
unary< type_t::complement, Context > complement
variadic< type_t::infiltrate, Context > infiltrate
variadic< type_t::shuffle, Context > shuffle
variadic< type_t::conjunction, Context > conjunction
An inner node implementing a weight.
unary< type_t::transposition, Context > transposition
variadic< type_t::mul, Context > mul
An inner node with multiple children.
variadic< type_t::ldivide, Context > ldivide
#define VISIT(Type, Name)