diff --git a/alib2str/src/automaton/string/FSM/DFA.h b/alib2str/src/automaton/string/FSM/DFA.h index f03091a2061e138d09fb78c9ab44f68cf4104cf0..c50074934177fdaf25ed682c515f1cf031f26ff4 100644 --- a/alib2str/src/automaton/string/FSM/DFA.h +++ b/alib2str/src/automaton/string/FSM/DFA.h @@ -93,7 +93,7 @@ void stringApi < automaton::DFA < SymbolType, StateType > >::parseTransition(std states.insert(from); if ( initial ) { if(initialState != NULL) - throw exception::CommonException("Multiple initial states are not avaiable for NFA type"); + throw exception::CommonException("Multiple initial states are not avaiable for DFA type"); initialState = new StateType(from); } if ( final ) @@ -111,11 +111,9 @@ void stringApi < automaton::DFA < SymbolType, StateType > >::parseTransition(std StateType to = alib::stringApi<StateType>::parse(input); states.insert(to); transitionFunction.insert(ext::make_tuple(from, *iter, to)); - - token = automaton::AutomatonFromStringLexer::next(input); - } else { - token = automaton::AutomatonFromStringLexer::next(input); } + token = automaton::AutomatonFromStringLexer::next(input); + ++iter; } automaton::AutomatonFromStringLexer::putback(input, token);