buffalo
|
Classes | |
struct | DebugSymbol |
class | DefineNonTerminal |
class | DefineTerminal |
struct | Dummy |
struct | Error |
class | Grammar |
class | GrammarDefinition |
struct | GrammarDefinitionError |
struct | Location |
struct | LRAction |
struct | LRItem |
struct | LRState |
class | NonTerminal |
struct | overload |
class | Parser |
struct | ParsingError |
class | ProductionRule |
struct | ProductionRuleList |
class | SLRParser |
class | Terminal |
struct | Token |
Concepts | |
concept | IGrammar |
Typedefs | |
template<IGrammar G> | |
using | Symbol = std::variant< Terminal< G > *, NonTerminal< G > * > |
template<IGrammar G> | |
using | PR = ProductionRule< G > |
using | lrstate_id_t = std::size_t |
Enumerations | |
enum | Associativity { None , Left , Right } |
enum class | LRActionType { kError , kAccept , kShift , kReduce } |
Functions | |
template<class... Ts> | |
overload (Ts...) -> overload< Ts... > | |
template<IGrammar G> | |
ProductionRule< G > | operator+ (Terminal< G > &lhs, Terminal< G > &rhs) |
template<IGrammar G> | |
ProductionRule< G > | operator+ (Terminal< G > &lhs, NonTerminal< G > &rhs) |
template<IGrammar G> | |
ProductionRule< G > | operator+ (NonTerminal< G > &lhs, NonTerminal< G > &rhs) |
template<IGrammar G> | |
ProductionRule< G > | operator+ (NonTerminal< G > &lhs, Terminal< G > &rhs) |
template<IGrammar G> | |
ProductionRuleList< G > | operator| (ProductionRule< G > const &lhs, ProductionRule< G > const &rhs) |
Variables | |
template<class... > | |
constexpr bool | always_false_v = false |
using bf::lrstate_id_t = typedef std::size_t |
using bf::PR = typedef ProductionRule<G> |
using bf::Symbol = typedef std::variant<Terminal<G>*, NonTerminal<G>*> |
|
strong |
ProductionRule< G > bf::operator+ | ( | NonTerminal< G > & | lhs, |
NonTerminal< G > & | rhs | ||
) |
ProductionRule< G > bf::operator+ | ( | NonTerminal< G > & | lhs, |
Terminal< G > & | rhs | ||
) |
ProductionRule< G > bf::operator+ | ( | Terminal< G > & | lhs, |
NonTerminal< G > & | rhs | ||
) |
ProductionRule< G > bf::operator+ | ( | Terminal< G > & | lhs, |
Terminal< G > & | rhs | ||
) |
ProductionRuleList< G > bf::operator| | ( | ProductionRule< G > const & | lhs, |
ProductionRule< G > const & | rhs | ||
) |
bf::overload | ( | Ts... | ) | -> overload< Ts... > |