Webserv
|
Namespaces | |
namespace | details |
Classes | |
class | Block |
Base class for configuration blocks like 'server' and 'location'. More... | |
class | ConfigError |
class | ConfigException |
class | ConfigNode |
A generic node representing a block in the configuration file. More... | |
class | ConfigWarning |
class | DirectiveHandler |
class | Lexer |
A static utility class that performs lexical analysis on a config string. More... | |
class | LocationBlock |
Represents a single 'location' block from the configuration file. More... | |
class | Mapper |
Translates a generic ConfigNode tree into strongly-typed config blocks. More... | |
class | Parser |
Performs syntax analysis on a stream of tokens to build a configuration tree. More... | |
class | ServerBlock |
Represents a single 'server' block from the configuration file. More... | |
class | ServerConfig |
A strongly-typed data container for a server block's configuration. More... | |
struct | Token |
Represents a single lexical token with a type and a literal value. More... | |
class | Validator |
Performs semantic validation on mapped configuration blocks. More... |
Typedefs | |
typedef std::vector< std::string > | StringVector |
typedef std::map< std::string, StringVector > | DirectiveMap |
typedef std::vector< std::string > | DirectiveArgs |
typedef std::pair< std::string, DirectiveArgs > | DirectivePair |
typedef std::vector< ConfigNode > | ConfigNodeVec |
typedef enum config::TokenType | TokenType |
typedef struct config::Token | Token |
typedef std::vector< Token > | TokenArray |
typedef std::map< std::string, LocationBlock > | LocationBlockMap |
typedef std::vector< ServerBlock > | ServerBlockVec |
typedef std::map< int, ServerBlockVec > | ServerBlockMap |
Enumerations | |
enum | TokenType { IDENTIFIER , STRING , NUMBER , ENDPOINT , LEFT_BRACE , RIGHT_BRACE , SEMICOLON , UNKNOWN , END_OF_FILE } |
Represents the type of a lexical token. More... |
Functions | |
void | issue_warning (const std::string &msg) |
std::ostream & | operator<< (std::ostream &o, Token const &t) |
std::ostream & | operator<< (std::ostream &o, TokenType const t) |
std::ostream & | operator<< (std::ostream &o, LocationBlock const &t) |
std::ostream & | operator<< (std::ostream &o, ServerBlock const &t) |
std::ostream & | operator<< (std::ostream &o, ServerConfig const &t) |
typedef std::vector<ConfigNode> config::ConfigNodeVec |
typedef std::vector<std::string> config::DirectiveArgs |
typedef std::map< std::string, DirectiveArgs > config::DirectiveMap |
typedef std::pair<std::string, DirectiveArgs> config::DirectivePair |
typedef std::map<std::string, LocationBlock> config::LocationBlockMap |
typedef std::map<int, ServerBlockVec> config::ServerBlockMap |
typedef std::vector<ServerBlock> config::ServerBlockVec |
typedef std::vector<std::string> config::StringVector |
typedef struct config::Token config::Token |
typedef std::vector<Token> config::TokenArray |
typedef enum config::TokenType config::TokenType |
enum config::TokenType |
Represents the type of a lexical token.
void config::issue_warning | ( | const std::string & | msg | ) |
std::ostream & config::operator<< | ( | std::ostream & | o, |
LocationBlock const & | t ) |
std::ostream & config::operator<< | ( | std::ostream & | o, |
ServerBlock const & | t ) |
std::ostream & config::operator<< | ( | std::ostream & | o, |
ServerConfig const & | t ) |
std::ostream & config::operator<< | ( | std::ostream & | o, |
Token const & | t ) |
std::ostream & config::operator<< | ( | std::ostream & | o, |
TokenType const | t ) |