buffalo
|
#include <memory>
#include <algorithm>
#include <cctype>
#include <expected>
#include <map>
#include <optional>
#include <ranges>
#include <set>
#include <stack>
#include <stdexcept>
#include <variant>
#include <vector>
#include <ctre.hpp>
#include <ctll.hpp>
Go to the source code of this file.
Classes | |
struct | bf::overload< Ts > |
struct | bf::Location |
struct | bf::Error |
struct | bf::GrammarDefinitionError |
struct | bf::ParsingError |
struct | bf::ProductionRuleList< G > |
struct | bf::Token< G > |
struct | bf::Dummy |
class | bf::GrammarDefinition< GValueType, GUserDataType > |
struct | bf::DebugSymbol |
class | bf::Terminal< G > |
class | bf::DefineTerminal< G, regex, SemanticType > |
class | bf::NonTerminal< G > |
class | bf::DefineNonTerminal< G, SemanticValue > |
class | bf::ProductionRule< G > |
class | bf::Grammar< G > |
struct | bf::LRItem< G > |
struct | bf::LRState< G > |
struct | bf::LRAction< G > |
class | bf::Parser< G > |
class | bf::SLRParser< G > |
Namespaces | |
namespace | bf |
Concepts | |
concept | bf::IGrammar |
Typedefs | |
template<IGrammar G> | |
using | bf::Symbol = std::variant< Terminal< G > *, NonTerminal< G > * > |
template<IGrammar G> | |
using | bf::PR = ProductionRule< G > |
using | bf::lrstate_id_t = std::size_t |
Enumerations | |
enum | bf::Associativity { bf::None , bf::Left , bf::Right } |
enum class | bf::LRActionType { bf::kError , bf::kAccept , bf::kShift , bf::kReduce } |
Functions | |
template<class... Ts> | |
bf::overload (Ts...) -> overload< Ts... > | |
template<IGrammar G> | |
ProductionRule< G > | bf::operator+ (Terminal< G > &lhs, Terminal< G > &rhs) |
template<IGrammar G> | |
ProductionRule< G > | bf::operator+ (Terminal< G > &lhs, NonTerminal< G > &rhs) |
template<IGrammar G> | |
ProductionRule< G > | bf::operator+ (NonTerminal< G > &lhs, NonTerminal< G > &rhs) |
template<IGrammar G> | |
ProductionRule< G > | bf::operator+ (NonTerminal< G > &lhs, Terminal< G > &rhs) |
template<IGrammar G> | |
ProductionRuleList< G > | bf::operator| (ProductionRule< G > const &lhs, ProductionRule< G > const &rhs) |
Variables | |
template<class... > | |
constexpr bool | bf::always_false_v = false |