Kea
1.9.9-git
|
A Bison parser. More...
#include <agent_parser.h>
Classes | |
struct | basic_symbol |
A complete symbol. More... | |
struct | by_kind |
Type access provider for token (enum) based symbols. More... | |
class | context |
class | semantic_type |
A buffer to store and retrieve objects. More... | |
struct | symbol_kind |
Symbol kinds. More... | |
struct | symbol_type |
"External" symbols: returned by the scanner. More... | |
struct | syntax_error |
Syntax errors thrown from user actions. More... | |
struct | token |
Token kinds. More... | |
Public Types | |
typedef by_kind | by_type |
Backward compatibility for a private implementation detail (Bison 3.6). More... | |
typedef int | debug_level_type |
Type for debugging levels. More... | |
typedef location | location_type |
Symbol locations. More... | |
typedef symbol_kind::symbol_kind_type | symbol_kind_type |
(Internal) symbol kind. More... | |
typedef token::yytokentype | token_kind_type |
Token kind, as returned by yylex. More... | |
typedef token_kind_type | token_type |
Backward compatibility alias (Bison 3.6). More... | |
Public Member Functions | |
AgentParser (isc::agent::ParserContext &ctx_yyarg) | |
Build a parser object. More... | |
virtual | ~AgentParser () |
debug_level_type | debug_level () const YY_ATTRIBUTE_PURE |
The current debugging level. More... | |
std::ostream & | debug_stream () const YY_ATTRIBUTE_PURE |
The current debugging stream. More... | |
virtual void | error (const location_type &loc, const std::string &msg) |
Report a syntax error. More... | |
void | error (const syntax_error &err) |
Report a syntax error. More... | |
int | operator() () |
Parse. More... | |
virtual int | parse () |
Parse. More... | |
void | set_debug_level (debug_level_type l) |
Set the current debugging level. More... | |
void | set_debug_stream (std::ostream &) |
Set the current debugging stream. More... | |
Static Public Attributes | |
static const symbol_kind_type | YYNTOKENS = symbol_kind::YYNTOKENS |
The number of tokens. More... | |
A Bison parser.
Definition at line 208 of file agent_parser.h.
Backward compatibility for a private implementation detail (Bison 3.6).
Definition at line 991 of file agent_parser.h.
typedef int isc::agent::AgentParser::debug_level_type |
Type for debugging levels.
Definition at line 1082 of file agent_parser.h.
typedef location isc::agent::AgentParser::location_type |
Symbol locations.
Definition at line 455 of file agent_parser.h.
(Internal) symbol kind.
Definition at line 724 of file agent_parser.h.
Token kind, as returned by yylex.
Definition at line 540 of file agent_parser.h.
Backward compatibility alias (Bison 3.6).
Definition at line 543 of file agent_parser.h.
isc::agent::AgentParser::AgentParser | ( | isc::agent::ParserContext & | ctx_yyarg | ) |
Build a parser object.
Definition at line 147 of file agent_parser.cc.
|
virtual |
Definition at line 157 of file agent_parser.cc.
AgentParser::debug_level_type isc::agent::AgentParser::debug_level | ( | ) | const |
The current debugging level.
Definition at line 480 of file agent_parser.cc.
std::ostream & isc::agent::AgentParser::debug_stream | ( | ) | const |
The current debugging stream.
Definition at line 467 of file agent_parser.cc.
|
virtual |
Report a syntax error.
loc | where the syntax error is found. |
msg | a description of the syntax error. |
Definition at line 2349 of file agent_parser.cc.
void isc::agent::AgentParser::error | ( | const syntax_error & | err | ) |
Report a syntax error.
Definition at line 1813 of file agent_parser.cc.
References error(), and isc::agent::AgentParser::syntax_error::location.
|
inlinestatic |
Definition at line 1127 of file agent_parser.h.
|
inlinestatic |
Definition at line 1142 of file agent_parser.h.
|
inlinestatic |
Definition at line 1337 of file agent_parser.h.
|
inlinestatic |
Definition at line 1367 of file agent_parser.h.
|
inlinestatic |
Definition at line 1892 of file agent_parser.h.
|
inlinestatic |
Definition at line 1457 of file agent_parser.h.
|
inlinestatic |
Definition at line 1487 of file agent_parser.h.
|
inlinestatic |
Definition at line 1397 of file agent_parser.h.
|
inlinestatic |
Definition at line 1172 of file agent_parser.h.
|
inlinestatic |
Definition at line 1157 of file agent_parser.h.
|
inlinestatic |
Definition at line 1322 of file agent_parser.h.
|
inlinestatic |
Definition at line 1262 of file agent_parser.h.
|
inlinestatic |
Definition at line 1502 of file agent_parser.h.
|
inlinestatic |
Definition at line 1547 of file agent_parser.h.
|
inlinestatic |
Definition at line 1712 of file agent_parser.h.
|
inlinestatic |
Definition at line 1517 of file agent_parser.h.
|
inlinestatic |
Definition at line 1532 of file agent_parser.h.
|
inlinestatic |
Definition at line 1112 of file agent_parser.h.
|
inlinestatic |
Definition at line 1877 of file agent_parser.h.
|
inlinestatic |
Definition at line 1742 of file agent_parser.h.
|
inlinestatic |
Definition at line 1607 of file agent_parser.h.
|
inlinestatic |
Definition at line 1277 of file agent_parser.h.
|
inlinestatic |
Definition at line 1292 of file agent_parser.h.
|
inlinestatic |
Definition at line 1862 of file agent_parser.h.
|
inlinestatic |
Definition at line 1472 of file agent_parser.h.
|
inlinestatic |
Definition at line 1217 of file agent_parser.h.
|
inlinestatic |
Definition at line 1622 of file agent_parser.h.
|
inlinestatic |
Definition at line 1652 of file agent_parser.h.
|
inlinestatic |
Definition at line 1187 of file agent_parser.h.
|
inlinestatic |
Definition at line 1757 of file agent_parser.h.
|
inlinestatic |
Definition at line 1772 of file agent_parser.h.
|
inlinestatic |
Definition at line 1667 of file agent_parser.h.
|
inlinestatic |
Definition at line 1247 of file agent_parser.h.
|
inlinestatic |
Definition at line 1697 of file agent_parser.h.
|
inlinestatic |
Definition at line 1682 of file agent_parser.h.
|
inlinestatic |
Definition at line 1637 of file agent_parser.h.
|
inlinestatic |
Definition at line 1427 of file agent_parser.h.
|
inlinestatic |
Definition at line 1787 of file agent_parser.h.
|
inlinestatic |
Definition at line 1232 of file agent_parser.h.
|
inlinestatic |
Definition at line 1382 of file agent_parser.h.
|
inlinestatic |
Definition at line 1202 of file agent_parser.h.
|
inlinestatic |
Definition at line 1727 of file agent_parser.h.
|
inlinestatic |
Definition at line 1562 of file agent_parser.h.
|
inlinestatic |
Definition at line 1577 of file agent_parser.h.
|
inlinestatic |
Definition at line 1817 of file agent_parser.h.
Referenced by if().
|
inlinestatic |
Definition at line 1802 of file agent_parser.h.
Referenced by if().
|
inlinestatic |
Definition at line 1832 of file agent_parser.h.
Referenced by if().
|
inlinestatic |
Definition at line 1847 of file agent_parser.h.
|
inlinestatic |
Definition at line 1442 of file agent_parser.h.
|
inlinestatic |
Definition at line 1352 of file agent_parser.h.
|
inlinestatic |
Definition at line 1592 of file agent_parser.h.
|
inlinestatic |
Definition at line 1412 of file agent_parser.h.
|
inlinestatic |
Definition at line 1307 of file agent_parser.h.
int isc::agent::AgentParser::operator() | ( | ) |
Parse.
An alias for parse ().
Definition at line 515 of file agent_parser.cc.
References parse().
|
virtual |
Parse.
Length of the RHS of the rule being reduced.
The lookahead symbol.
The locations where the error started and ended.
The return value of parse ().
Definition at line 521 of file agent_parser.cc.
References isc::agent::ParserContext::AGENT, isc::agent::ParserContext::AUTH_TYPE, isc::agent::ParserContext::AUTHENTICATION, isc::agent::AgentParser::basic_symbol< Base >::clear(), isc::agent::ParserContext::CLIENTS, isc::agent::ParserContext::CONFIG, isc::agent::ParserContext::contextName(), isc::agent::ParserContext::CONTROL_SOCKETS, isc::agent::ParserContext::ctx_, isc::agent::AgentParser::basic_symbol< Base >::empty(), isc::agent::ParserContext::enter(), error(), isc::agent::ParserContext::HOOKS_LIBRARIES, isc::agent::AgentParser::by_kind::kind(), isc::agent::AgentParser::by_kind::kind_, isc::agent::ParserContext::leave(), isc::agent::ParserContext::loc2pos(), isc::agent::AgentParser::basic_symbol< Base >::location, isc::agent::ParserContext::LOGGERS, isc::data::merge(), isc::agent::AgentParser::basic_symbol< Base >::move(), isc::agent::ParserContext::NO_KEYWORDS, isc::agent::ParserContext::OUTPUT_OPTIONS, isc::agent::ParserContext::require(), isc::agent::AgentParser::symbol_kind::S_auth_type_value, isc::agent::AgentParser::symbol_kind::S_BOOLEAN, isc::agent::AgentParser::symbol_kind::S_FLOAT, isc::agent::AgentParser::symbol_kind::S_INTEGER, isc::agent::AgentParser::symbol_kind::S_map_value, isc::agent::AgentParser::symbol_kind::S_socket_type_value, isc::agent::AgentParser::symbol_kind::S_STRING, isc::agent::AgentParser::symbol_kind::S_value, isc::agent::AgentParser::symbol_kind::S_YYEOF, isc::agent::AgentParser::symbol_kind::S_YYerror, isc::agent::AgentParser::symbol_kind::S_YYUNDEF, isc::agent::ParserContext::SERVER, isc::agent::ParserContext::SOCKET_TYPE, isc::agent::ParserContext::stack_, isc::agent::ParserContext::unique(), YY_MOVE, YY_REDUCE_PRINT, YY_STACK_PRINT, YY_SYMBOL_PRINT, YYABORT, YYACCEPT, YYCDEBUG, YYERROR, yylex, and YYLLOC_DEFAULT.
Referenced by operator()().
void isc::agent::AgentParser::set_debug_level | ( | debug_level_type | l | ) |
Set the current debugging level.
Definition at line 486 of file agent_parser.cc.
void isc::agent::AgentParser::set_debug_stream | ( | std::ostream & | o | ) |
Set the current debugging stream.
Definition at line 473 of file agent_parser.cc.
|
static |
The user-facing name of the symbol whose (internal) number is YYSYMBOL.
No bounds checking.
Definition at line 1859 of file agent_parser.cc.
Referenced by isc::agent::AgentParser::basic_symbol< by_state >::name().
|
static |
The number of tokens.
Definition at line 727 of file agent_parser.h.
Referenced by isc::agent::AgentParser::context::expected_tokens().