Kea  1.5.0
isc::netconf::NetconfParser Class Reference

A Bison parser. More...

#include <netconf_parser.h>

Classes

struct  basic_symbol
 A complete symbol. More...
 
struct  by_type
 Type access provider for token (enum) based symbols. More...
 
struct  syntax_error
 Syntax errors thrown from user actions. More...
 
struct  token
 Tokens. More...
 
union  union_type
 An auxiliary type to compute the largest semantic type. More...
 

Public Types

enum  { empty_symbol = -2 }
 The symbol type number to denote an empty symbol. More...
 
typedef int debug_level_type
 Type for debugging levels. More...
 
typedef location location_type
 Symbol locations. More...
 
typedef variant< sizeof(union_type)> semantic_type
 Symbol semantic values. More...
 
typedef int symbol_number_type
 Symbol type: an internal symbol number. More...
 
typedef basic_symbol< by_typesymbol_type
 "External" symbols: returned by the scanner. More...
 
typedef unsigned char token_number_type
 Internal symbol number for tokens (subsumed by symbol_number_type). More...
 
typedef token::yytokentype token_type
 (External) token type, as returned by yylex. More...
 

Public Member Functions

 NetconfParser (isc::netconf::ParserContext &ctx_yyarg)
 Build a parser object. More...
 
virtual ~NetconfParser ()
 
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 Member Functions

static symbol_type make_BOOLEAN (YY_COPY(bool) v, YY_COPY(location_type) l)
 
static symbol_type make_BOOT_UPDATE (YY_COPY(location_type) l)
 
static symbol_type make_CA_SERVER (YY_COPY(location_type) l)
 
static symbol_type make_COLON (YY_COPY(location_type) l)
 
static symbol_type make_COMMA (YY_COPY(location_type) l)
 
static symbol_type make_COMMENT (YY_COPY(location_type) l)
 
static symbol_type make_CONTROL_SOCKET (YY_COPY(location_type) l)
 
static symbol_type make_D2_SERVER (YY_COPY(location_type) l)
 
static symbol_type make_DEBUGLEVEL (YY_COPY(location_type) l)
 
static symbol_type make_DHCP4_SERVER (YY_COPY(location_type) l)
 
static symbol_type make_DHCP6_SERVER (YY_COPY(location_type) l)
 
static symbol_type make_END (YY_COPY(location_type) l)
 
static symbol_type make_FLOAT (YY_COPY(double) v, YY_COPY(location_type) l)
 
static symbol_type make_FLUSH (YY_COPY(location_type) l)
 
static symbol_type make_HOOKS_LIBRARIES (YY_COPY(location_type) l)
 
static symbol_type make_HTTP (YY_COPY(location_type) l)
 
static symbol_type make_INTEGER (YY_COPY(int64_t) v, YY_COPY(location_type) l)
 
static symbol_type make_LCURLY_BRACKET (YY_COPY(location_type) l)
 
static symbol_type make_LIBRARY (YY_COPY(location_type) l)
 
static symbol_type make_LOGGERS (YY_COPY(location_type) l)
 
static symbol_type make_LOGGING (YY_COPY(location_type) l)
 
static symbol_type make_LSQUARE_BRACKET (YY_COPY(location_type) l)
 
static symbol_type make_MANAGED_SERVERS (YY_COPY(location_type) l)
 
static symbol_type make_MAXSIZE (YY_COPY(location_type) l)
 
static symbol_type make_MAXVER (YY_COPY(location_type) l)
 
static symbol_type make_MODEL (YY_COPY(location_type) l)
 
static symbol_type make_NAME (YY_COPY(location_type) l)
 
static symbol_type make_NETCONF (YY_COPY(location_type) l)
 
static symbol_type make_NULL_TYPE (YY_COPY(location_type) l)
 
static symbol_type make_OUTPUT (YY_COPY(location_type) l)
 
static symbol_type make_OUTPUT_OPTIONS (YY_COPY(location_type) l)
 
static symbol_type make_PARAMETERS (YY_COPY(location_type) l)
 
static symbol_type make_RCURLY_BRACKET (YY_COPY(location_type) l)
 
static symbol_type make_RSQUARE_BRACKET (YY_COPY(location_type) l)
 
static symbol_type make_SEVERITY (YY_COPY(location_type) l)
 
static symbol_type make_SOCKET_NAME (YY_COPY(location_type) l)
 
static symbol_type make_SOCKET_TYPE (YY_COPY(location_type) l)
 
static symbol_type make_SOCKET_URL (YY_COPY(location_type) l)
 
static symbol_type make_START_JSON (YY_COPY(location_type) l)
 
static symbol_type make_START_NETCONF (YY_COPY(location_type) l)
 
static symbol_type make_START_SUB_NETCONF (YY_COPY(location_type) l)
 
static symbol_type make_STDOUT (YY_COPY(location_type) l)
 
static symbol_type make_STRING (YY_COPY(std::string) v, YY_COPY(location_type) l)
 
static symbol_type make_SUBSCRIBE_CHANGES (YY_COPY(location_type) l)
 
static symbol_type make_UNIX (YY_COPY(location_type) l)
 
static symbol_type make_USER_CONTEXT (YY_COPY(location_type) l)
 
static symbol_type make_VALIDATE_CHANGES (YY_COPY(location_type) l)
 

Detailed Description

A Bison parser.

Definition at line 494 of file netconf_parser.h.

Member Typedef Documentation

◆ debug_level_type

Type for debugging levels.

Definition at line 734 of file netconf_parser.h.

◆ location_type

Symbol locations.

Definition at line 525 of file netconf_parser.h.

◆ semantic_type

Symbol semantic values.

Definition at line 520 of file netconf_parser.h.

◆ symbol_number_type

Symbol type: an internal symbol number.

Definition at line 593 of file netconf_parser.h.

◆ symbol_type

"External" symbols: returned by the scanner.

Definition at line 713 of file netconf_parser.h.

◆ token_number_type

Internal symbol number for tokens (subsumed by symbol_number_type).

Definition at line 599 of file netconf_parser.h.

◆ token_type

(External) token type, as returned by yylex.

Definition at line 590 of file netconf_parser.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

The symbol type number to denote an empty symbol.

Enumerator
empty_symbol 

Definition at line 596 of file netconf_parser.h.

Constructor & Destructor Documentation

◆ NetconfParser()

isc::netconf::NetconfParser::NetconfParser ( isc::netconf::ParserContext ctx_yyarg)

Build a parser object.

Definition at line 186 of file netconf_parser.cc.

◆ ~NetconfParser()

isc::netconf::NetconfParser::~NetconfParser ( )
virtual

Definition at line 195 of file netconf_parser.cc.

Member Function Documentation

◆ debug_level()

NetconfParser::debug_level_type isc::netconf::NetconfParser::debug_level ( ) const

The current debugging level.

Definition at line 478 of file netconf_parser.cc.

◆ debug_stream()

std::ostream & isc::netconf::NetconfParser::debug_stream ( ) const

The current debugging stream.

Definition at line 465 of file netconf_parser.cc.

◆ error() [1/2]

void isc::netconf::NetconfParser::error ( const location_type loc,
const std::string &  msg 
)
virtual

Report a syntax error.

Parameters
locwhere the syntax error is found.
msga description of the syntax error.

Definition at line 2071 of file netconf_parser.cc.

References isc::netconf::ParserContext::error().

Referenced by error(), and parse().

+ Here is the call graph for this function:

◆ error() [2/2]

void isc::netconf::NetconfParser::error ( const syntax_error err)

Report a syntax error.

Definition at line 1628 of file netconf_parser.cc.

References error(), and isc::netconf::NetconfParser::syntax_error::location.

+ Here is the call graph for this function:

◆ make_BOOLEAN()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_BOOLEAN ( YY_COPY(bool)  v,
YY_COPY(location_type l 
)
inlinestatic

◆ make_BOOT_UPDATE()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_BOOT_UPDATE ( YY_COPY(location_type l)
inlinestatic

◆ make_CA_SERVER()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_CA_SERVER ( YY_COPY(location_type l)
inlinestatic

◆ make_COLON()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_COLON ( YY_COPY(location_type l)
inlinestatic

Definition at line 1495 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_COLON, and YY_MOVE.

◆ make_COMMA()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_COMMA ( YY_COPY(location_type l)
inlinestatic

Definition at line 1488 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_COMMA, and YY_MOVE.

◆ make_COMMENT()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_COMMENT ( YY_COPY(location_type l)
inlinestatic

◆ make_CONTROL_SOCKET()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_CONTROL_SOCKET ( YY_COPY(location_type l)
inlinestatic

◆ make_D2_SERVER()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_D2_SERVER ( YY_COPY(location_type l)
inlinestatic

◆ make_DEBUGLEVEL()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_DEBUGLEVEL ( YY_COPY(location_type l)
inlinestatic

◆ make_DHCP4_SERVER()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_DHCP4_SERVER ( YY_COPY(location_type l)
inlinestatic

◆ make_DHCP6_SERVER()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_DHCP6_SERVER ( YY_COPY(location_type l)
inlinestatic

◆ make_END()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_END ( YY_COPY(location_type l)
inlinestatic

Definition at line 1481 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_END, and YY_MOVE.

◆ make_FLOAT()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_FLOAT ( YY_COPY(double)  v,
YY_COPY(location_type l 
)
inlinestatic

Definition at line 1796 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_FLOAT, and YY_MOVE.

◆ make_FLUSH()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_FLUSH ( YY_COPY(location_type l)
inlinestatic

Definition at line 1740 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_FLUSH, and YY_MOVE.

◆ make_HOOKS_LIBRARIES()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_HOOKS_LIBRARIES ( YY_COPY(location_type l)
inlinestatic

◆ make_HTTP()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_HTTP ( YY_COPY(location_type l)
inlinestatic

Definition at line 1642 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_HTTP, and YY_MOVE.

◆ make_INTEGER()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_INTEGER ( YY_COPY(int64_t)  v,
YY_COPY(location_type l 
)
inlinestatic

◆ make_LCURLY_BRACKET()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_LCURLY_BRACKET ( YY_COPY(location_type l)
inlinestatic

◆ make_LIBRARY()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_LIBRARY ( YY_COPY(location_type l)
inlinestatic

◆ make_LOGGERS()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_LOGGERS ( YY_COPY(location_type l)
inlinestatic

◆ make_LOGGING()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_LOGGING ( YY_COPY(location_type l)
inlinestatic

◆ make_LSQUARE_BRACKET()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_LSQUARE_BRACKET ( YY_COPY(location_type l)
inlinestatic

◆ make_MANAGED_SERVERS()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_MANAGED_SERVERS ( YY_COPY(location_type l)
inlinestatic

◆ make_MAXSIZE()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_MAXSIZE ( YY_COPY(location_type l)
inlinestatic

◆ make_MAXVER()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_MAXVER ( YY_COPY(location_type l)
inlinestatic

Definition at line 1754 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_MAXVER, and YY_MOVE.

◆ make_MODEL()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_MODEL ( YY_COPY(location_type l)
inlinestatic

Definition at line 1614 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_MODEL, and YY_MOVE.

◆ make_NAME()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_NAME ( YY_COPY(location_type l)
inlinestatic

Definition at line 1705 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_NAME, and YY_MOVE.

◆ make_NETCONF()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_NETCONF ( YY_COPY(location_type l)
inlinestatic

◆ make_NULL_TYPE()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_NULL_TYPE ( YY_COPY(location_type l)
inlinestatic

◆ make_OUTPUT()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_OUTPUT ( YY_COPY(location_type l)
inlinestatic

Definition at line 1719 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_OUTPUT, and YY_MOVE.

◆ make_OUTPUT_OPTIONS()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_OUTPUT_OPTIONS ( YY_COPY(location_type l)
inlinestatic

◆ make_PARAMETERS()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_PARAMETERS ( YY_COPY(location_type l)
inlinestatic

◆ make_RCURLY_BRACKET()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_RCURLY_BRACKET ( YY_COPY(location_type l)
inlinestatic

◆ make_RSQUARE_BRACKET()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_RSQUARE_BRACKET ( YY_COPY(location_type l)
inlinestatic

◆ make_SEVERITY()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_SEVERITY ( YY_COPY(location_type l)
inlinestatic

◆ make_SOCKET_NAME()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_SOCKET_NAME ( YY_COPY(location_type l)
inlinestatic

◆ make_SOCKET_TYPE()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_SOCKET_TYPE ( YY_COPY(location_type l)
inlinestatic

◆ make_SOCKET_URL()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_SOCKET_URL ( YY_COPY(location_type l)
inlinestatic

◆ make_START_JSON()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_START_JSON ( YY_COPY(location_type l)
inlinestatic

◆ make_START_NETCONF()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_START_NETCONF ( YY_COPY(location_type l)
inlinestatic

◆ make_START_SUB_NETCONF()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_START_SUB_NETCONF ( YY_COPY(location_type l)
inlinestatic

◆ make_STDOUT()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_STDOUT ( YY_COPY(location_type l)
inlinestatic

Definition at line 1649 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_STDOUT, and YY_MOVE.

◆ make_STRING()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_STRING ( YY_COPY(std::string)  v,
YY_COPY(location_type l 
)
inlinestatic

Definition at line 1782 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_STRING, and YY_MOVE.

◆ make_SUBSCRIBE_CHANGES()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_SUBSCRIBE_CHANGES ( YY_COPY(location_type l)
inlinestatic

◆ make_UNIX()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_UNIX ( YY_COPY(location_type l)
inlinestatic

Definition at line 1635 of file netconf_parser.h.

References isc::netconf::NetconfParser::token::TOKEN_UNIX, and YY_MOVE.

◆ make_USER_CONTEXT()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_USER_CONTEXT ( YY_COPY(location_type l)
inlinestatic

◆ make_VALIDATE_CHANGES()

NetconfParser::symbol_type isc::netconf::NetconfParser::make_VALIDATE_CHANGES ( YY_COPY(location_type l)
inlinestatic

◆ operator()()

int isc::netconf::NetconfParser::operator() ( )

Parse.

An alias for parse ().

Returns
0 iff parsing succeeded.

Definition at line 513 of file netconf_parser.cc.

References parse().

+ Here is the call graph for this function:

◆ parse()

int isc::netconf::NetconfParser::parse ( )
virtual

◆ set_debug_level()

void isc::netconf::NetconfParser::set_debug_level ( debug_level_type  l)

Set the current debugging level.

Definition at line 484 of file netconf_parser.cc.

◆ set_debug_stream()

void isc::netconf::NetconfParser::set_debug_stream ( std::ostream &  o)

Set the current debugging stream.

Definition at line 471 of file netconf_parser.cc.


The documentation for this class was generated from the following files: