Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
Static Public Member Functions
grammar::properties::ReachableSymbols Class Reference

#include <ReachableSymbols.h>

Static Public Member Functions

template<class T , class TerminalSymbolType = typename grammar::TerminalSymbolTypeOfGrammar < T >, class NonterminalSymbolType = typename grammar::NonterminalSymbolTypeOfGrammar < T >>
static ext::set< ext::variant< TerminalSymbolType, NonterminalSymbolType > > getReachableSymbols (const T &grammar)
 

Detailed Description

Implements algorithms from Melichar, chapter 3.3

Member Function Documentation

◆ getReachableSymbols()

template<class T , class TerminalSymbolType , class NonterminalSymbolType >
ext::set< ext::variant< TerminalSymbolType, NonterminalSymbolType > > grammar::properties::ReachableSymbols::getReachableSymbols ( const T &  grammar)
static

Implements retrieval of symbols that are reachable, i.e. symbols a \in { b : S->*\alpha b \beta, where \alpha and \beta \in (NuT)*}

Template Parameters
Tthe tested grammar
TerminalSymbolTypethe type of terminals in the tested grammar
NonterminalSymbolTypethe type of nonterminals in the tested grammar
Parameters
grammarthe tested grammar
Returns
set of symbols that are reachable in the grammar
Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following file: