43 template <
class T,
class SymbolType =
typename T::symbol_type >
47template <
class T,
class SymbolType >
65 T r = std::move (
Qi.back ( ) );
68 for(
const auto& a :
regexp.getAlphabet()) {
73 if ( ! stateMap.contains ( derived ) ) {
74 Qi.push_back(derived);
82 automaton.addTransition(stateMap.
at(r), a, stateMap.
at(derived));
Deterministic finite automaton. Accepts regular languages.
Definition: DFA.h:71
Class extending the deque class from the standard library. Original reason is to allow printing of th...
Definition: deque.hpp:44
Class extending the map class from the standard library. Original reason is to allow printing of the ...
Definition: map.hpp:48
R & at(const T &key, R &defaultValue)
Definition: map.hpp:163
std::pair< iterator, bool > insert(const T &key, const R &value)
Insert variant with explicit key and value parameters.
Definition: map.hpp:118
Definition: ToAutomatonDerivation.h:31
static automaton::DFA< SymbolType, unsigned > convert(const T ®exp)
Definition: ToAutomatonDerivation.h:48
static bool languageContainsEpsilon(const regexp::FormalRegExpElement< SymbolType > ®exp)
Definition: RegExpEpsilon.h:91
static regexp::UnboundedRegExp< SymbolType > optimize(const regexp::UnboundedRegExp< SymbolType > ®exp)
ext::deque< ext::set< StateType > > Qi
Definition: ReachableStates.h:95
Definition: ToGrammar.h:31
Definition: converterCommon.hpp:8
constexpr auto make_pair(T1 &&x, T2 &&y)
Definition: pair.hpp:79
Definition: ToAutomaton.h:15