15 -> decltype(
pass(auts->null_state()...),
30 -> decltype(
pass(auts->null_state()...),
40 -> decltype(
pass(auts->null_state()...),
50 -> decltype(
pass(auts->null_state()...),
auto meet_automata(Auts &&...auts) -> decltype(pass(auts->null_state()...), make_mutable_automaton(meet(auts->context()...)))
An automaton whose type is the meet between those of auts.
auto nullable_join_automata(Auts &&...auts) -> decltype(pass(auts->null_state()...), make_mutable_automaton(nullable_join_context(auts...)))
An automaton whose type is the nullable join between those of auts.
decltype(join_automata< std::declval< Auts >()... >) join_automata_t
The type of the join between automata of type Auts.
mutable_automaton< Context > make_mutable_automaton(const Context &ctx)
auto join_automata(Auts &&...auts) -> decltype(pass(auts->null_state()...), make_mutable_automaton(join(auts->context()...)))
An automaton whose type is the join between those of auts.
auto nullable_join_context(Auts &&...auts) -> decltype(pass(auts->null_state()...), make_nullableset_context(join(auts->context()...)))
The nullable context of the join between parameters' context.
auto join(const ValueSet &vs) -> ValueSet
The join of a single valueset.
nullableset_context_t< context< LabelSet, WeightSet > > make_nullableset_context(const context< LabelSet, WeightSet > &ctx)
The nullableset context of a context.
auto meet(const expressionset< Ctx1 > &a, const expressionset< Ctx2 > &b) -> expressionset< meet_t< Ctx1, Ctx2 >>
The meet of two expressionsets.