A generic node representing a block in the configuration file.
Definition ConfigNode.hpp:24
bool isTokenAValue() const
Definition Parser.cpp:62
void addDirective(ConfigNode &node, DirectivePair const &pair) const
Definition Parser.cpp:50
void handleStatement()
Definition Parser.cpp:79
void handleServerBlock()
Definition Parser.cpp:68
Token const & currentToken() const
Definition Parser.cpp:21
static std::vector< ConfigNode > parse(TokenArray const &)
Definition Parser.cpp:11
void consumeToken()
Definition Parser.cpp:33
DirectivePair handleDirective()
Definition Parser.cpp:104
void expectToken(TokenType type)
Definition Parser.cpp:38
Token const & peekToken() const
Definition Parser.cpp:27
size_t pos_
Definition Parser.hpp:36
TokenArray const & tokens_
Definition Parser.hpp:35
size_t size() const
Definition Parser.cpp:17
std::vector< ConfigNode > nodes_
Definition Parser.hpp:34
void handleLocationBlock()
Definition Parser.cpp:86
void displayCurrentToken() const
Definition ConfigException.hpp:6
std::vector< Token > TokenArray
Definition Lexer.hpp:8
std::pair< std::string, DirectiveArgs > DirectivePair
Definition ConfigNode.hpp:13
TokenType
Represents the type of a lexical token.
Definition Token.hpp:12
Represents a single lexical token with a type and a literal value.
Definition Token.hpp:28