pd_alg_first.cpp File Reference

functions related to the first function More...

#include "pd_alg_first.h"

Go to the source code of this file.

Namespaces

namespace  faudes
 

libFAUDES resides within the namespace faudes.


Functions

GrammarSymbolWordSet faudes::PostCl (const GrammarSymbolVector &word)
 Construct the postfix closure of a word.
GrammarSymbolWordSet faudes::Fds (const Grammar &gr)
 Determine certain words in a grammar.
GrammarSymbolWordMap faudes::First1 (const Grammar &gr, const GrammarSymbolWordMap &f, bool *madeChanges)
 Updates the function which maps words to their first possible terminal symbols.
GrammarSymbolWordMap faudes::FirstL (const Grammar &gr, const GrammarSymbolWordMap &f)
 Builds a function that maps words to their first possible terminal symbols by recursively calling First1.
std::set< Terminal > faudes::FirstA (const Grammar &gr, const GrammarSymbolVector &word)
 Determines which terminals can come first for a given word.
std::set< Terminal > faudes::First (const Grammar &gr, const GrammarSymbolVector &word)
 Determines which terminals can come first for a given word.
std::set< Terminal > faudes::FirstRed (const Grammar &gr, const GrammarSymbolVector &word)
 Calls first, but only if all symbols in the word are in the grammar as well.
NonterminalPtr faudes::Filter1 (const std::set< Nonterminal > &symbolSet, const GrammarSymbolVector &w)
 Extract the first symbol from the word that is in the symbol set.
std::set< Terminal > faudes::FirstAll (const Grammar &gr, const GrammarSymbolVector &word)
 Determines which terminals can come first for a given word and ensures that the word can be entirely reduced.
std::set< Terminal > faudes::FirstLeq1 (const Grammar &gr, uint k, const GrammarSymbolVector &word)
 Determine which terminals can come first for a given word for any k <= 1.
void faudes::WriteMap (GrammarSymbolWordMap f, bool changed=false)
 Convenience print function for first map function.

Detailed Description

functions related to the first function

Definition in file pd_alg_first.cpp.

libFAUDES 2.23h --- 2014.04.03 --- c++ api documentaion by doxygen