} COLON outbound_interface_value {
ctx.stack_.back()->set("outbound-interface", $4);
ctx.leave();
-}
+};
outbound_interface_value: SAME_AS_INBOUND {
$$ = ElementPtr(new StringElement("same-as-inbound", ctx.loc2pos(@1)));
request_timeout: REQUEST_TIMEOUT COLON INTEGER {
ElementPtr n(new IntElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("request-timeout", n);
-}
+};
tcp_keepalive: TCP_KEEPALIVE COLON INTEGER {
ElementPtr n(new IntElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("tcp-keepalive", n);
-}
+};
tcp_nodelay: TCP_NODELAY COLON BOOLEAN {
ElementPtr n(new BoolElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("tcp-nodelay", n);
-}
+};
contact_points: CONTACT_POINTS {
ctx.enter(ctx.NO_KEYWORD);
flex_id: FLEX_ID {
ElementPtr flex_id(new StringElement("flex-id", ctx.loc2pos(@1)));
ctx.stack_.back()->add(flex_id);
-}
+};
hooks_libraries: HOOKS_LIBRARIES {
ElementPtr l(new ListElement(ctx.loc2pos(@1)));
ctx.stack_.push_back(m);
} shared_network_params RCURLY_BRACKET {
ctx.stack_.pop_back();
-}
+};
shared_network_params: shared_network_param
| shared_network_params COMMA shared_network_param
flush: FLUSH COLON BOOLEAN {
ElementPtr flush(new BoolElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("flush", flush);
-}
+};
maxsize: MAXSIZE COLON INTEGER {
ElementPtr maxsize(new IntElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("maxsize", maxsize);
-}
+};
maxver: MAXVER COLON INTEGER {
ElementPtr maxver(new IntElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("maxver", maxver);
-}
+};
%%
reconnect_wait_time: RECONNECT_WAIT_TIME COLON INTEGER {
ElementPtr n(new IntElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("reconnect-wait-time", n);
-}
+};
request_timeout: REQUEST_TIMEOUT COLON INTEGER {
ElementPtr n(new IntElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("request-timeout", n);
-}
+};
tcp_keepalive: TCP_KEEPALIVE COLON INTEGER {
ElementPtr n(new IntElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("tcp-keepalive", n);
-}
+};
tcp_nodelay: TCP_NODELAY COLON BOOLEAN {
ElementPtr n(new BoolElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("tcp-nodelay", n);
-}
+};
contact_points: CONTACT_POINTS {
ctx.enter(ctx.NO_KEYWORD);
ctx.stack_.push_back(m);
} shared_network_params RCURLY_BRACKET {
ctx.stack_.pop_back();
-}
+};
shared_network_params: shared_network_param
| shared_network_params COMMA shared_network_param
flush: FLUSH COLON BOOLEAN {
ElementPtr flush(new BoolElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("flush", flush);
-}
+};
maxsize: MAXSIZE COLON INTEGER {
ElementPtr maxsize(new IntElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("maxsize", maxsize);
-}
+};
maxver: MAXVER COLON INTEGER {
ElementPtr maxver(new IntElement($3, ctx.loc2pos(@3)));
ctx.stack_.back()->set("maxver", maxver);
-}
+};
%%