17 #ifndef AWALI_CORE_RAT_INFO_HXX
18 # define AWALI_CORE_RAT_INFO_HXX
20 namespace awali {
namespace sttc
26 template <typename RatExpSet> \
52 # define VISIT(Type) \
53 DEFINE::visit(const Type ## _t& v) \
59 for (
const auto& c: v)
66 for (
const auto& c: v)
73 for (
const auto& c: v)
80 for (
const auto& c: v)
88 for (
const auto& c: v)
95 v.sub()->accept(*
this);
101 v.sub()->accept(*
this);
107 v.sub()->accept(*
this);
113 v.sub()->accept(*
this);
119 v.sub()->accept(*
this);
143 v.sub()->accept(*
this);
149 v.sub()->accept(*
this);
Definition: ratexp.hh:280
Definition: ratexp.hh:262
virtual void accept(typename node_t::const_visitor &v) const override
Definition: ratexp.hxx:208
typename ratexpset_t::node_t node_t
Definition: info.hh:34
Definition: ratexp.hh:176
An inner node with multiple children.
Definition: ratexp.hh:115
An inner node implementing a weight.
Definition: ratexp.hh:208
#define VISIT(Type)
Definition: info.hxx:52
variadic< type_t::sum, Label, Weight > sum
Definition: fwd.hh:164
weight_node< type_t::lweight, Label, Weight > lweight
Definition: fwd.hh:174
unary< type_t::star, Label, Weight > star
Definition: fwd.hh:133
constant< type_t::zero, Label, Weight > zero
Definition: fwd.hh:117
unary< type_t::plus, Label, Weight > plus
Definition: fwd.hh:139
variadic< type_t::ldiv, Label, Weight > ldiv
Definition: fwd.hh:158
variadic< type_t::conjunction, Label, Weight > conjunction
Definition: fwd.hh:155
variadic< type_t::shuffle, Label, Weight > shuffle
Definition: fwd.hh:161
weight_node< type_t::rweight, Label, Weight > rweight
Definition: fwd.hh:177
unary< type_t::transposition, Label, Weight > transposition
Definition: fwd.hh:142
constant< type_t::one, Label, Weight > one
Definition: fwd.hh:120
unary< type_t::complement, Label, Weight > complement
Definition: fwd.hh:130
variadic< type_t::prod, Label, Weight > prod
Definition: fwd.hh:152
unary< type_t::maybe, Label, Weight > maybe
Definition: fwd.hh:136
Main namespace of Awali.
Definition: ato.hh:22