From 3db7052907dd965c939c66e322a0609f73c6be5b Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Tue, 9 Oct 2018 23:17:59 +0200 Subject: [PATCH] [65-libyang-extend-syntax] Update before regen --- src/bin/netconf/netconf_lexer.ll | 30 ++++++++++++++++++++++++++++++ src/bin/netconf/netconf_parser.yy | 27 ++++++++++++++++++++++++++- 2 files changed, 56 insertions(+), 1 deletion(-) diff --git a/src/bin/netconf/netconf_lexer.ll b/src/bin/netconf/netconf_lexer.ll index ada8236526..5862e9701c 100644 --- a/src/bin/netconf/netconf_lexer.ll +++ b/src/bin/netconf/netconf_lexer.ll @@ -206,6 +206,36 @@ ControlCharacterFill [^"\\]|\\{JSONEscapeSequence} } } +\"boot-update\" { + switch(driver.ctx_) { + case ParserContext::NETCONF: + case ParserContext::SERVER: + return NetconfParser::make_BOOT_UPDATE(driver.loc_); + default: + return NetconfParser::make_STRING("boot-update", driver.loc_); + } +} + +\"subscribe-changes\" { + switch(driver.ctx_) { + case ParserContext::NETCONF: + case ParserContext::SERVER: + return NetconfParser::make_SUBSCRIBE_CHANGES(driver.loc_); + default: + return NetconfParser::make_STRING("subscribe-changes", driver.loc_); + } +} + +\"validate-changes\" { + switch(driver.ctx_) { + case ParserContext::NETCONF: + case ParserContext::SERVER: + return NetconfParser::make_VALIDATE_CHANGES(driver.loc_); + default: + return NetconfParser::make_STRING("validate-changes", driver.loc_); + } +} + \"managed-servers\" { switch(driver.ctx_) { case ParserContext::NETCONF: diff --git a/src/bin/netconf/netconf_parser.yy b/src/bin/netconf/netconf_parser.yy index 14fc5639a4..e7ccfe38f0 100644 --- a/src/bin/netconf/netconf_parser.yy +++ b/src/bin/netconf/netconf_parser.yy @@ -53,6 +53,10 @@ using namespace std; USER_CONTEXT "user-context" COMMENT "comment" + BOOT_UPDATE "boot-update" + SUBSCRIBE_CHANGES "subscribe-changes" + VALIDATE_CHANGES "validate-changes" + MANAGED_SERVERS "managed-servers" DHCP4_SERVER "dhcp4" DHCP6_SERVER "dhcp6" @@ -268,13 +272,31 @@ not_empty_global_params: global_param // These are the parameters that are allowed in the top-level for // Netconf. -global_param: managed_servers +global_param: boot_update + | subscribe_changes + | validate_changes + | managed_servers | hooks_libraries | user_context | comment | unknown_map_entry ; +boot_update: BOOT_UPDATE COLON BOOLEAN { + ElementPtr flag(new BoolElement($3, ctx.loc2pos(@3))); + ctx.stack_.back()->set("boot-update", flag); +}; + +subscribe_changes: SUBSCRIBE_CHANGES COLON BOOLEAN { + ElementPtr flag(new BoolElement($3, ctx.loc2pos(@3))); + ctx.stack_.back()->set("subscribe-changes", flag); +}; + +validate_changes: VALIDATE_CHANGES COLON BOOLEAN { + ElementPtr flag(new BoolElement($3, ctx.loc2pos(@3))); + ctx.stack_.back()->set("validate-changes", flag); +}; + user_context: USER_CONTEXT { ctx.enter(ctx.NO_KEYWORDS); } COLON map_value { @@ -460,6 +482,9 @@ managed_server_params: managed_server_param // We currently support two server parameters: model and control-socket. managed_server_param: model + | boot_update + | subscribe_changes + | validate_changes | control_socket | user_context | comment -- 2.47.2