1 #ifndef VCSN_ALGOS_UNION_HH
2 # define VCSN_ALGOS_UNION_HH
4 # include <unordered_map>
20 template <
typename A,
typename B>
30 template <
typename A,
typename B>
50 template <
typename Lhs,
typename Rhs>
55 const auto& l = lhs->as<Lhs>();
56 const auto&
r = rhs->as<Rhs>();
66 #endif // !VCSN_ALGOS_UNION_HH
REGISTER_DECLARE(accessible,(const automaton &) -> automaton)
std::shared_ptr< detail::automaton_base > automaton
automaton make_automaton(const Aut &aut)
Build a dyn::automaton.
auto join_automata(Auts &&...auts) -> decltype(make_mutable_automaton(join(auts->context()...)))
Join between automata.
A & union_here(A &res, const B &b)
Merge transitions of b into those of res.
auto union_a(const A &lhs, const B &rhs) -> decltype(join_automata(lhs, rhs))
Union of two automata.
Provide a variadic mul on top of a binary mul(), and one().
void copy_into(const AutIn &in, AutOut &out, Pred keep_state)
Copy an automaton.
automaton union_a(const automaton &lhs, const automaton &rhs)