|
template<class TerminalSymbolType , class NonterminalSymbolType > |
static ext::map< NonterminalSymbolType, ext::set< ext::vector< ext::variant< TerminalSymbolType, NonterminalSymbolType > > > > | getRawRules (const LG< TerminalSymbolType, NonterminalSymbolType > &grammar) |
|
template<class TerminalSymbolType , class NonterminalSymbolType > |
static ext::map< NonterminalSymbolType, ext::set< ext::vector< ext::variant< TerminalSymbolType, NonterminalSymbolType > > > > | getRawRules (const GNF< TerminalSymbolType, NonterminalSymbolType > &grammar) |
|
template<class TerminalSymbolType , class NonterminalSymbolType > |
static ext::map< NonterminalSymbolType, ext::set< ext::vector< ext::variant< TerminalSymbolType, NonterminalSymbolType > > > > | getRawRules (const EpsilonFreeCFG< TerminalSymbolType, NonterminalSymbolType > &grammar) |
|
template<class TerminalSymbolType , class NonterminalSymbolType > |
static ext::map< NonterminalSymbolType, ext::set< ext::vector< ext::variant< TerminalSymbolType, NonterminalSymbolType > > > > | getRawRules (const CNF< TerminalSymbolType, NonterminalSymbolType > &grammar) |
|
template<class TerminalSymbolType , class NonterminalSymbolType > |
static ext::map< NonterminalSymbolType, ext::set< ext::vector< ext::variant< TerminalSymbolType, NonterminalSymbolType > > > > | getRawRules (const CFG< TerminalSymbolType, NonterminalSymbolType > &grammar) |
|
template<class TerminalSymbolType , class NonterminalSymbolType > |
static ext::map< NonterminalSymbolType, ext::set< ext::vector< ext::variant< TerminalSymbolType, NonterminalSymbolType > > > > | getRawRules (const LeftLG< TerminalSymbolType, NonterminalSymbolType > &grammar) |
|
template<class TerminalSymbolType , class NonterminalSymbolType > |
static ext::map< NonterminalSymbolType, ext::set< ext::vector< ext::variant< TerminalSymbolType, NonterminalSymbolType > > > > | getRawRules (const LeftRG< TerminalSymbolType, NonterminalSymbolType > &grammar) |
|
template<class TerminalSymbolType , class NonterminalSymbolType > |
static ext::map< NonterminalSymbolType, ext::set< ext::vector< ext::variant< TerminalSymbolType, NonterminalSymbolType > > > > | getRawRules (const RightLG< TerminalSymbolType, NonterminalSymbolType > &grammar) |
|
template<class TerminalSymbolType , class NonterminalSymbolType > |
static ext::map< NonterminalSymbolType, ext::set< ext::vector< ext::variant< TerminalSymbolType, NonterminalSymbolType > > > > | getRawRules (const RightRG< TerminalSymbolType, NonterminalSymbolType > &grammar) |
|
Implementation of transformation from grammar specific rules to common representation, i.e. A -> (N \cup T) where A \in N and N is set of nonterminal symbols and T is set of terminal symbols of the grammar.