diff --git a/alib2algo/src/grammar/convert/ToAutomatonBottomUp.h b/alib2algo/src/grammar/convert/ToAutomatonBottomUp.h index 204d7fdc4a566c75c33fe9da02990f61e85aaf71..c82649bdbf96bfb43c7118e3d90998632934d390 100644 --- a/alib2algo/src/grammar/convert/ToAutomatonBottomUp.h +++ b/alib2algo/src/grammar/convert/ToAutomatonBottomUp.h @@ -30,16 +30,16 @@ public: /** * Performs conversion. */ - template <class T, class TerminalSymbolType = typename grammar::TerminalSymbolTypeOfGrammar < T >, class EpsilonType = DefaultEpsilonType, class NonterminalSymbolType = typename grammar::NonterminalSymbolTypeOfGrammar < T > > - static automaton::NPDA < TerminalSymbolType, EpsilonType, ext::variant < TerminalSymbolType, NonterminalSymbolType >, unsigned > convert(const T& grammar); + template < class T, class TerminalSymbolType = typename grammar::TerminalSymbolTypeOfGrammar < T >, class NonterminalSymbolType = typename grammar::NonterminalSymbolTypeOfGrammar < T > > + static automaton::NPDA < TerminalSymbolType, DefaultEpsilonType, ext::variant < TerminalSymbolType, NonterminalSymbolType >, unsigned > convert(const T& grammar); }; -template <class T, class TerminalSymbolType, class EpsilonType, class NonterminalSymbolType > -automaton::NPDA < TerminalSymbolType, EpsilonType, ext::variant < TerminalSymbolType, NonterminalSymbolType >, unsigned > ToAutomatonBottomUp::convert ( const T & grammar ) { +template < class T, class TerminalSymbolType, class NonterminalSymbolType > +automaton::NPDA < TerminalSymbolType, DefaultEpsilonType, ext::variant < TerminalSymbolType, NonterminalSymbolType >, unsigned > ToAutomatonBottomUp::convert ( const T & grammar ) { unsigned q = label::InitialStateLabel::instance < unsigned > ( ); unsigned r = label::FinalStateLabel::instance < unsigned > ( ); - automaton::NPDA < TerminalSymbolType, EpsilonType, ext::variant < TerminalSymbolType, NonterminalSymbolType >, unsigned > automaton ( q, alphabet::BottomOfTheStackSymbol::instance < NonterminalSymbolType > ( ) ); + automaton::NPDA < TerminalSymbolType, DefaultEpsilonType, ext::variant < TerminalSymbolType, NonterminalSymbolType >, unsigned > automaton ( q, alphabet::BottomOfTheStackSymbol::instance < NonterminalSymbolType > ( ) ); automaton.addState(r); automaton.addFinalState(r);