Kea 2.7.5
dhcp6_parser.h
Go to the documentation of this file.
1// A Bison parser, made by GNU Bison 3.8.2.
2
3// Skeleton interface for Bison LALR(1) parsers in C++
4
5// Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc.
6
7// This program is free software: you can redistribute it and/or modify
8// it under the terms of the GNU General Public License as published by
9// the Free Software Foundation, either version 3 of the License, or
10// (at your option) any later version.
11
12// This program is distributed in the hope that it will be useful,
13// but WITHOUT ANY WARRANTY; without even the implied warranty of
14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15// GNU General Public License for more details.
16
17// You should have received a copy of the GNU General Public License
18// along with this program. If not, see <https://www.gnu.org/licenses/>.
19
20// As a special exception, you may create a larger work that contains
21// part or all of the Bison parser skeleton and distribute that work
22// under terms of your choice, so long as that work isn't itself a
23// parser generator using the skeleton or a modified version thereof
24// as a parser skeleton. Alternatively, if you modify or redistribute
25// the parser skeleton itself, you may (at your option) remove this
26// special exception, which will cause the skeleton and the resulting
27// Bison output files to be licensed under the GNU General Public
28// License without this special exception.
29
30// This special exception was added by the Free Software Foundation in
31// version 2.2 of Bison.
32
33
39// C++ LALR(1) parser skeleton written by Akim Demaille.
40
41// DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
42// especially those whose name start with YY_ or yy_. They are
43// private implementation details that can be changed or removed.
44
45#ifndef YY_PARSER6_DHCP6_PARSER_H_INCLUDED
46# define YY_PARSER6_DHCP6_PARSER_H_INCLUDED
47// "%code requires" blocks.
48#line 17 "dhcp6_parser.yy"
49
50#include <string>
51#include <cc/data.h>
52#include <dhcp/option.h>
53#include <boost/lexical_cast.hpp>
55
56using namespace isc::dhcp;
57using namespace isc::data;
58using namespace std;
59
60#line 61 "dhcp6_parser.h"
61
62# include <cassert>
63# include <cstdlib> // std::abort
64# include <iostream>
65# include <stdexcept>
66# include <string>
67# include <vector>
68
69#if defined __cplusplus
70# define YY_CPLUSPLUS __cplusplus
71#else
72# define YY_CPLUSPLUS 199711L
73#endif
74
75// Support move semantics when possible.
76#if 201103L <= YY_CPLUSPLUS
77# define YY_MOVE std::move
78# define YY_MOVE_OR_COPY move
79# define YY_MOVE_REF(Type) Type&&
80# define YY_RVREF(Type) Type&&
81# define YY_COPY(Type) Type
82#else
83# define YY_MOVE
84# define YY_MOVE_OR_COPY copy
85# define YY_MOVE_REF(Type) Type&
86# define YY_RVREF(Type) const Type&
87# define YY_COPY(Type) const Type&
88#endif
89
90// Support noexcept when possible.
91#if 201103L <= YY_CPLUSPLUS
92# define YY_NOEXCEPT noexcept
93# define YY_NOTHROW
94#else
95# define YY_NOEXCEPT
96# define YY_NOTHROW throw ()
97#endif
98
99// Support constexpr when possible.
100#if 201703 <= YY_CPLUSPLUS
101# define YY_CONSTEXPR constexpr
102#else
103# define YY_CONSTEXPR
104#endif
105# include "location.hh"
106#include <typeinfo>
107#ifndef PARSER6__ASSERT
108# include <cassert>
109# define PARSER6__ASSERT assert
110#endif
111
112
113#ifndef YY_ATTRIBUTE_PURE
114# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
115# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
116# else
117# define YY_ATTRIBUTE_PURE
118# endif
119#endif
120
121#ifndef YY_ATTRIBUTE_UNUSED
122# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
123# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
124# else
125# define YY_ATTRIBUTE_UNUSED
126# endif
127#endif
128
129/* Suppress unused-variable warnings by "using" E. */
130#if ! defined lint || defined __GNUC__
131# define YY_USE(E) ((void) (E))
132#else
133# define YY_USE(E) /* empty */
134#endif
135
136/* Suppress an incorrect diagnostic about yylval being uninitialized. */
137#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
138# if __GNUC__ * 100 + __GNUC_MINOR__ < 407
139# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
140 _Pragma ("GCC diagnostic push") \
141 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
142# else
143# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
144 _Pragma ("GCC diagnostic push") \
145 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
146 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
147# endif
148# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
149 _Pragma ("GCC diagnostic pop")
150#else
151# define YY_INITIAL_VALUE(Value) Value
152#endif
153#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
154# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
155# define YY_IGNORE_MAYBE_UNINITIALIZED_END
156#endif
157#ifndef YY_INITIAL_VALUE
158# define YY_INITIAL_VALUE(Value) /* Nothing. */
159#endif
160
161#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
162# define YY_IGNORE_USELESS_CAST_BEGIN \
163 _Pragma ("GCC diagnostic push") \
164 _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
165# define YY_IGNORE_USELESS_CAST_END \
166 _Pragma ("GCC diagnostic pop")
167#endif
168#ifndef YY_IGNORE_USELESS_CAST_BEGIN
169# define YY_IGNORE_USELESS_CAST_BEGIN
170# define YY_IGNORE_USELESS_CAST_END
171#endif
172
173# ifndef YY_CAST
174# ifdef __cplusplus
175# define YY_CAST(Type, Val) static_cast<Type> (Val)
176# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
177# else
178# define YY_CAST(Type, Val) ((Type) (Val))
179# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
180# endif
181# endif
182# ifndef YY_NULLPTR
183# if defined __cplusplus
184# if 201103L <= __cplusplus
185# define YY_NULLPTR nullptr
186# else
187# define YY_NULLPTR 0
188# endif
189# else
190# define YY_NULLPTR ((void*)0)
191# endif
192# endif
193
194/* Debug traces. */
195#ifndef PARSER6_DEBUG
196# if defined YYDEBUG
197#if YYDEBUG
198# define PARSER6_DEBUG 1
199# else
200# define PARSER6_DEBUG 0
201# endif
202# else /* ! defined YYDEBUG */
203# define PARSER6_DEBUG 1
204# endif /* ! defined YYDEBUG */
205#endif /* ! defined PARSER6_DEBUG */
206
207#line 14 "dhcp6_parser.yy"
208namespace isc { namespace dhcp {
209#line 210 "dhcp6_parser.h"
210
211
212
213
216 {
217 public:
218#ifdef PARSER6_STYPE
219# ifdef __GNUC__
220# pragma GCC message "bison: do not #define PARSER6_STYPE in C++, use %define api.value.type"
221# endif
222 typedef PARSER6_STYPE value_type;
223#else
230 {
231 public:
234
237 : yyraw_ ()
238 , yytypeid_ (YY_NULLPTR)
239 {}
240
242 template <typename T>
244 : yytypeid_ (&typeid (T))
245 {
246 PARSER6__ASSERT (sizeof (T) <= size);
247 new (yyas_<T> ()) T (YY_MOVE (t));
248 }
249
250#if 201103L <= YY_CPLUSPLUS
252 value_type (const self_type&) = delete;
254 self_type& operator= (const self_type&) = delete;
255#endif
256
259 {
260 PARSER6__ASSERT (!yytypeid_);
261 }
262
263# if 201103L <= YY_CPLUSPLUS
265 template <typename T, typename... U>
266 T&
267 emplace (U&&... u)
268 {
269 PARSER6__ASSERT (!yytypeid_);
270 PARSER6__ASSERT (sizeof (T) <= size);
271 yytypeid_ = & typeid (T);
272 return *new (yyas_<T> ()) T (std::forward <U>(u)...);
273 }
274# else
276 template <typename T>
277 T&
279 {
280 PARSER6__ASSERT (!yytypeid_);
281 PARSER6__ASSERT (sizeof (T) <= size);
282 yytypeid_ = & typeid (T);
283 return *new (yyas_<T> ()) T ();
284 }
285
287 template <typename T>
288 T&
289 emplace (const T& t)
290 {
291 PARSER6__ASSERT (!yytypeid_);
292 PARSER6__ASSERT (sizeof (T) <= size);
293 yytypeid_ = & typeid (T);
294 return *new (yyas_<T> ()) T (t);
295 }
296# endif
297
300 template <typename T>
301 T&
303 {
304 return emplace<T> ();
305 }
306
309 template <typename T>
310 T&
311 build (const T& t)
312 {
313 return emplace<T> (t);
314 }
315
317 template <typename T>
318 T&
320 {
321 PARSER6__ASSERT (yytypeid_);
322 PARSER6__ASSERT (*yytypeid_ == typeid (T));
323 PARSER6__ASSERT (sizeof (T) <= size);
324 return *yyas_<T> ();
325 }
326
328 template <typename T>
329 const T&
331 {
332 PARSER6__ASSERT (yytypeid_);
333 PARSER6__ASSERT (*yytypeid_ == typeid (T));
334 PARSER6__ASSERT (sizeof (T) <= size);
335 return *yyas_<T> ();
336 }
337
346 template <typename T>
347 void
349 {
350 PARSER6__ASSERT (yytypeid_);
351 PARSER6__ASSERT (*yytypeid_ == *that.yytypeid_);
352 std::swap (as<T> (), that.as<T> ());
353 }
354
358 template <typename T>
359 void
361 {
362# if 201103L <= YY_CPLUSPLUS
363 emplace<T> (std::move (that.as<T> ()));
364# else
365 emplace<T> ();
366 swap<T> (that);
367# endif
368 that.destroy<T> ();
369 }
370
371# if 201103L <= YY_CPLUSPLUS
373 template <typename T>
374 void
375 move (self_type&& that)
376 {
377 emplace<T> (std::move (that.as<T> ()));
378 that.destroy<T> ();
379 }
380#endif
381
383 template <typename T>
384 void
385 copy (const self_type& that)
386 {
387 emplace<T> (that.as<T> ());
388 }
389
391 template <typename T>
392 void
394 {
395 as<T> ().~T ();
396 yytypeid_ = YY_NULLPTR;
397 }
398
399 private:
400#if YY_CPLUSPLUS < 201103L
402 value_type (const self_type&);
404 self_type& operator= (const self_type&);
405#endif
406
408 template <typename T>
409 T*
410 yyas_ () YY_NOEXCEPT
411 {
412 void *yyp = yyraw_;
413 return static_cast<T*> (yyp);
414 }
415
417 template <typename T>
418 const T*
419 yyas_ () const YY_NOEXCEPT
420 {
421 const void *yyp = yyraw_;
422 return static_cast<const T*> (yyp);
423 }
424
426 union union_type
427 {
428 // value
429 // map_value
430 // ddns_replace_client_name_value
431 // ddns_conflict_resolution_mode_value
432 // on_fail_mode
433 // duid_type
434 // control_socket_type_value
435 // auth_type_value
436 // ncr_protocol_value
437 char dummy1[sizeof (ElementPtr)];
438
439 // "boolean"
440 char dummy2[sizeof (bool)];
441
442 // "floating point"
443 char dummy3[sizeof (double)];
444
445 // "integer"
446 char dummy4[sizeof (int64_t)];
447
448 // "constant string"
449 char dummy5[sizeof (std::string)];
450 };
451
453 enum { size = sizeof (union_type) };
454
456 union
457 {
459 long double yyalign_me_;
461 char yyraw_[size];
462 };
463
465 const std::type_info *yytypeid_;
466 };
467
468#endif
471
473 typedef location location_type;
474
476 struct syntax_error : std::runtime_error
477 {
478 syntax_error (const location_type& l, const std::string& m)
479 : std::runtime_error (m)
480 , location (l)
481 {}
482
484 : std::runtime_error (s.what ())
485 , location (s.location)
486 {}
487
489
491 };
492
494 struct token
495 {
497 {
498 TOKEN_PARSER6_EMPTY = -2,
499 TOKEN_END = 0, // "end of file"
500 TOKEN_PARSER6_error = 256, // error
501 TOKEN_PARSER6_UNDEF = 257, // "invalid token"
502 TOKEN_COMMA = 258, // ","
503 TOKEN_COLON = 259, // ":"
504 TOKEN_LSQUARE_BRACKET = 260, // "["
505 TOKEN_RSQUARE_BRACKET = 261, // "]"
506 TOKEN_LCURLY_BRACKET = 262, // "{"
507 TOKEN_RCURLY_BRACKET = 263, // "}"
508 TOKEN_NULL_TYPE = 264, // "null"
509 TOKEN_DHCP6 = 265, // "Dhcp6"
510 TOKEN_DATA_DIRECTORY = 266, // "data-directory"
511 TOKEN_CONFIG_CONTROL = 267, // "config-control"
512 TOKEN_CONFIG_DATABASES = 268, // "config-databases"
513 TOKEN_CONFIG_FETCH_WAIT_TIME = 269, // "config-fetch-wait-time"
514 TOKEN_INTERFACES_CONFIG = 270, // "interfaces-config"
515 TOKEN_INTERFACES = 271, // "interfaces"
516 TOKEN_RE_DETECT = 272, // "re-detect"
517 TOKEN_SERVICE_SOCKETS_REQUIRE_ALL = 273, // "service-sockets-require-all"
518 TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME = 274, // "service-sockets-retry-wait-time"
519 TOKEN_SERVICE_SOCKETS_MAX_RETRIES = 275, // "service-sockets-max-retries"
520 TOKEN_LEASE_DATABASE = 276, // "lease-database"
521 TOKEN_HOSTS_DATABASE = 277, // "hosts-database"
522 TOKEN_HOSTS_DATABASES = 278, // "hosts-databases"
523 TOKEN_TYPE = 279, // "type"
524 TOKEN_USER = 280, // "user"
525 TOKEN_PASSWORD = 281, // "password"
526 TOKEN_HOST = 282, // "host"
527 TOKEN_PORT = 283, // "port"
528 TOKEN_PERSIST = 284, // "persist"
529 TOKEN_LFC_INTERVAL = 285, // "lfc-interval"
530 TOKEN_READONLY = 286, // "readonly"
531 TOKEN_CONNECT_TIMEOUT = 287, // "connect-timeout"
532 TOKEN_READ_TIMEOUT = 288, // "read-timeout"
533 TOKEN_WRITE_TIMEOUT = 289, // "write-timeout"
534 TOKEN_TCP_USER_TIMEOUT = 290, // "tcp-user-timeout"
535 TOKEN_MAX_RECONNECT_TRIES = 291, // "max-reconnect-tries"
536 TOKEN_RECONNECT_WAIT_TIME = 292, // "reconnect-wait-time"
537 TOKEN_ON_FAIL = 293, // "on-fail"
538 TOKEN_STOP_RETRY_EXIT = 294, // "stop-retry-exit"
539 TOKEN_SERVE_RETRY_EXIT = 295, // "serve-retry-exit"
540 TOKEN_SERVE_RETRY_CONTINUE = 296, // "serve-retry-continue"
541 TOKEN_RETRY_ON_STARTUP = 297, // "retry-on-startup"
542 TOKEN_MAX_ROW_ERRORS = 298, // "max-row-errors"
543 TOKEN_TRUST_ANCHOR = 299, // "trust-anchor"
544 TOKEN_CERT_FILE = 300, // "cert-file"
545 TOKEN_KEY_FILE = 301, // "key-file"
546 TOKEN_CIPHER_LIST = 302, // "cipher-list"
547 TOKEN_PREFERRED_LIFETIME = 303, // "preferred-lifetime"
548 TOKEN_MIN_PREFERRED_LIFETIME = 304, // "min-preferred-lifetime"
549 TOKEN_MAX_PREFERRED_LIFETIME = 305, // "max-preferred-lifetime"
550 TOKEN_VALID_LIFETIME = 306, // "valid-lifetime"
551 TOKEN_MIN_VALID_LIFETIME = 307, // "min-valid-lifetime"
552 TOKEN_MAX_VALID_LIFETIME = 308, // "max-valid-lifetime"
553 TOKEN_RENEW_TIMER = 309, // "renew-timer"
554 TOKEN_REBIND_TIMER = 310, // "rebind-timer"
555 TOKEN_CALCULATE_TEE_TIMES = 311, // "calculate-tee-times"
556 TOKEN_T1_PERCENT = 312, // "t1-percent"
557 TOKEN_T2_PERCENT = 313, // "t2-percent"
558 TOKEN_CACHE_THRESHOLD = 314, // "cache-threshold"
559 TOKEN_CACHE_MAX_AGE = 315, // "cache-max-age"
560 TOKEN_DECLINE_PROBATION_PERIOD = 316, // "decline-probation-period"
561 TOKEN_SERVER_TAG = 317, // "server-tag"
562 TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT = 318, // "statistic-default-sample-count"
563 TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE = 319, // "statistic-default-sample-age"
564 TOKEN_DDNS_SEND_UPDATES = 320, // "ddns-send-updates"
565 TOKEN_DDNS_OVERRIDE_NO_UPDATE = 321, // "ddns-override-no-update"
566 TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE = 322, // "ddns-override-client-update"
567 TOKEN_DDNS_REPLACE_CLIENT_NAME = 323, // "ddns-replace-client-name"
568 TOKEN_DDNS_GENERATED_PREFIX = 324, // "ddns-generated-prefix"
569 TOKEN_DDNS_QUALIFYING_SUFFIX = 325, // "ddns-qualifying-suffix"
570 TOKEN_DDNS_UPDATE_ON_RENEW = 326, // "ddns-update-on-renew"
571 TOKEN_DDNS_USE_CONFLICT_RESOLUTION = 327, // "ddns-use-conflict-resolution"
572 TOKEN_DDNS_TTL_PERCENT = 328, // "ddns-ttl-percent"
573 TOKEN_STORE_EXTENDED_INFO = 329, // "store-extended-info"
574 TOKEN_SUBNET6 = 330, // "subnet6"
575 TOKEN_OPTION_DEF = 331, // "option-def"
576 TOKEN_OPTION_DATA = 332, // "option-data"
577 TOKEN_NAME = 333, // "name"
578 TOKEN_DATA = 334, // "data"
579 TOKEN_CODE = 335, // "code"
580 TOKEN_SPACE = 336, // "space"
581 TOKEN_CSV_FORMAT = 337, // "csv-format"
582 TOKEN_ALWAYS_SEND = 338, // "always-send"
583 TOKEN_NEVER_SEND = 339, // "never-send"
584 TOKEN_RECORD_TYPES = 340, // "record-types"
585 TOKEN_ENCAPSULATE = 341, // "encapsulate"
586 TOKEN_ARRAY = 342, // "array"
587 TOKEN_PARKED_PACKET_LIMIT = 343, // "parked-packet-limit"
588 TOKEN_ALLOCATOR = 344, // "allocator"
589 TOKEN_PD_ALLOCATOR = 345, // "pd-allocator"
590 TOKEN_DDNS_CONFLICT_RESOLUTION_MODE = 346, // "ddns-conflict-resolution-mode"
591 TOKEN_CHECK_WITH_DHCID = 347, // "check-with-dhcid"
592 TOKEN_NO_CHECK_WITH_DHCID = 348, // "no-check-with-dhcid"
593 TOKEN_CHECK_EXISTS_WITH_DHCID = 349, // "check-exists-with-dhcid"
594 TOKEN_NO_CHECK_WITHOUT_DHCID = 350, // "no-check-without-dhcid"
595 TOKEN_SHARED_NETWORKS = 351, // "shared-networks"
596 TOKEN_POOLS = 352, // "pools"
597 TOKEN_POOL = 353, // "pool"
598 TOKEN_PD_POOLS = 354, // "pd-pools"
599 TOKEN_PREFIX = 355, // "prefix"
600 TOKEN_PREFIX_LEN = 356, // "prefix-len"
601 TOKEN_EXCLUDED_PREFIX = 357, // "excluded-prefix"
602 TOKEN_EXCLUDED_PREFIX_LEN = 358, // "excluded-prefix-len"
603 TOKEN_DELEGATED_LEN = 359, // "delegated-len"
604 TOKEN_USER_CONTEXT = 360, // "user-context"
605 TOKEN_COMMENT = 361, // "comment"
606 TOKEN_SUBNET = 362, // "subnet"
607 TOKEN_INTERFACE = 363, // "interface"
608 TOKEN_INTERFACE_ID = 364, // "interface-id"
609 TOKEN_ID = 365, // "id"
610 TOKEN_RAPID_COMMIT = 366, // "rapid-commit"
611 TOKEN_RESERVATIONS_GLOBAL = 367, // "reservations-global"
612 TOKEN_RESERVATIONS_IN_SUBNET = 368, // "reservations-in-subnet"
613 TOKEN_RESERVATIONS_OUT_OF_POOL = 369, // "reservations-out-of-pool"
614 TOKEN_MAC_SOURCES = 370, // "mac-sources"
615 TOKEN_RELAY_SUPPLIED_OPTIONS = 371, // "relay-supplied-options"
616 TOKEN_HOST_RESERVATION_IDENTIFIERS = 372, // "host-reservation-identifiers"
617 TOKEN_SANITY_CHECKS = 373, // "sanity-checks"
618 TOKEN_LEASE_CHECKS = 374, // "lease-checks"
619 TOKEN_EXTENDED_INFO_CHECKS = 375, // "extended-info-checks"
620 TOKEN_CLIENT_CLASSES = 376, // "client-classes"
621 TOKEN_REQUIRE_CLIENT_CLASSES = 377, // "require-client-classes"
622 TOKEN_EVALUATE_ADDITIONAL_CLASSES = 378, // "evaluate-additional-classes"
623 TOKEN_TEST = 379, // "test"
624 TOKEN_TEMPLATE_TEST = 380, // "template-test"
625 TOKEN_ONLY_IF_REQUIRED = 381, // "only-if-required"
626 TOKEN_ONLY_IN_ADDITIONAL_LIST = 382, // "only-in-additional-list"
627 TOKEN_CLIENT_CLASS = 383, // "client-class"
628 TOKEN_POOL_ID = 384, // "pool-id"
629 TOKEN_RESERVATIONS = 385, // "reservations"
630 TOKEN_IP_ADDRESSES = 386, // "ip-addresses"
631 TOKEN_PREFIXES = 387, // "prefixes"
632 TOKEN_EXCLUDED_PREFIXES = 388, // "excluded-prefixes"
633 TOKEN_DUID = 389, // "duid"
634 TOKEN_HW_ADDRESS = 390, // "hw-address"
635 TOKEN_HOSTNAME = 391, // "hostname"
636 TOKEN_FLEX_ID = 392, // "flex-id"
637 TOKEN_RELAY = 393, // "relay"
638 TOKEN_HOOKS_LIBRARIES = 394, // "hooks-libraries"
639 TOKEN_LIBRARY = 395, // "library"
640 TOKEN_PARAMETERS = 396, // "parameters"
641 TOKEN_EXPIRED_LEASES_PROCESSING = 397, // "expired-leases-processing"
642 TOKEN_RECLAIM_TIMER_WAIT_TIME = 398, // "reclaim-timer-wait-time"
643 TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 399, // "flush-reclaimed-timer-wait-time"
644 TOKEN_HOLD_RECLAIMED_TIME = 400, // "hold-reclaimed-time"
645 TOKEN_MAX_RECLAIM_LEASES = 401, // "max-reclaim-leases"
646 TOKEN_MAX_RECLAIM_TIME = 402, // "max-reclaim-time"
647 TOKEN_UNWARNED_RECLAIM_CYCLES = 403, // "unwarned-reclaim-cycles"
648 TOKEN_SERVER_ID = 404, // "server-id"
649 TOKEN_LLT = 405, // "LLT"
650 TOKEN_EN = 406, // "EN"
651 TOKEN_LL = 407, // "LL"
652 TOKEN_IDENTIFIER = 408, // "identifier"
653 TOKEN_HTYPE = 409, // "htype"
654 TOKEN_TIME = 410, // "time"
655 TOKEN_ENTERPRISE_ID = 411, // "enterprise-id"
656 TOKEN_DHCP4O6_PORT = 412, // "dhcp4o6-port"
657 TOKEN_DHCP_MULTI_THREADING = 413, // "multi-threading"
658 TOKEN_ENABLE_MULTI_THREADING = 414, // "enable-multi-threading"
659 TOKEN_THREAD_POOL_SIZE = 415, // "thread-pool-size"
660 TOKEN_PACKET_QUEUE_SIZE = 416, // "packet-queue-size"
661 TOKEN_CONTROL_SOCKET = 417, // "control-socket"
662 TOKEN_CONTROL_SOCKETS = 418, // "control-sockets"
663 TOKEN_SOCKET_TYPE = 419, // "socket-type"
664 TOKEN_UNIX = 420, // "unix"
665 TOKEN_HTTP = 421, // "http"
666 TOKEN_HTTPS = 422, // "https"
667 TOKEN_SOCKET_NAME = 423, // "socket-name"
668 TOKEN_SOCKET_ADDRESS = 424, // "socket-address"
669 TOKEN_SOCKET_PORT = 425, // "socket-port"
670 TOKEN_AUTHENTICATION = 426, // "authentication"
671 TOKEN_BASIC = 427, // "basic"
672 TOKEN_REALM = 428, // "realm"
673 TOKEN_DIRECTORY = 429, // "directory"
674 TOKEN_CLIENTS = 430, // "clients"
675 TOKEN_USER_FILE = 431, // "user-file"
676 TOKEN_PASSWORD_FILE = 432, // "password-file"
677 TOKEN_CERT_REQUIRED = 433, // "cert-required"
678 TOKEN_DHCP_QUEUE_CONTROL = 434, // "dhcp-queue-control"
679 TOKEN_ENABLE_QUEUE = 435, // "enable-queue"
680 TOKEN_QUEUE_TYPE = 436, // "queue-type"
681 TOKEN_CAPACITY = 437, // "capacity"
682 TOKEN_DHCP_DDNS = 438, // "dhcp-ddns"
683 TOKEN_ENABLE_UPDATES = 439, // "enable-updates"
684 TOKEN_SERVER_IP = 440, // "server-ip"
685 TOKEN_SERVER_PORT = 441, // "server-port"
686 TOKEN_SENDER_IP = 442, // "sender-ip"
687 TOKEN_SENDER_PORT = 443, // "sender-port"
688 TOKEN_MAX_QUEUE_SIZE = 444, // "max-queue-size"
689 TOKEN_NCR_PROTOCOL = 445, // "ncr-protocol"
690 TOKEN_NCR_FORMAT = 446, // "ncr-format"
691 TOKEN_UDP = 447, // "UDP"
692 TOKEN_TCP = 448, // "TCP"
693 TOKEN_JSON = 449, // "JSON"
694 TOKEN_WHEN_PRESENT = 450, // "when-present"
695 TOKEN_NEVER = 451, // "never"
696 TOKEN_ALWAYS = 452, // "always"
697 TOKEN_WHEN_NOT_PRESENT = 453, // "when-not-present"
698 TOKEN_HOSTNAME_CHAR_SET = 454, // "hostname-char-set"
699 TOKEN_HOSTNAME_CHAR_REPLACEMENT = 455, // "hostname-char-replacement"
700 TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP = 456, // "early-global-reservations-lookup"
701 TOKEN_IP_RESERVATIONS_UNIQUE = 457, // "ip-reservations-unique"
702 TOKEN_RESERVATIONS_LOOKUP_FIRST = 458, // "reservations-lookup-first"
703 TOKEN_LOGGERS = 459, // "loggers"
704 TOKEN_OUTPUT_OPTIONS = 460, // "output-options"
705 TOKEN_OUTPUT = 461, // "output"
706 TOKEN_DEBUGLEVEL = 462, // "debuglevel"
707 TOKEN_SEVERITY = 463, // "severity"
708 TOKEN_FLUSH = 464, // "flush"
709 TOKEN_MAXSIZE = 465, // "maxsize"
710 TOKEN_MAXVER = 466, // "maxver"
711 TOKEN_PATTERN = 467, // "pattern"
712 TOKEN_COMPATIBILITY = 468, // "compatibility"
713 TOKEN_LENIENT_OPTION_PARSING = 469, // "lenient-option-parsing"
714 TOKEN_TOPLEVEL_JSON = 470, // TOPLEVEL_JSON
715 TOKEN_TOPLEVEL_DHCP6 = 471, // TOPLEVEL_DHCP6
716 TOKEN_SUB_DHCP6 = 472, // SUB_DHCP6
717 TOKEN_SUB_INTERFACES6 = 473, // SUB_INTERFACES6
718 TOKEN_SUB_SUBNET6 = 474, // SUB_SUBNET6
719 TOKEN_SUB_POOL6 = 475, // SUB_POOL6
720 TOKEN_SUB_PD_POOL = 476, // SUB_PD_POOL
721 TOKEN_SUB_RESERVATION = 477, // SUB_RESERVATION
722 TOKEN_SUB_OPTION_DEFS = 478, // SUB_OPTION_DEFS
723 TOKEN_SUB_OPTION_DEF = 479, // SUB_OPTION_DEF
724 TOKEN_SUB_OPTION_DATA = 480, // SUB_OPTION_DATA
725 TOKEN_SUB_HOOKS_LIBRARY = 481, // SUB_HOOKS_LIBRARY
726 TOKEN_SUB_DHCP_DDNS = 482, // SUB_DHCP_DDNS
727 TOKEN_SUB_CONFIG_CONTROL = 483, // SUB_CONFIG_CONTROL
728 TOKEN_STRING = 484, // "constant string"
729 TOKEN_INTEGER = 485, // "integer"
730 TOKEN_FLOAT = 486, // "floating point"
731 TOKEN_BOOLEAN = 487 // "boolean"
732 };
735 };
736
739
742
745 {
747 {
748 YYNTOKENS = 233,
749 S_YYEMPTY = -2,
750 S_YYEOF = 0, // "end of file"
751 S_YYerror = 1, // error
752 S_YYUNDEF = 2, // "invalid token"
753 S_COMMA = 3, // ","
754 S_COLON = 4, // ":"
755 S_LSQUARE_BRACKET = 5, // "["
756 S_RSQUARE_BRACKET = 6, // "]"
757 S_LCURLY_BRACKET = 7, // "{"
758 S_RCURLY_BRACKET = 8, // "}"
759 S_NULL_TYPE = 9, // "null"
760 S_DHCP6 = 10, // "Dhcp6"
761 S_DATA_DIRECTORY = 11, // "data-directory"
762 S_CONFIG_CONTROL = 12, // "config-control"
763 S_CONFIG_DATABASES = 13, // "config-databases"
764 S_CONFIG_FETCH_WAIT_TIME = 14, // "config-fetch-wait-time"
765 S_INTERFACES_CONFIG = 15, // "interfaces-config"
766 S_INTERFACES = 16, // "interfaces"
767 S_RE_DETECT = 17, // "re-detect"
768 S_SERVICE_SOCKETS_REQUIRE_ALL = 18, // "service-sockets-require-all"
769 S_SERVICE_SOCKETS_RETRY_WAIT_TIME = 19, // "service-sockets-retry-wait-time"
770 S_SERVICE_SOCKETS_MAX_RETRIES = 20, // "service-sockets-max-retries"
771 S_LEASE_DATABASE = 21, // "lease-database"
772 S_HOSTS_DATABASE = 22, // "hosts-database"
773 S_HOSTS_DATABASES = 23, // "hosts-databases"
774 S_TYPE = 24, // "type"
775 S_USER = 25, // "user"
776 S_PASSWORD = 26, // "password"
777 S_HOST = 27, // "host"
778 S_PORT = 28, // "port"
779 S_PERSIST = 29, // "persist"
780 S_LFC_INTERVAL = 30, // "lfc-interval"
781 S_READONLY = 31, // "readonly"
782 S_CONNECT_TIMEOUT = 32, // "connect-timeout"
783 S_READ_TIMEOUT = 33, // "read-timeout"
784 S_WRITE_TIMEOUT = 34, // "write-timeout"
785 S_TCP_USER_TIMEOUT = 35, // "tcp-user-timeout"
786 S_MAX_RECONNECT_TRIES = 36, // "max-reconnect-tries"
787 S_RECONNECT_WAIT_TIME = 37, // "reconnect-wait-time"
788 S_ON_FAIL = 38, // "on-fail"
789 S_STOP_RETRY_EXIT = 39, // "stop-retry-exit"
790 S_SERVE_RETRY_EXIT = 40, // "serve-retry-exit"
791 S_SERVE_RETRY_CONTINUE = 41, // "serve-retry-continue"
792 S_RETRY_ON_STARTUP = 42, // "retry-on-startup"
793 S_MAX_ROW_ERRORS = 43, // "max-row-errors"
794 S_TRUST_ANCHOR = 44, // "trust-anchor"
795 S_CERT_FILE = 45, // "cert-file"
796 S_KEY_FILE = 46, // "key-file"
797 S_CIPHER_LIST = 47, // "cipher-list"
798 S_PREFERRED_LIFETIME = 48, // "preferred-lifetime"
799 S_MIN_PREFERRED_LIFETIME = 49, // "min-preferred-lifetime"
800 S_MAX_PREFERRED_LIFETIME = 50, // "max-preferred-lifetime"
801 S_VALID_LIFETIME = 51, // "valid-lifetime"
802 S_MIN_VALID_LIFETIME = 52, // "min-valid-lifetime"
803 S_MAX_VALID_LIFETIME = 53, // "max-valid-lifetime"
804 S_RENEW_TIMER = 54, // "renew-timer"
805 S_REBIND_TIMER = 55, // "rebind-timer"
806 S_CALCULATE_TEE_TIMES = 56, // "calculate-tee-times"
807 S_T1_PERCENT = 57, // "t1-percent"
808 S_T2_PERCENT = 58, // "t2-percent"
809 S_CACHE_THRESHOLD = 59, // "cache-threshold"
810 S_CACHE_MAX_AGE = 60, // "cache-max-age"
811 S_DECLINE_PROBATION_PERIOD = 61, // "decline-probation-period"
812 S_SERVER_TAG = 62, // "server-tag"
813 S_STATISTIC_DEFAULT_SAMPLE_COUNT = 63, // "statistic-default-sample-count"
814 S_STATISTIC_DEFAULT_SAMPLE_AGE = 64, // "statistic-default-sample-age"
815 S_DDNS_SEND_UPDATES = 65, // "ddns-send-updates"
816 S_DDNS_OVERRIDE_NO_UPDATE = 66, // "ddns-override-no-update"
817 S_DDNS_OVERRIDE_CLIENT_UPDATE = 67, // "ddns-override-client-update"
818 S_DDNS_REPLACE_CLIENT_NAME = 68, // "ddns-replace-client-name"
819 S_DDNS_GENERATED_PREFIX = 69, // "ddns-generated-prefix"
820 S_DDNS_QUALIFYING_SUFFIX = 70, // "ddns-qualifying-suffix"
821 S_DDNS_UPDATE_ON_RENEW = 71, // "ddns-update-on-renew"
822 S_DDNS_USE_CONFLICT_RESOLUTION = 72, // "ddns-use-conflict-resolution"
823 S_DDNS_TTL_PERCENT = 73, // "ddns-ttl-percent"
824 S_STORE_EXTENDED_INFO = 74, // "store-extended-info"
825 S_SUBNET6 = 75, // "subnet6"
826 S_OPTION_DEF = 76, // "option-def"
827 S_OPTION_DATA = 77, // "option-data"
828 S_NAME = 78, // "name"
829 S_DATA = 79, // "data"
830 S_CODE = 80, // "code"
831 S_SPACE = 81, // "space"
832 S_CSV_FORMAT = 82, // "csv-format"
833 S_ALWAYS_SEND = 83, // "always-send"
834 S_NEVER_SEND = 84, // "never-send"
835 S_RECORD_TYPES = 85, // "record-types"
836 S_ENCAPSULATE = 86, // "encapsulate"
837 S_ARRAY = 87, // "array"
838 S_PARKED_PACKET_LIMIT = 88, // "parked-packet-limit"
839 S_ALLOCATOR = 89, // "allocator"
840 S_PD_ALLOCATOR = 90, // "pd-allocator"
841 S_DDNS_CONFLICT_RESOLUTION_MODE = 91, // "ddns-conflict-resolution-mode"
842 S_CHECK_WITH_DHCID = 92, // "check-with-dhcid"
843 S_NO_CHECK_WITH_DHCID = 93, // "no-check-with-dhcid"
844 S_CHECK_EXISTS_WITH_DHCID = 94, // "check-exists-with-dhcid"
845 S_NO_CHECK_WITHOUT_DHCID = 95, // "no-check-without-dhcid"
846 S_SHARED_NETWORKS = 96, // "shared-networks"
847 S_POOLS = 97, // "pools"
848 S_POOL = 98, // "pool"
849 S_PD_POOLS = 99, // "pd-pools"
850 S_PREFIX = 100, // "prefix"
851 S_PREFIX_LEN = 101, // "prefix-len"
852 S_EXCLUDED_PREFIX = 102, // "excluded-prefix"
853 S_EXCLUDED_PREFIX_LEN = 103, // "excluded-prefix-len"
854 S_DELEGATED_LEN = 104, // "delegated-len"
855 S_USER_CONTEXT = 105, // "user-context"
856 S_COMMENT = 106, // "comment"
857 S_SUBNET = 107, // "subnet"
858 S_INTERFACE = 108, // "interface"
859 S_INTERFACE_ID = 109, // "interface-id"
860 S_ID = 110, // "id"
861 S_RAPID_COMMIT = 111, // "rapid-commit"
862 S_RESERVATIONS_GLOBAL = 112, // "reservations-global"
863 S_RESERVATIONS_IN_SUBNET = 113, // "reservations-in-subnet"
864 S_RESERVATIONS_OUT_OF_POOL = 114, // "reservations-out-of-pool"
865 S_MAC_SOURCES = 115, // "mac-sources"
866 S_RELAY_SUPPLIED_OPTIONS = 116, // "relay-supplied-options"
867 S_HOST_RESERVATION_IDENTIFIERS = 117, // "host-reservation-identifiers"
868 S_SANITY_CHECKS = 118, // "sanity-checks"
869 S_LEASE_CHECKS = 119, // "lease-checks"
870 S_EXTENDED_INFO_CHECKS = 120, // "extended-info-checks"
871 S_CLIENT_CLASSES = 121, // "client-classes"
872 S_REQUIRE_CLIENT_CLASSES = 122, // "require-client-classes"
873 S_EVALUATE_ADDITIONAL_CLASSES = 123, // "evaluate-additional-classes"
874 S_TEST = 124, // "test"
875 S_TEMPLATE_TEST = 125, // "template-test"
876 S_ONLY_IF_REQUIRED = 126, // "only-if-required"
877 S_ONLY_IN_ADDITIONAL_LIST = 127, // "only-in-additional-list"
878 S_CLIENT_CLASS = 128, // "client-class"
879 S_POOL_ID = 129, // "pool-id"
880 S_RESERVATIONS = 130, // "reservations"
881 S_IP_ADDRESSES = 131, // "ip-addresses"
882 S_PREFIXES = 132, // "prefixes"
883 S_EXCLUDED_PREFIXES = 133, // "excluded-prefixes"
884 S_DUID = 134, // "duid"
885 S_HW_ADDRESS = 135, // "hw-address"
886 S_HOSTNAME = 136, // "hostname"
887 S_FLEX_ID = 137, // "flex-id"
888 S_RELAY = 138, // "relay"
889 S_HOOKS_LIBRARIES = 139, // "hooks-libraries"
890 S_LIBRARY = 140, // "library"
891 S_PARAMETERS = 141, // "parameters"
892 S_EXPIRED_LEASES_PROCESSING = 142, // "expired-leases-processing"
893 S_RECLAIM_TIMER_WAIT_TIME = 143, // "reclaim-timer-wait-time"
894 S_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 144, // "flush-reclaimed-timer-wait-time"
895 S_HOLD_RECLAIMED_TIME = 145, // "hold-reclaimed-time"
896 S_MAX_RECLAIM_LEASES = 146, // "max-reclaim-leases"
897 S_MAX_RECLAIM_TIME = 147, // "max-reclaim-time"
898 S_UNWARNED_RECLAIM_CYCLES = 148, // "unwarned-reclaim-cycles"
899 S_SERVER_ID = 149, // "server-id"
900 S_LLT = 150, // "LLT"
901 S_EN = 151, // "EN"
902 S_LL = 152, // "LL"
903 S_IDENTIFIER = 153, // "identifier"
904 S_HTYPE = 154, // "htype"
905 S_TIME = 155, // "time"
906 S_ENTERPRISE_ID = 156, // "enterprise-id"
907 S_DHCP4O6_PORT = 157, // "dhcp4o6-port"
908 S_DHCP_MULTI_THREADING = 158, // "multi-threading"
909 S_ENABLE_MULTI_THREADING = 159, // "enable-multi-threading"
910 S_THREAD_POOL_SIZE = 160, // "thread-pool-size"
911 S_PACKET_QUEUE_SIZE = 161, // "packet-queue-size"
912 S_CONTROL_SOCKET = 162, // "control-socket"
913 S_CONTROL_SOCKETS = 163, // "control-sockets"
914 S_SOCKET_TYPE = 164, // "socket-type"
915 S_UNIX = 165, // "unix"
916 S_HTTP = 166, // "http"
917 S_HTTPS = 167, // "https"
918 S_SOCKET_NAME = 168, // "socket-name"
919 S_SOCKET_ADDRESS = 169, // "socket-address"
920 S_SOCKET_PORT = 170, // "socket-port"
921 S_AUTHENTICATION = 171, // "authentication"
922 S_BASIC = 172, // "basic"
923 S_REALM = 173, // "realm"
924 S_DIRECTORY = 174, // "directory"
925 S_CLIENTS = 175, // "clients"
926 S_USER_FILE = 176, // "user-file"
927 S_PASSWORD_FILE = 177, // "password-file"
928 S_CERT_REQUIRED = 178, // "cert-required"
929 S_DHCP_QUEUE_CONTROL = 179, // "dhcp-queue-control"
930 S_ENABLE_QUEUE = 180, // "enable-queue"
931 S_QUEUE_TYPE = 181, // "queue-type"
932 S_CAPACITY = 182, // "capacity"
933 S_DHCP_DDNS = 183, // "dhcp-ddns"
934 S_ENABLE_UPDATES = 184, // "enable-updates"
935 S_SERVER_IP = 185, // "server-ip"
936 S_SERVER_PORT = 186, // "server-port"
937 S_SENDER_IP = 187, // "sender-ip"
938 S_SENDER_PORT = 188, // "sender-port"
939 S_MAX_QUEUE_SIZE = 189, // "max-queue-size"
940 S_NCR_PROTOCOL = 190, // "ncr-protocol"
941 S_NCR_FORMAT = 191, // "ncr-format"
942 S_UDP = 192, // "UDP"
943 S_TCP = 193, // "TCP"
944 S_JSON = 194, // "JSON"
945 S_WHEN_PRESENT = 195, // "when-present"
946 S_NEVER = 196, // "never"
947 S_ALWAYS = 197, // "always"
948 S_WHEN_NOT_PRESENT = 198, // "when-not-present"
949 S_HOSTNAME_CHAR_SET = 199, // "hostname-char-set"
950 S_HOSTNAME_CHAR_REPLACEMENT = 200, // "hostname-char-replacement"
951 S_EARLY_GLOBAL_RESERVATIONS_LOOKUP = 201, // "early-global-reservations-lookup"
952 S_IP_RESERVATIONS_UNIQUE = 202, // "ip-reservations-unique"
953 S_RESERVATIONS_LOOKUP_FIRST = 203, // "reservations-lookup-first"
954 S_LOGGERS = 204, // "loggers"
955 S_OUTPUT_OPTIONS = 205, // "output-options"
956 S_OUTPUT = 206, // "output"
957 S_DEBUGLEVEL = 207, // "debuglevel"
958 S_SEVERITY = 208, // "severity"
959 S_FLUSH = 209, // "flush"
960 S_MAXSIZE = 210, // "maxsize"
961 S_MAXVER = 211, // "maxver"
962 S_PATTERN = 212, // "pattern"
963 S_COMPATIBILITY = 213, // "compatibility"
964 S_LENIENT_OPTION_PARSING = 214, // "lenient-option-parsing"
965 S_TOPLEVEL_JSON = 215, // TOPLEVEL_JSON
966 S_TOPLEVEL_DHCP6 = 216, // TOPLEVEL_DHCP6
967 S_SUB_DHCP6 = 217, // SUB_DHCP6
968 S_SUB_INTERFACES6 = 218, // SUB_INTERFACES6
969 S_SUB_SUBNET6 = 219, // SUB_SUBNET6
970 S_SUB_POOL6 = 220, // SUB_POOL6
971 S_SUB_PD_POOL = 221, // SUB_PD_POOL
972 S_SUB_RESERVATION = 222, // SUB_RESERVATION
973 S_SUB_OPTION_DEFS = 223, // SUB_OPTION_DEFS
974 S_SUB_OPTION_DEF = 224, // SUB_OPTION_DEF
975 S_SUB_OPTION_DATA = 225, // SUB_OPTION_DATA
976 S_SUB_HOOKS_LIBRARY = 226, // SUB_HOOKS_LIBRARY
977 S_SUB_DHCP_DDNS = 227, // SUB_DHCP_DDNS
978 S_SUB_CONFIG_CONTROL = 228, // SUB_CONFIG_CONTROL
979 S_STRING = 229, // "constant string"
980 S_INTEGER = 230, // "integer"
981 S_FLOAT = 231, // "floating point"
982 S_BOOLEAN = 232, // "boolean"
983 S_YYACCEPT = 233, // $accept
984 S_start = 234, // start
985 S_235_1 = 235, // $@1
986 S_236_2 = 236, // $@2
987 S_237_3 = 237, // $@3
988 S_238_4 = 238, // $@4
989 S_239_5 = 239, // $@5
990 S_240_6 = 240, // $@6
991 S_241_7 = 241, // $@7
992 S_242_8 = 242, // $@8
993 S_243_9 = 243, // $@9
994 S_244_10 = 244, // $@10
995 S_245_11 = 245, // $@11
996 S_246_12 = 246, // $@12
997 S_247_13 = 247, // $@13
998 S_248_14 = 248, // $@14
999 S_value = 249, // value
1000 S_sub_json = 250, // sub_json
1001 S_map2 = 251, // map2
1002 S_252_15 = 252, // $@15
1003 S_map_value = 253, // map_value
1004 S_map_content = 254, // map_content
1005 S_not_empty_map = 255, // not_empty_map
1006 S_list_generic = 256, // list_generic
1007 S_257_16 = 257, // $@16
1008 S_list_content = 258, // list_content
1009 S_not_empty_list = 259, // not_empty_list
1010 S_list_strings = 260, // list_strings
1011 S_261_17 = 261, // $@17
1012 S_list_strings_content = 262, // list_strings_content
1013 S_not_empty_list_strings = 263, // not_empty_list_strings
1014 S_unknown_map_entry = 264, // unknown_map_entry
1015 S_syntax_map = 265, // syntax_map
1016 S_266_18 = 266, // $@18
1017 S_global_object = 267, // global_object
1018 S_268_19 = 268, // $@19
1019 S_global_object_comma = 269, // global_object_comma
1020 S_sub_dhcp6 = 270, // sub_dhcp6
1021 S_271_20 = 271, // $@20
1022 S_global_params = 272, // global_params
1023 S_global_param = 273, // global_param
1024 S_data_directory = 274, // data_directory
1025 S_275_21 = 275, // $@21
1026 S_preferred_lifetime = 276, // preferred_lifetime
1027 S_min_preferred_lifetime = 277, // min_preferred_lifetime
1028 S_max_preferred_lifetime = 278, // max_preferred_lifetime
1029 S_valid_lifetime = 279, // valid_lifetime
1030 S_min_valid_lifetime = 280, // min_valid_lifetime
1031 S_max_valid_lifetime = 281, // max_valid_lifetime
1032 S_renew_timer = 282, // renew_timer
1033 S_rebind_timer = 283, // rebind_timer
1034 S_calculate_tee_times = 284, // calculate_tee_times
1035 S_t1_percent = 285, // t1_percent
1036 S_t2_percent = 286, // t2_percent
1037 S_cache_threshold = 287, // cache_threshold
1038 S_cache_max_age = 288, // cache_max_age
1039 S_decline_probation_period = 289, // decline_probation_period
1040 S_ddns_send_updates = 290, // ddns_send_updates
1041 S_ddns_override_no_update = 291, // ddns_override_no_update
1042 S_ddns_override_client_update = 292, // ddns_override_client_update
1043 S_ddns_replace_client_name = 293, // ddns_replace_client_name
1044 S_294_22 = 294, // $@22
1045 S_ddns_replace_client_name_value = 295, // ddns_replace_client_name_value
1046 S_ddns_generated_prefix = 296, // ddns_generated_prefix
1047 S_297_23 = 297, // $@23
1048 S_ddns_qualifying_suffix = 298, // ddns_qualifying_suffix
1049 S_299_24 = 299, // $@24
1050 S_ddns_update_on_renew = 300, // ddns_update_on_renew
1051 S_ddns_use_conflict_resolution = 301, // ddns_use_conflict_resolution
1052 S_ddns_conflict_resolution_mode = 302, // ddns_conflict_resolution_mode
1053 S_303_25 = 303, // $@25
1054 S_ddns_conflict_resolution_mode_value = 304, // ddns_conflict_resolution_mode_value
1055 S_ddns_ttl_percent = 305, // ddns_ttl_percent
1056 S_hostname_char_set = 306, // hostname_char_set
1057 S_307_26 = 307, // $@26
1058 S_hostname_char_replacement = 308, // hostname_char_replacement
1059 S_309_27 = 309, // $@27
1060 S_store_extended_info = 310, // store_extended_info
1061 S_statistic_default_sample_count = 311, // statistic_default_sample_count
1062 S_statistic_default_sample_age = 312, // statistic_default_sample_age
1063 S_server_tag = 313, // server_tag
1064 S_314_28 = 314, // $@28
1065 S_parked_packet_limit = 315, // parked_packet_limit
1066 S_allocator = 316, // allocator
1067 S_317_29 = 317, // $@29
1068 S_pd_allocator = 318, // pd_allocator
1069 S_319_30 = 319, // $@30
1070 S_early_global_reservations_lookup = 320, // early_global_reservations_lookup
1071 S_ip_reservations_unique = 321, // ip_reservations_unique
1072 S_reservations_lookup_first = 322, // reservations_lookup_first
1073 S_interfaces_config = 323, // interfaces_config
1074 S_324_31 = 324, // $@31
1075 S_sub_interfaces6 = 325, // sub_interfaces6
1076 S_326_32 = 326, // $@32
1077 S_interfaces_config_params = 327, // interfaces_config_params
1078 S_interfaces_config_param = 328, // interfaces_config_param
1079 S_interfaces_list = 329, // interfaces_list
1080 S_330_33 = 330, // $@33
1081 S_re_detect = 331, // re_detect
1082 S_service_sockets_require_all = 332, // service_sockets_require_all
1083 S_service_sockets_retry_wait_time = 333, // service_sockets_retry_wait_time
1084 S_service_sockets_max_retries = 334, // service_sockets_max_retries
1085 S_lease_database = 335, // lease_database
1086 S_336_34 = 336, // $@34
1087 S_hosts_database = 337, // hosts_database
1088 S_338_35 = 338, // $@35
1089 S_hosts_databases = 339, // hosts_databases
1090 S_340_36 = 340, // $@36
1091 S_database_list = 341, // database_list
1092 S_not_empty_database_list = 342, // not_empty_database_list
1093 S_database = 343, // database
1094 S_344_37 = 344, // $@37
1095 S_database_map_params = 345, // database_map_params
1096 S_database_map_param = 346, // database_map_param
1097 S_database_type = 347, // database_type
1098 S_348_38 = 348, // $@38
1099 S_user = 349, // user
1100 S_350_39 = 350, // $@39
1101 S_password = 351, // password
1102 S_352_40 = 352, // $@40
1103 S_host = 353, // host
1104 S_354_41 = 354, // $@41
1105 S_port = 355, // port
1106 S_name = 356, // name
1107 S_357_42 = 357, // $@42
1108 S_persist = 358, // persist
1109 S_lfc_interval = 359, // lfc_interval
1110 S_readonly = 360, // readonly
1111 S_connect_timeout = 361, // connect_timeout
1112 S_read_timeout = 362, // read_timeout
1113 S_write_timeout = 363, // write_timeout
1114 S_tcp_user_timeout = 364, // tcp_user_timeout
1115 S_reconnect_wait_time = 365, // reconnect_wait_time
1116 S_on_fail = 366, // on_fail
1117 S_367_43 = 367, // $@43
1118 S_on_fail_mode = 368, // on_fail_mode
1119 S_retry_on_startup = 369, // retry_on_startup
1120 S_max_row_errors = 370, // max_row_errors
1121 S_max_reconnect_tries = 371, // max_reconnect_tries
1122 S_trust_anchor = 372, // trust_anchor
1123 S_373_44 = 373, // $@44
1124 S_cert_file = 374, // cert_file
1125 S_375_45 = 375, // $@45
1126 S_key_file = 376, // key_file
1127 S_377_46 = 377, // $@46
1128 S_cipher_list = 378, // cipher_list
1129 S_379_47 = 379, // $@47
1130 S_sanity_checks = 380, // sanity_checks
1131 S_381_48 = 381, // $@48
1132 S_sanity_checks_params = 382, // sanity_checks_params
1133 S_sanity_checks_param = 383, // sanity_checks_param
1134 S_lease_checks = 384, // lease_checks
1135 S_385_49 = 385, // $@49
1136 S_extended_info_checks = 386, // extended_info_checks
1137 S_387_50 = 387, // $@50
1138 S_mac_sources = 388, // mac_sources
1139 S_389_51 = 389, // $@51
1140 S_mac_sources_list = 390, // mac_sources_list
1141 S_mac_sources_value = 391, // mac_sources_value
1142 S_duid_id = 392, // duid_id
1143 S_string_id = 393, // string_id
1144 S_host_reservation_identifiers = 394, // host_reservation_identifiers
1145 S_395_52 = 395, // $@52
1146 S_host_reservation_identifiers_list = 396, // host_reservation_identifiers_list
1147 S_host_reservation_identifier = 397, // host_reservation_identifier
1148 S_hw_address_id = 398, // hw_address_id
1149 S_flex_id = 399, // flex_id
1150 S_relay_supplied_options = 400, // relay_supplied_options
1151 S_401_53 = 401, // $@53
1152 S_dhcp_multi_threading = 402, // dhcp_multi_threading
1153 S_403_54 = 403, // $@54
1154 S_multi_threading_params = 404, // multi_threading_params
1155 S_multi_threading_param = 405, // multi_threading_param
1156 S_enable_multi_threading = 406, // enable_multi_threading
1157 S_thread_pool_size = 407, // thread_pool_size
1158 S_packet_queue_size = 408, // packet_queue_size
1159 S_hooks_libraries = 409, // hooks_libraries
1160 S_410_55 = 410, // $@55
1161 S_hooks_libraries_list = 411, // hooks_libraries_list
1162 S_not_empty_hooks_libraries_list = 412, // not_empty_hooks_libraries_list
1163 S_hooks_library = 413, // hooks_library
1164 S_414_56 = 414, // $@56
1165 S_sub_hooks_library = 415, // sub_hooks_library
1166 S_416_57 = 416, // $@57
1167 S_hooks_params = 417, // hooks_params
1168 S_hooks_param = 418, // hooks_param
1169 S_library = 419, // library
1170 S_420_58 = 420, // $@58
1171 S_parameters = 421, // parameters
1172 S_422_59 = 422, // $@59
1173 S_expired_leases_processing = 423, // expired_leases_processing
1174 S_424_60 = 424, // $@60
1175 S_expired_leases_params = 425, // expired_leases_params
1176 S_expired_leases_param = 426, // expired_leases_param
1177 S_reclaim_timer_wait_time = 427, // reclaim_timer_wait_time
1178 S_flush_reclaimed_timer_wait_time = 428, // flush_reclaimed_timer_wait_time
1179 S_hold_reclaimed_time = 429, // hold_reclaimed_time
1180 S_max_reclaim_leases = 430, // max_reclaim_leases
1181 S_max_reclaim_time = 431, // max_reclaim_time
1182 S_unwarned_reclaim_cycles = 432, // unwarned_reclaim_cycles
1183 S_subnet6_list = 433, // subnet6_list
1184 S_434_61 = 434, // $@61
1185 S_subnet6_list_content = 435, // subnet6_list_content
1186 S_not_empty_subnet6_list = 436, // not_empty_subnet6_list
1187 S_subnet6 = 437, // subnet6
1188 S_438_62 = 438, // $@62
1189 S_sub_subnet6 = 439, // sub_subnet6
1190 S_440_63 = 440, // $@63
1191 S_subnet6_params = 441, // subnet6_params
1192 S_subnet6_param = 442, // subnet6_param
1193 S_subnet = 443, // subnet
1194 S_444_64 = 444, // $@64
1195 S_interface = 445, // interface
1196 S_446_65 = 446, // $@65
1197 S_interface_id = 447, // interface_id
1198 S_448_66 = 448, // $@66
1199 S_client_class = 449, // client_class
1200 S_450_67 = 450, // $@67
1201 S_require_client_classes = 451, // require_client_classes
1202 S_452_68 = 452, // $@68
1203 S_evaluate_additional_classes = 453, // evaluate_additional_classes
1204 S_454_69 = 454, // $@69
1205 S_reservations_global = 455, // reservations_global
1206 S_reservations_in_subnet = 456, // reservations_in_subnet
1207 S_reservations_out_of_pool = 457, // reservations_out_of_pool
1208 S_id = 458, // id
1209 S_rapid_commit = 459, // rapid_commit
1210 S_shared_networks = 460, // shared_networks
1211 S_461_70 = 461, // $@70
1212 S_shared_networks_content = 462, // shared_networks_content
1213 S_shared_networks_list = 463, // shared_networks_list
1214 S_shared_network = 464, // shared_network
1215 S_465_71 = 465, // $@71
1216 S_shared_network_params = 466, // shared_network_params
1217 S_shared_network_param = 467, // shared_network_param
1218 S_option_def_list = 468, // option_def_list
1219 S_469_72 = 469, // $@72
1220 S_sub_option_def_list = 470, // sub_option_def_list
1221 S_471_73 = 471, // $@73
1222 S_option_def_list_content = 472, // option_def_list_content
1223 S_not_empty_option_def_list = 473, // not_empty_option_def_list
1224 S_option_def_entry = 474, // option_def_entry
1225 S_475_74 = 475, // $@74
1226 S_sub_option_def = 476, // sub_option_def
1227 S_477_75 = 477, // $@75
1228 S_option_def_params = 478, // option_def_params
1229 S_not_empty_option_def_params = 479, // not_empty_option_def_params
1230 S_option_def_param = 480, // option_def_param
1231 S_option_def_name = 481, // option_def_name
1232 S_code = 482, // code
1233 S_option_def_code = 483, // option_def_code
1234 S_option_def_type = 484, // option_def_type
1235 S_485_76 = 485, // $@76
1236 S_option_def_record_types = 486, // option_def_record_types
1237 S_487_77 = 487, // $@77
1238 S_space = 488, // space
1239 S_489_78 = 489, // $@78
1240 S_option_def_space = 490, // option_def_space
1241 S_option_def_encapsulate = 491, // option_def_encapsulate
1242 S_492_79 = 492, // $@79
1243 S_option_def_array = 493, // option_def_array
1244 S_option_data_list = 494, // option_data_list
1245 S_495_80 = 495, // $@80
1246 S_option_data_list_content = 496, // option_data_list_content
1247 S_not_empty_option_data_list = 497, // not_empty_option_data_list
1248 S_option_data_entry = 498, // option_data_entry
1249 S_499_81 = 499, // $@81
1250 S_sub_option_data = 500, // sub_option_data
1251 S_501_82 = 501, // $@82
1252 S_option_data_params = 502, // option_data_params
1253 S_not_empty_option_data_params = 503, // not_empty_option_data_params
1254 S_option_data_param = 504, // option_data_param
1255 S_option_data_name = 505, // option_data_name
1256 S_option_data_data = 506, // option_data_data
1257 S_507_83 = 507, // $@83
1258 S_option_data_code = 508, // option_data_code
1259 S_option_data_space = 509, // option_data_space
1260 S_option_data_csv_format = 510, // option_data_csv_format
1261 S_option_data_always_send = 511, // option_data_always_send
1262 S_option_data_never_send = 512, // option_data_never_send
1263 S_option_data_client_classes = 513, // option_data_client_classes
1264 S_514_84 = 514, // $@84
1265 S_pools_list = 515, // pools_list
1266 S_516_85 = 516, // $@85
1267 S_pools_list_content = 517, // pools_list_content
1268 S_not_empty_pools_list = 518, // not_empty_pools_list
1269 S_pool_list_entry = 519, // pool_list_entry
1270 S_520_86 = 520, // $@86
1271 S_sub_pool6 = 521, // sub_pool6
1272 S_522_87 = 522, // $@87
1273 S_pool_params = 523, // pool_params
1274 S_pool_param = 524, // pool_param
1275 S_pool_entry = 525, // pool_entry
1276 S_526_88 = 526, // $@88
1277 S_pool_id = 527, // pool_id
1278 S_user_context = 528, // user_context
1279 S_529_89 = 529, // $@89
1280 S_comment = 530, // comment
1281 S_531_90 = 531, // $@90
1282 S_pd_pools_list = 532, // pd_pools_list
1283 S_533_91 = 533, // $@91
1284 S_pd_pools_list_content = 534, // pd_pools_list_content
1285 S_not_empty_pd_pools_list = 535, // not_empty_pd_pools_list
1286 S_pd_pool_entry = 536, // pd_pool_entry
1287 S_537_92 = 537, // $@92
1288 S_sub_pd_pool = 538, // sub_pd_pool
1289 S_539_93 = 539, // $@93
1290 S_pd_pool_params = 540, // pd_pool_params
1291 S_pd_pool_param = 541, // pd_pool_param
1292 S_pd_prefix = 542, // pd_prefix
1293 S_543_94 = 543, // $@94
1294 S_pd_prefix_len = 544, // pd_prefix_len
1295 S_excluded_prefix = 545, // excluded_prefix
1296 S_546_95 = 546, // $@95
1297 S_excluded_prefix_len = 547, // excluded_prefix_len
1298 S_pd_delegated_len = 548, // pd_delegated_len
1299 S_reservations = 549, // reservations
1300 S_550_96 = 550, // $@96
1301 S_reservations_list = 551, // reservations_list
1302 S_not_empty_reservations_list = 552, // not_empty_reservations_list
1303 S_reservation = 553, // reservation
1304 S_554_97 = 554, // $@97
1305 S_sub_reservation = 555, // sub_reservation
1306 S_556_98 = 556, // $@98
1307 S_reservation_params = 557, // reservation_params
1308 S_not_empty_reservation_params = 558, // not_empty_reservation_params
1309 S_reservation_param = 559, // reservation_param
1310 S_ip_addresses = 560, // ip_addresses
1311 S_561_99 = 561, // $@99
1312 S_prefixes = 562, // prefixes
1313 S_563_100 = 563, // $@100
1314 S_excluded_prefixes = 564, // excluded_prefixes
1315 S_565_101 = 565, // $@101
1316 S_duid = 566, // duid
1317 S_567_102 = 567, // $@102
1318 S_hw_address = 568, // hw_address
1319 S_569_103 = 569, // $@103
1320 S_hostname = 570, // hostname
1321 S_571_104 = 571, // $@104
1322 S_flex_id_value = 572, // flex_id_value
1323 S_573_105 = 573, // $@105
1324 S_reservation_client_classes = 574, // reservation_client_classes
1325 S_575_106 = 575, // $@106
1326 S_relay = 576, // relay
1327 S_577_107 = 577, // $@107
1328 S_relay_map = 578, // relay_map
1329 S_client_classes = 579, // client_classes
1330 S_580_108 = 580, // $@108
1331 S_client_classes_list = 581, // client_classes_list
1332 S_client_class_entry = 582, // client_class_entry
1333 S_583_109 = 583, // $@109
1334 S_client_class_params = 584, // client_class_params
1335 S_not_empty_client_class_params = 585, // not_empty_client_class_params
1336 S_client_class_param = 586, // client_class_param
1337 S_client_class_name = 587, // client_class_name
1338 S_client_class_test = 588, // client_class_test
1339 S_589_110 = 589, // $@110
1340 S_client_class_template_test = 590, // client_class_template_test
1341 S_591_111 = 591, // $@111
1342 S_only_if_required = 592, // only_if_required
1343 S_only_in_additional_list = 593, // only_in_additional_list
1344 S_server_id = 594, // server_id
1345 S_595_112 = 595, // $@112
1346 S_server_id_params = 596, // server_id_params
1347 S_server_id_param = 597, // server_id_param
1348 S_server_id_type = 598, // server_id_type
1349 S_599_113 = 599, // $@113
1350 S_duid_type = 600, // duid_type
1351 S_htype = 601, // htype
1352 S_identifier = 602, // identifier
1353 S_603_114 = 603, // $@114
1354 S_time = 604, // time
1355 S_enterprise_id = 605, // enterprise_id
1356 S_dhcp4o6_port = 606, // dhcp4o6_port
1357 S_control_socket = 607, // control_socket
1358 S_608_115 = 608, // $@115
1359 S_control_sockets = 609, // control_sockets
1360 S_610_116 = 610, // $@116
1361 S_control_socket_list = 611, // control_socket_list
1362 S_not_empty_control_socket_list = 612, // not_empty_control_socket_list
1363 S_control_socket_entry = 613, // control_socket_entry
1364 S_614_117 = 614, // $@117
1365 S_control_socket_params = 615, // control_socket_params
1366 S_control_socket_param = 616, // control_socket_param
1367 S_control_socket_type = 617, // control_socket_type
1368 S_618_118 = 618, // $@118
1369 S_control_socket_type_value = 619, // control_socket_type_value
1370 S_control_socket_name = 620, // control_socket_name
1371 S_621_119 = 621, // $@119
1372 S_control_socket_address = 622, // control_socket_address
1373 S_623_120 = 623, // $@120
1374 S_control_socket_port = 624, // control_socket_port
1375 S_cert_required = 625, // cert_required
1376 S_authentication = 626, // authentication
1377 S_627_121 = 627, // $@121
1378 S_auth_params = 628, // auth_params
1379 S_auth_param = 629, // auth_param
1380 S_auth_type = 630, // auth_type
1381 S_631_122 = 631, // $@122
1382 S_auth_type_value = 632, // auth_type_value
1383 S_realm = 633, // realm
1384 S_634_123 = 634, // $@123
1385 S_directory = 635, // directory
1386 S_636_124 = 636, // $@124
1387 S_clients = 637, // clients
1388 S_638_125 = 638, // $@125
1389 S_clients_list = 639, // clients_list
1390 S_not_empty_clients_list = 640, // not_empty_clients_list
1391 S_basic_auth = 641, // basic_auth
1392 S_642_126 = 642, // $@126
1393 S_clients_params = 643, // clients_params
1394 S_clients_param = 644, // clients_param
1395 S_user_file = 645, // user_file
1396 S_646_127 = 646, // $@127
1397 S_password_file = 647, // password_file
1398 S_648_128 = 648, // $@128
1399 S_dhcp_queue_control = 649, // dhcp_queue_control
1400 S_650_129 = 650, // $@129
1401 S_queue_control_params = 651, // queue_control_params
1402 S_queue_control_param = 652, // queue_control_param
1403 S_enable_queue = 653, // enable_queue
1404 S_queue_type = 654, // queue_type
1405 S_655_130 = 655, // $@130
1406 S_capacity = 656, // capacity
1407 S_arbitrary_map_entry = 657, // arbitrary_map_entry
1408 S_658_131 = 658, // $@131
1409 S_dhcp_ddns = 659, // dhcp_ddns
1410 S_660_132 = 660, // $@132
1411 S_sub_dhcp_ddns = 661, // sub_dhcp_ddns
1412 S_662_133 = 662, // $@133
1413 S_dhcp_ddns_params = 663, // dhcp_ddns_params
1414 S_dhcp_ddns_param = 664, // dhcp_ddns_param
1415 S_enable_updates = 665, // enable_updates
1416 S_server_ip = 666, // server_ip
1417 S_667_134 = 667, // $@134
1418 S_server_port = 668, // server_port
1419 S_sender_ip = 669, // sender_ip
1420 S_670_135 = 670, // $@135
1421 S_sender_port = 671, // sender_port
1422 S_max_queue_size = 672, // max_queue_size
1423 S_ncr_protocol = 673, // ncr_protocol
1424 S_674_136 = 674, // $@136
1425 S_ncr_protocol_value = 675, // ncr_protocol_value
1426 S_ncr_format = 676, // ncr_format
1427 S_677_137 = 677, // $@137
1428 S_config_control = 678, // config_control
1429 S_679_138 = 679, // $@138
1430 S_sub_config_control = 680, // sub_config_control
1431 S_681_139 = 681, // $@139
1432 S_config_control_params = 682, // config_control_params
1433 S_config_control_param = 683, // config_control_param
1434 S_config_databases = 684, // config_databases
1435 S_685_140 = 685, // $@140
1436 S_config_fetch_wait_time = 686, // config_fetch_wait_time
1437 S_loggers = 687, // loggers
1438 S_688_141 = 688, // $@141
1439 S_loggers_entries = 689, // loggers_entries
1440 S_logger_entry = 690, // logger_entry
1441 S_691_142 = 691, // $@142
1442 S_logger_params = 692, // logger_params
1443 S_logger_param = 693, // logger_param
1444 S_debuglevel = 694, // debuglevel
1445 S_severity = 695, // severity
1446 S_696_143 = 696, // $@143
1447 S_output_options_list = 697, // output_options_list
1448 S_698_144 = 698, // $@144
1449 S_output_options_list_content = 699, // output_options_list_content
1450 S_output_entry = 700, // output_entry
1451 S_701_145 = 701, // $@145
1452 S_output_params_list = 702, // output_params_list
1453 S_output_params = 703, // output_params
1454 S_output = 704, // output
1455 S_705_146 = 705, // $@146
1456 S_flush = 706, // flush
1457 S_maxsize = 707, // maxsize
1458 S_maxver = 708, // maxver
1459 S_pattern = 709, // pattern
1460 S_710_147 = 710, // $@147
1461 S_compatibility = 711, // compatibility
1462 S_712_148 = 712, // $@148
1463 S_compatibility_params = 713, // compatibility_params
1464 S_compatibility_param = 714, // compatibility_param
1465 S_lenient_option_parsing = 715 // lenient_option_parsing
1467 };
1468
1471
1474
1481 template <typename Base>
1482 struct basic_symbol : Base
1483 {
1485 typedef Base super_type;
1486
1489 : value ()
1490 , location ()
1491 {}
1492
1493#if 201103L <= YY_CPLUSPLUS
1495 basic_symbol (basic_symbol&& that)
1496 : Base (std::move (that))
1497 , value ()
1498 , location (std::move (that.location))
1499 {
1500 switch (this->kind ())
1501 {
1502 case symbol_kind::S_value: // value
1503 case symbol_kind::S_map_value: // map_value
1504 case symbol_kind::S_ddns_replace_client_name_value: // ddns_replace_client_name_value
1505 case symbol_kind::S_ddns_conflict_resolution_mode_value: // ddns_conflict_resolution_mode_value
1506 case symbol_kind::S_on_fail_mode: // on_fail_mode
1507 case symbol_kind::S_duid_type: // duid_type
1508 case symbol_kind::S_control_socket_type_value: // control_socket_type_value
1509 case symbol_kind::S_auth_type_value: // auth_type_value
1510 case symbol_kind::S_ncr_protocol_value: // ncr_protocol_value
1511 value.move< ElementPtr > (std::move (that.value));
1512 break;
1513
1514 case symbol_kind::S_BOOLEAN: // "boolean"
1515 value.move< bool > (std::move (that.value));
1516 break;
1517
1518 case symbol_kind::S_FLOAT: // "floating point"
1519 value.move< double > (std::move (that.value));
1520 break;
1521
1522 case symbol_kind::S_INTEGER: // "integer"
1523 value.move< int64_t > (std::move (that.value));
1524 break;
1525
1526 case symbol_kind::S_STRING: // "constant string"
1527 value.move< std::string > (std::move (that.value));
1528 break;
1529
1530 default:
1531 break;
1532 }
1533
1534 }
1535#endif
1536
1538 basic_symbol (const basic_symbol& that);
1539
1541#if 201103L <= YY_CPLUSPLUS
1542 basic_symbol (typename Base::kind_type t, location_type&& l)
1543 : Base (t)
1544 , location (std::move (l))
1545 {}
1546#else
1547 basic_symbol (typename Base::kind_type t, const location_type& l)
1548 : Base (t)
1549 , location (l)
1550 {}
1551#endif
1552
1553#if 201103L <= YY_CPLUSPLUS
1554 basic_symbol (typename Base::kind_type t, ElementPtr&& v, location_type&& l)
1555 : Base (t)
1556 , value (std::move (v))
1557 , location (std::move (l))
1558 {}
1559#else
1560 basic_symbol (typename Base::kind_type t, const ElementPtr& v, const location_type& l)
1561 : Base (t)
1562 , value (v)
1563 , location (l)
1564 {}
1565#endif
1566
1567#if 201103L <= YY_CPLUSPLUS
1568 basic_symbol (typename Base::kind_type t, bool&& v, location_type&& l)
1569 : Base (t)
1570 , value (std::move (v))
1571 , location (std::move (l))
1572 {}
1573#else
1574 basic_symbol (typename Base::kind_type t, const bool& v, const location_type& l)
1575 : Base (t)
1576 , value (v)
1577 , location (l)
1578 {}
1579#endif
1580
1581#if 201103L <= YY_CPLUSPLUS
1582 basic_symbol (typename Base::kind_type t, double&& v, location_type&& l)
1583 : Base (t)
1584 , value (std::move (v))
1585 , location (std::move (l))
1586 {}
1587#else
1588 basic_symbol (typename Base::kind_type t, const double& v, const location_type& l)
1589 : Base (t)
1590 , value (v)
1591 , location (l)
1592 {}
1593#endif
1594
1595#if 201103L <= YY_CPLUSPLUS
1596 basic_symbol (typename Base::kind_type t, int64_t&& v, location_type&& l)
1597 : Base (t)
1598 , value (std::move (v))
1599 , location (std::move (l))
1600 {}
1601#else
1602 basic_symbol (typename Base::kind_type t, const int64_t& v, const location_type& l)
1603 : Base (t)
1604 , value (v)
1605 , location (l)
1606 {}
1607#endif
1608
1609#if 201103L <= YY_CPLUSPLUS
1610 basic_symbol (typename Base::kind_type t, std::string&& v, location_type&& l)
1611 : Base (t)
1612 , value (std::move (v))
1613 , location (std::move (l))
1614 {}
1615#else
1616 basic_symbol (typename Base::kind_type t, const std::string& v, const location_type& l)
1617 : Base (t)
1618 , value (v)
1619 , location (l)
1620 {}
1621#endif
1622
1625 {
1626 clear ();
1627 }
1628
1629
1630
1633 {
1634 // User destructor.
1635 symbol_kind_type yykind = this->kind ();
1636 basic_symbol<Base>& yysym = *this;
1637 (void) yysym;
1638 switch (yykind)
1639 {
1640 default:
1641 break;
1642 }
1643
1644 // Value type destructor.
1645switch (yykind)
1646 {
1647 case symbol_kind::S_value: // value
1648 case symbol_kind::S_map_value: // map_value
1649 case symbol_kind::S_ddns_replace_client_name_value: // ddns_replace_client_name_value
1650 case symbol_kind::S_ddns_conflict_resolution_mode_value: // ddns_conflict_resolution_mode_value
1651 case symbol_kind::S_on_fail_mode: // on_fail_mode
1652 case symbol_kind::S_duid_type: // duid_type
1653 case symbol_kind::S_control_socket_type_value: // control_socket_type_value
1654 case symbol_kind::S_auth_type_value: // auth_type_value
1655 case symbol_kind::S_ncr_protocol_value: // ncr_protocol_value
1656 value.template destroy< ElementPtr > ();
1657 break;
1658
1659 case symbol_kind::S_BOOLEAN: // "boolean"
1660 value.template destroy< bool > ();
1661 break;
1662
1663 case symbol_kind::S_FLOAT: // "floating point"
1664 value.template destroy< double > ();
1665 break;
1666
1667 case symbol_kind::S_INTEGER: // "integer"
1668 value.template destroy< int64_t > ();
1669 break;
1670
1671 case symbol_kind::S_STRING: // "constant string"
1672 value.template destroy< std::string > ();
1673 break;
1674
1675 default:
1676 break;
1677 }
1678
1679 Base::clear ();
1680 }
1681
1683 std::string name () const YY_NOEXCEPT
1684 {
1685 return Dhcp6Parser::symbol_name (this->kind ());
1686 }
1687
1689 symbol_kind_type type_get () const YY_NOEXCEPT;
1690
1692 bool empty () const YY_NOEXCEPT;
1693
1695 void move (basic_symbol& s);
1696
1699
1702
1703 private:
1704#if YY_CPLUSPLUS < 201103L
1706 basic_symbol& operator= (const basic_symbol& that);
1707#endif
1708 };
1709
1711 struct by_kind
1712 {
1715
1718
1719#if 201103L <= YY_CPLUSPLUS
1721 by_kind (by_kind&& that) YY_NOEXCEPT;
1722#endif
1723
1725 by_kind (const by_kind& that) YY_NOEXCEPT;
1726
1729
1730
1731
1733 void clear () YY_NOEXCEPT;
1734
1736 void move (by_kind& that);
1737
1740 symbol_kind_type kind () const YY_NOEXCEPT;
1741
1743 symbol_kind_type type_get () const YY_NOEXCEPT;
1744
1748 };
1749
1752
1755 {
1757 typedef basic_symbol<by_kind> super_type;
1758
1761
1763#if 201103L <= YY_CPLUSPLUS
1764 symbol_type (int tok, location_type l)
1765 : super_type (token_kind_type (tok), std::move (l))
1766#else
1767 symbol_type (int tok, const location_type& l)
1768 : super_type (token_kind_type (tok), l)
1769#endif
1770 {
1771#if !defined _MSC_VER || defined __clang__
1772 PARSER6__ASSERT (tok == token::TOKEN_END
1773 || (token::TOKEN_PARSER6_error <= tok && tok <= token::TOKEN_SUB_CONFIG_CONTROL));
1774#endif
1775 }
1776#if 201103L <= YY_CPLUSPLUS
1777 symbol_type (int tok, bool v, location_type l)
1778 : super_type (token_kind_type (tok), std::move (v), std::move (l))
1779#else
1780 symbol_type (int tok, const bool& v, const location_type& l)
1781 : super_type (token_kind_type (tok), v, l)
1782#endif
1783 {
1784#if !defined _MSC_VER || defined __clang__
1785 PARSER6__ASSERT (tok == token::TOKEN_BOOLEAN);
1786#endif
1787 }
1788#if 201103L <= YY_CPLUSPLUS
1789 symbol_type (int tok, double v, location_type l)
1790 : super_type (token_kind_type (tok), std::move (v), std::move (l))
1791#else
1792 symbol_type (int tok, const double& v, const location_type& l)
1793 : super_type (token_kind_type (tok), v, l)
1794#endif
1795 {
1796#if !defined _MSC_VER || defined __clang__
1797 PARSER6__ASSERT (tok == token::TOKEN_FLOAT);
1798#endif
1799 }
1800#if 201103L <= YY_CPLUSPLUS
1801 symbol_type (int tok, int64_t v, location_type l)
1802 : super_type (token_kind_type (tok), std::move (v), std::move (l))
1803#else
1804 symbol_type (int tok, const int64_t& v, const location_type& l)
1805 : super_type (token_kind_type (tok), v, l)
1806#endif
1807 {
1808#if !defined _MSC_VER || defined __clang__
1809 PARSER6__ASSERT (tok == token::TOKEN_INTEGER);
1810#endif
1811 }
1812#if 201103L <= YY_CPLUSPLUS
1813 symbol_type (int tok, std::string v, location_type l)
1814 : super_type (token_kind_type (tok), std::move (v), std::move (l))
1815#else
1816 symbol_type (int tok, const std::string& v, const location_type& l)
1817 : super_type (token_kind_type (tok), v, l)
1818#endif
1819 {
1820#if !defined _MSC_VER || defined __clang__
1821 PARSER6__ASSERT (tok == token::TOKEN_STRING);
1822#endif
1823 }
1824 };
1825
1828 virtual ~Dhcp6Parser ();
1829
1830#if 201103L <= YY_CPLUSPLUS
1832 Dhcp6Parser (const Dhcp6Parser&) = delete;
1834 Dhcp6Parser& operator= (const Dhcp6Parser&) = delete;
1835#endif
1836
1839 int operator() ();
1840
1843 virtual int parse ();
1844
1845#if PARSER6_DEBUG
1847 std::ostream& debug_stream () const YY_ATTRIBUTE_PURE;
1849 void set_debug_stream (std::ostream &);
1850
1852 typedef int debug_level_type;
1854 debug_level_type debug_level () const YY_ATTRIBUTE_PURE;
1856 void set_debug_level (debug_level_type l);
1857#endif
1858
1862 virtual void error (const location_type& loc, const std::string& msg);
1863
1865 void error (const syntax_error& err);
1866
1869 static std::string symbol_name (symbol_kind_type yysymbol);
1870
1871 // Implementation of make_symbol for each token kind.
1872#if 201103L <= YY_CPLUSPLUS
1873 static
1874 symbol_type
1875 make_END (location_type l)
1876 {
1877 return symbol_type (token::TOKEN_END, std::move (l));
1878 }
1879#else
1880 static
1881 symbol_type
1883 {
1884 return symbol_type (token::TOKEN_END, l);
1885 }
1886#endif
1887#if 201103L <= YY_CPLUSPLUS
1888 static
1889 symbol_type
1890 make_PARSER6_error (location_type l)
1891 {
1892 return symbol_type (token::TOKEN_PARSER6_error, std::move (l));
1893 }
1894#else
1895 static
1896 symbol_type
1898 {
1899 return symbol_type (token::TOKEN_PARSER6_error, l);
1900 }
1901#endif
1902#if 201103L <= YY_CPLUSPLUS
1903 static
1904 symbol_type
1905 make_PARSER6_UNDEF (location_type l)
1906 {
1907 return symbol_type (token::TOKEN_PARSER6_UNDEF, std::move (l));
1908 }
1909#else
1910 static
1911 symbol_type
1913 {
1914 return symbol_type (token::TOKEN_PARSER6_UNDEF, l);
1915 }
1916#endif
1917#if 201103L <= YY_CPLUSPLUS
1918 static
1919 symbol_type
1920 make_COMMA (location_type l)
1921 {
1922 return symbol_type (token::TOKEN_COMMA, std::move (l));
1923 }
1924#else
1925 static
1926 symbol_type
1928 {
1929 return symbol_type (token::TOKEN_COMMA, l);
1930 }
1931#endif
1932#if 201103L <= YY_CPLUSPLUS
1933 static
1934 symbol_type
1935 make_COLON (location_type l)
1936 {
1937 return symbol_type (token::TOKEN_COLON, std::move (l));
1938 }
1939#else
1940 static
1941 symbol_type
1943 {
1944 return symbol_type (token::TOKEN_COLON, l);
1945 }
1946#endif
1947#if 201103L <= YY_CPLUSPLUS
1948 static
1949 symbol_type
1950 make_LSQUARE_BRACKET (location_type l)
1951 {
1952 return symbol_type (token::TOKEN_LSQUARE_BRACKET, std::move (l));
1953 }
1954#else
1955 static
1956 symbol_type
1958 {
1959 return symbol_type (token::TOKEN_LSQUARE_BRACKET, l);
1960 }
1961#endif
1962#if 201103L <= YY_CPLUSPLUS
1963 static
1964 symbol_type
1965 make_RSQUARE_BRACKET (location_type l)
1966 {
1967 return symbol_type (token::TOKEN_RSQUARE_BRACKET, std::move (l));
1968 }
1969#else
1970 static
1971 symbol_type
1973 {
1974 return symbol_type (token::TOKEN_RSQUARE_BRACKET, l);
1975 }
1976#endif
1977#if 201103L <= YY_CPLUSPLUS
1978 static
1979 symbol_type
1980 make_LCURLY_BRACKET (location_type l)
1981 {
1982 return symbol_type (token::TOKEN_LCURLY_BRACKET, std::move (l));
1983 }
1984#else
1985 static
1986 symbol_type
1988 {
1989 return symbol_type (token::TOKEN_LCURLY_BRACKET, l);
1990 }
1991#endif
1992#if 201103L <= YY_CPLUSPLUS
1993 static
1994 symbol_type
1995 make_RCURLY_BRACKET (location_type l)
1996 {
1997 return symbol_type (token::TOKEN_RCURLY_BRACKET, std::move (l));
1998 }
1999#else
2000 static
2001 symbol_type
2003 {
2004 return symbol_type (token::TOKEN_RCURLY_BRACKET, l);
2005 }
2006#endif
2007#if 201103L <= YY_CPLUSPLUS
2008 static
2009 symbol_type
2010 make_NULL_TYPE (location_type l)
2011 {
2012 return symbol_type (token::TOKEN_NULL_TYPE, std::move (l));
2013 }
2014#else
2015 static
2016 symbol_type
2018 {
2019 return symbol_type (token::TOKEN_NULL_TYPE, l);
2020 }
2021#endif
2022#if 201103L <= YY_CPLUSPLUS
2023 static
2024 symbol_type
2025 make_DHCP6 (location_type l)
2026 {
2027 return symbol_type (token::TOKEN_DHCP6, std::move (l));
2028 }
2029#else
2030 static
2031 symbol_type
2033 {
2034 return symbol_type (token::TOKEN_DHCP6, l);
2035 }
2036#endif
2037#if 201103L <= YY_CPLUSPLUS
2038 static
2039 symbol_type
2040 make_DATA_DIRECTORY (location_type l)
2041 {
2042 return symbol_type (token::TOKEN_DATA_DIRECTORY, std::move (l));
2043 }
2044#else
2045 static
2046 symbol_type
2048 {
2049 return symbol_type (token::TOKEN_DATA_DIRECTORY, l);
2050 }
2051#endif
2052#if 201103L <= YY_CPLUSPLUS
2053 static
2054 symbol_type
2055 make_CONFIG_CONTROL (location_type l)
2056 {
2057 return symbol_type (token::TOKEN_CONFIG_CONTROL, std::move (l));
2058 }
2059#else
2060 static
2061 symbol_type
2063 {
2064 return symbol_type (token::TOKEN_CONFIG_CONTROL, l);
2065 }
2066#endif
2067#if 201103L <= YY_CPLUSPLUS
2068 static
2069 symbol_type
2070 make_CONFIG_DATABASES (location_type l)
2071 {
2072 return symbol_type (token::TOKEN_CONFIG_DATABASES, std::move (l));
2073 }
2074#else
2075 static
2076 symbol_type
2078 {
2079 return symbol_type (token::TOKEN_CONFIG_DATABASES, l);
2080 }
2081#endif
2082#if 201103L <= YY_CPLUSPLUS
2083 static
2084 symbol_type
2085 make_CONFIG_FETCH_WAIT_TIME (location_type l)
2086 {
2087 return symbol_type (token::TOKEN_CONFIG_FETCH_WAIT_TIME, std::move (l));
2088 }
2089#else
2090 static
2091 symbol_type
2093 {
2094 return symbol_type (token::TOKEN_CONFIG_FETCH_WAIT_TIME, l);
2095 }
2096#endif
2097#if 201103L <= YY_CPLUSPLUS
2098 static
2099 symbol_type
2100 make_INTERFACES_CONFIG (location_type l)
2101 {
2102 return symbol_type (token::TOKEN_INTERFACES_CONFIG, std::move (l));
2103 }
2104#else
2105 static
2106 symbol_type
2108 {
2109 return symbol_type (token::TOKEN_INTERFACES_CONFIG, l);
2110 }
2111#endif
2112#if 201103L <= YY_CPLUSPLUS
2113 static
2114 symbol_type
2115 make_INTERFACES (location_type l)
2116 {
2117 return symbol_type (token::TOKEN_INTERFACES, std::move (l));
2118 }
2119#else
2120 static
2121 symbol_type
2123 {
2124 return symbol_type (token::TOKEN_INTERFACES, l);
2125 }
2126#endif
2127#if 201103L <= YY_CPLUSPLUS
2128 static
2129 symbol_type
2130 make_RE_DETECT (location_type l)
2131 {
2132 return symbol_type (token::TOKEN_RE_DETECT, std::move (l));
2133 }
2134#else
2135 static
2136 symbol_type
2138 {
2139 return symbol_type (token::TOKEN_RE_DETECT, l);
2140 }
2141#endif
2142#if 201103L <= YY_CPLUSPLUS
2143 static
2144 symbol_type
2145 make_SERVICE_SOCKETS_REQUIRE_ALL (location_type l)
2146 {
2147 return symbol_type (token::TOKEN_SERVICE_SOCKETS_REQUIRE_ALL, std::move (l));
2148 }
2149#else
2150 static
2151 symbol_type
2153 {
2154 return symbol_type (token::TOKEN_SERVICE_SOCKETS_REQUIRE_ALL, l);
2155 }
2156#endif
2157#if 201103L <= YY_CPLUSPLUS
2158 static
2159 symbol_type
2160 make_SERVICE_SOCKETS_RETRY_WAIT_TIME (location_type l)
2161 {
2162 return symbol_type (token::TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME, std::move (l));
2163 }
2164#else
2165 static
2166 symbol_type
2168 {
2169 return symbol_type (token::TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME, l);
2170 }
2171#endif
2172#if 201103L <= YY_CPLUSPLUS
2173 static
2174 symbol_type
2175 make_SERVICE_SOCKETS_MAX_RETRIES (location_type l)
2176 {
2177 return symbol_type (token::TOKEN_SERVICE_SOCKETS_MAX_RETRIES, std::move (l));
2178 }
2179#else
2180 static
2181 symbol_type
2183 {
2184 return symbol_type (token::TOKEN_SERVICE_SOCKETS_MAX_RETRIES, l);
2185 }
2186#endif
2187#if 201103L <= YY_CPLUSPLUS
2188 static
2189 symbol_type
2190 make_LEASE_DATABASE (location_type l)
2191 {
2192 return symbol_type (token::TOKEN_LEASE_DATABASE, std::move (l));
2193 }
2194#else
2195 static
2196 symbol_type
2198 {
2199 return symbol_type (token::TOKEN_LEASE_DATABASE, l);
2200 }
2201#endif
2202#if 201103L <= YY_CPLUSPLUS
2203 static
2204 symbol_type
2205 make_HOSTS_DATABASE (location_type l)
2206 {
2207 return symbol_type (token::TOKEN_HOSTS_DATABASE, std::move (l));
2208 }
2209#else
2210 static
2211 symbol_type
2213 {
2214 return symbol_type (token::TOKEN_HOSTS_DATABASE, l);
2215 }
2216#endif
2217#if 201103L <= YY_CPLUSPLUS
2218 static
2219 symbol_type
2220 make_HOSTS_DATABASES (location_type l)
2221 {
2222 return symbol_type (token::TOKEN_HOSTS_DATABASES, std::move (l));
2223 }
2224#else
2225 static
2226 symbol_type
2228 {
2229 return symbol_type (token::TOKEN_HOSTS_DATABASES, l);
2230 }
2231#endif
2232#if 201103L <= YY_CPLUSPLUS
2233 static
2234 symbol_type
2235 make_TYPE (location_type l)
2236 {
2237 return symbol_type (token::TOKEN_TYPE, std::move (l));
2238 }
2239#else
2240 static
2241 symbol_type
2243 {
2244 return symbol_type (token::TOKEN_TYPE, l);
2245 }
2246#endif
2247#if 201103L <= YY_CPLUSPLUS
2248 static
2249 symbol_type
2250 make_USER (location_type l)
2251 {
2252 return symbol_type (token::TOKEN_USER, std::move (l));
2253 }
2254#else
2255 static
2256 symbol_type
2258 {
2259 return symbol_type (token::TOKEN_USER, l);
2260 }
2261#endif
2262#if 201103L <= YY_CPLUSPLUS
2263 static
2264 symbol_type
2265 make_PASSWORD (location_type l)
2266 {
2267 return symbol_type (token::TOKEN_PASSWORD, std::move (l));
2268 }
2269#else
2270 static
2271 symbol_type
2273 {
2274 return symbol_type (token::TOKEN_PASSWORD, l);
2275 }
2276#endif
2277#if 201103L <= YY_CPLUSPLUS
2278 static
2279 symbol_type
2280 make_HOST (location_type l)
2281 {
2282 return symbol_type (token::TOKEN_HOST, std::move (l));
2283 }
2284#else
2285 static
2286 symbol_type
2288 {
2289 return symbol_type (token::TOKEN_HOST, l);
2290 }
2291#endif
2292#if 201103L <= YY_CPLUSPLUS
2293 static
2294 symbol_type
2295 make_PORT (location_type l)
2296 {
2297 return symbol_type (token::TOKEN_PORT, std::move (l));
2298 }
2299#else
2300 static
2301 symbol_type
2303 {
2304 return symbol_type (token::TOKEN_PORT, l);
2305 }
2306#endif
2307#if 201103L <= YY_CPLUSPLUS
2308 static
2309 symbol_type
2310 make_PERSIST (location_type l)
2311 {
2312 return symbol_type (token::TOKEN_PERSIST, std::move (l));
2313 }
2314#else
2315 static
2316 symbol_type
2318 {
2319 return symbol_type (token::TOKEN_PERSIST, l);
2320 }
2321#endif
2322#if 201103L <= YY_CPLUSPLUS
2323 static
2324 symbol_type
2325 make_LFC_INTERVAL (location_type l)
2326 {
2327 return symbol_type (token::TOKEN_LFC_INTERVAL, std::move (l));
2328 }
2329#else
2330 static
2331 symbol_type
2333 {
2334 return symbol_type (token::TOKEN_LFC_INTERVAL, l);
2335 }
2336#endif
2337#if 201103L <= YY_CPLUSPLUS
2338 static
2339 symbol_type
2340 make_READONLY (location_type l)
2341 {
2342 return symbol_type (token::TOKEN_READONLY, std::move (l));
2343 }
2344#else
2345 static
2346 symbol_type
2348 {
2349 return symbol_type (token::TOKEN_READONLY, l);
2350 }
2351#endif
2352#if 201103L <= YY_CPLUSPLUS
2353 static
2354 symbol_type
2355 make_CONNECT_TIMEOUT (location_type l)
2356 {
2357 return symbol_type (token::TOKEN_CONNECT_TIMEOUT, std::move (l));
2358 }
2359#else
2360 static
2361 symbol_type
2363 {
2364 return symbol_type (token::TOKEN_CONNECT_TIMEOUT, l);
2365 }
2366#endif
2367#if 201103L <= YY_CPLUSPLUS
2368 static
2369 symbol_type
2370 make_READ_TIMEOUT (location_type l)
2371 {
2372 return symbol_type (token::TOKEN_READ_TIMEOUT, std::move (l));
2373 }
2374#else
2375 static
2376 symbol_type
2378 {
2379 return symbol_type (token::TOKEN_READ_TIMEOUT, l);
2380 }
2381#endif
2382#if 201103L <= YY_CPLUSPLUS
2383 static
2384 symbol_type
2385 make_WRITE_TIMEOUT (location_type l)
2386 {
2387 return symbol_type (token::TOKEN_WRITE_TIMEOUT, std::move (l));
2388 }
2389#else
2390 static
2391 symbol_type
2393 {
2394 return symbol_type (token::TOKEN_WRITE_TIMEOUT, l);
2395 }
2396#endif
2397#if 201103L <= YY_CPLUSPLUS
2398 static
2399 symbol_type
2400 make_TCP_USER_TIMEOUT (location_type l)
2401 {
2402 return symbol_type (token::TOKEN_TCP_USER_TIMEOUT, std::move (l));
2403 }
2404#else
2405 static
2406 symbol_type
2408 {
2409 return symbol_type (token::TOKEN_TCP_USER_TIMEOUT, l);
2410 }
2411#endif
2412#if 201103L <= YY_CPLUSPLUS
2413 static
2414 symbol_type
2415 make_MAX_RECONNECT_TRIES (location_type l)
2416 {
2417 return symbol_type (token::TOKEN_MAX_RECONNECT_TRIES, std::move (l));
2418 }
2419#else
2420 static
2421 symbol_type
2423 {
2424 return symbol_type (token::TOKEN_MAX_RECONNECT_TRIES, l);
2425 }
2426#endif
2427#if 201103L <= YY_CPLUSPLUS
2428 static
2429 symbol_type
2430 make_RECONNECT_WAIT_TIME (location_type l)
2431 {
2432 return symbol_type (token::TOKEN_RECONNECT_WAIT_TIME, std::move (l));
2433 }
2434#else
2435 static
2436 symbol_type
2438 {
2439 return symbol_type (token::TOKEN_RECONNECT_WAIT_TIME, l);
2440 }
2441#endif
2442#if 201103L <= YY_CPLUSPLUS
2443 static
2444 symbol_type
2445 make_ON_FAIL (location_type l)
2446 {
2447 return symbol_type (token::TOKEN_ON_FAIL, std::move (l));
2448 }
2449#else
2450 static
2451 symbol_type
2453 {
2454 return symbol_type (token::TOKEN_ON_FAIL, l);
2455 }
2456#endif
2457#if 201103L <= YY_CPLUSPLUS
2458 static
2459 symbol_type
2460 make_STOP_RETRY_EXIT (location_type l)
2461 {
2462 return symbol_type (token::TOKEN_STOP_RETRY_EXIT, std::move (l));
2463 }
2464#else
2465 static
2466 symbol_type
2468 {
2469 return symbol_type (token::TOKEN_STOP_RETRY_EXIT, l);
2470 }
2471#endif
2472#if 201103L <= YY_CPLUSPLUS
2473 static
2474 symbol_type
2475 make_SERVE_RETRY_EXIT (location_type l)
2476 {
2477 return symbol_type (token::TOKEN_SERVE_RETRY_EXIT, std::move (l));
2478 }
2479#else
2480 static
2481 symbol_type
2483 {
2484 return symbol_type (token::TOKEN_SERVE_RETRY_EXIT, l);
2485 }
2486#endif
2487#if 201103L <= YY_CPLUSPLUS
2488 static
2489 symbol_type
2490 make_SERVE_RETRY_CONTINUE (location_type l)
2491 {
2492 return symbol_type (token::TOKEN_SERVE_RETRY_CONTINUE, std::move (l));
2493 }
2494#else
2495 static
2496 symbol_type
2498 {
2499 return symbol_type (token::TOKEN_SERVE_RETRY_CONTINUE, l);
2500 }
2501#endif
2502#if 201103L <= YY_CPLUSPLUS
2503 static
2504 symbol_type
2505 make_RETRY_ON_STARTUP (location_type l)
2506 {
2507 return symbol_type (token::TOKEN_RETRY_ON_STARTUP, std::move (l));
2508 }
2509#else
2510 static
2511 symbol_type
2513 {
2514 return symbol_type (token::TOKEN_RETRY_ON_STARTUP, l);
2515 }
2516#endif
2517#if 201103L <= YY_CPLUSPLUS
2518 static
2519 symbol_type
2520 make_MAX_ROW_ERRORS (location_type l)
2521 {
2522 return symbol_type (token::TOKEN_MAX_ROW_ERRORS, std::move (l));
2523 }
2524#else
2525 static
2526 symbol_type
2528 {
2529 return symbol_type (token::TOKEN_MAX_ROW_ERRORS, l);
2530 }
2531#endif
2532#if 201103L <= YY_CPLUSPLUS
2533 static
2534 symbol_type
2535 make_TRUST_ANCHOR (location_type l)
2536 {
2537 return symbol_type (token::TOKEN_TRUST_ANCHOR, std::move (l));
2538 }
2539#else
2540 static
2541 symbol_type
2543 {
2544 return symbol_type (token::TOKEN_TRUST_ANCHOR, l);
2545 }
2546#endif
2547#if 201103L <= YY_CPLUSPLUS
2548 static
2549 symbol_type
2550 make_CERT_FILE (location_type l)
2551 {
2552 return symbol_type (token::TOKEN_CERT_FILE, std::move (l));
2553 }
2554#else
2555 static
2556 symbol_type
2558 {
2559 return symbol_type (token::TOKEN_CERT_FILE, l);
2560 }
2561#endif
2562#if 201103L <= YY_CPLUSPLUS
2563 static
2564 symbol_type
2565 make_KEY_FILE (location_type l)
2566 {
2567 return symbol_type (token::TOKEN_KEY_FILE, std::move (l));
2568 }
2569#else
2570 static
2571 symbol_type
2573 {
2574 return symbol_type (token::TOKEN_KEY_FILE, l);
2575 }
2576#endif
2577#if 201103L <= YY_CPLUSPLUS
2578 static
2579 symbol_type
2580 make_CIPHER_LIST (location_type l)
2581 {
2582 return symbol_type (token::TOKEN_CIPHER_LIST, std::move (l));
2583 }
2584#else
2585 static
2586 symbol_type
2588 {
2589 return symbol_type (token::TOKEN_CIPHER_LIST, l);
2590 }
2591#endif
2592#if 201103L <= YY_CPLUSPLUS
2593 static
2594 symbol_type
2595 make_PREFERRED_LIFETIME (location_type l)
2596 {
2597 return symbol_type (token::TOKEN_PREFERRED_LIFETIME, std::move (l));
2598 }
2599#else
2600 static
2601 symbol_type
2603 {
2604 return symbol_type (token::TOKEN_PREFERRED_LIFETIME, l);
2605 }
2606#endif
2607#if 201103L <= YY_CPLUSPLUS
2608 static
2609 symbol_type
2610 make_MIN_PREFERRED_LIFETIME (location_type l)
2611 {
2612 return symbol_type (token::TOKEN_MIN_PREFERRED_LIFETIME, std::move (l));
2613 }
2614#else
2615 static
2616 symbol_type
2618 {
2619 return symbol_type (token::TOKEN_MIN_PREFERRED_LIFETIME, l);
2620 }
2621#endif
2622#if 201103L <= YY_CPLUSPLUS
2623 static
2624 symbol_type
2625 make_MAX_PREFERRED_LIFETIME (location_type l)
2626 {
2627 return symbol_type (token::TOKEN_MAX_PREFERRED_LIFETIME, std::move (l));
2628 }
2629#else
2630 static
2631 symbol_type
2633 {
2634 return symbol_type (token::TOKEN_MAX_PREFERRED_LIFETIME, l);
2635 }
2636#endif
2637#if 201103L <= YY_CPLUSPLUS
2638 static
2639 symbol_type
2640 make_VALID_LIFETIME (location_type l)
2641 {
2642 return symbol_type (token::TOKEN_VALID_LIFETIME, std::move (l));
2643 }
2644#else
2645 static
2646 symbol_type
2648 {
2649 return symbol_type (token::TOKEN_VALID_LIFETIME, l);
2650 }
2651#endif
2652#if 201103L <= YY_CPLUSPLUS
2653 static
2654 symbol_type
2655 make_MIN_VALID_LIFETIME (location_type l)
2656 {
2657 return symbol_type (token::TOKEN_MIN_VALID_LIFETIME, std::move (l));
2658 }
2659#else
2660 static
2661 symbol_type
2663 {
2664 return symbol_type (token::TOKEN_MIN_VALID_LIFETIME, l);
2665 }
2666#endif
2667#if 201103L <= YY_CPLUSPLUS
2668 static
2669 symbol_type
2670 make_MAX_VALID_LIFETIME (location_type l)
2671 {
2672 return symbol_type (token::TOKEN_MAX_VALID_LIFETIME, std::move (l));
2673 }
2674#else
2675 static
2676 symbol_type
2678 {
2679 return symbol_type (token::TOKEN_MAX_VALID_LIFETIME, l);
2680 }
2681#endif
2682#if 201103L <= YY_CPLUSPLUS
2683 static
2684 symbol_type
2685 make_RENEW_TIMER (location_type l)
2686 {
2687 return symbol_type (token::TOKEN_RENEW_TIMER, std::move (l));
2688 }
2689#else
2690 static
2691 symbol_type
2693 {
2694 return symbol_type (token::TOKEN_RENEW_TIMER, l);
2695 }
2696#endif
2697#if 201103L <= YY_CPLUSPLUS
2698 static
2699 symbol_type
2700 make_REBIND_TIMER (location_type l)
2701 {
2702 return symbol_type (token::TOKEN_REBIND_TIMER, std::move (l));
2703 }
2704#else
2705 static
2706 symbol_type
2708 {
2709 return symbol_type (token::TOKEN_REBIND_TIMER, l);
2710 }
2711#endif
2712#if 201103L <= YY_CPLUSPLUS
2713 static
2714 symbol_type
2715 make_CALCULATE_TEE_TIMES (location_type l)
2716 {
2717 return symbol_type (token::TOKEN_CALCULATE_TEE_TIMES, std::move (l));
2718 }
2719#else
2720 static
2721 symbol_type
2723 {
2724 return symbol_type (token::TOKEN_CALCULATE_TEE_TIMES, l);
2725 }
2726#endif
2727#if 201103L <= YY_CPLUSPLUS
2728 static
2729 symbol_type
2730 make_T1_PERCENT (location_type l)
2731 {
2732 return symbol_type (token::TOKEN_T1_PERCENT, std::move (l));
2733 }
2734#else
2735 static
2736 symbol_type
2738 {
2739 return symbol_type (token::TOKEN_T1_PERCENT, l);
2740 }
2741#endif
2742#if 201103L <= YY_CPLUSPLUS
2743 static
2744 symbol_type
2745 make_T2_PERCENT (location_type l)
2746 {
2747 return symbol_type (token::TOKEN_T2_PERCENT, std::move (l));
2748 }
2749#else
2750 static
2751 symbol_type
2753 {
2754 return symbol_type (token::TOKEN_T2_PERCENT, l);
2755 }
2756#endif
2757#if 201103L <= YY_CPLUSPLUS
2758 static
2759 symbol_type
2760 make_CACHE_THRESHOLD (location_type l)
2761 {
2762 return symbol_type (token::TOKEN_CACHE_THRESHOLD, std::move (l));
2763 }
2764#else
2765 static
2766 symbol_type
2768 {
2769 return symbol_type (token::TOKEN_CACHE_THRESHOLD, l);
2770 }
2771#endif
2772#if 201103L <= YY_CPLUSPLUS
2773 static
2774 symbol_type
2775 make_CACHE_MAX_AGE (location_type l)
2776 {
2777 return symbol_type (token::TOKEN_CACHE_MAX_AGE, std::move (l));
2778 }
2779#else
2780 static
2781 symbol_type
2783 {
2784 return symbol_type (token::TOKEN_CACHE_MAX_AGE, l);
2785 }
2786#endif
2787#if 201103L <= YY_CPLUSPLUS
2788 static
2789 symbol_type
2790 make_DECLINE_PROBATION_PERIOD (location_type l)
2791 {
2792 return symbol_type (token::TOKEN_DECLINE_PROBATION_PERIOD, std::move (l));
2793 }
2794#else
2795 static
2796 symbol_type
2798 {
2799 return symbol_type (token::TOKEN_DECLINE_PROBATION_PERIOD, l);
2800 }
2801#endif
2802#if 201103L <= YY_CPLUSPLUS
2803 static
2804 symbol_type
2805 make_SERVER_TAG (location_type l)
2806 {
2807 return symbol_type (token::TOKEN_SERVER_TAG, std::move (l));
2808 }
2809#else
2810 static
2811 symbol_type
2813 {
2814 return symbol_type (token::TOKEN_SERVER_TAG, l);
2815 }
2816#endif
2817#if 201103L <= YY_CPLUSPLUS
2818 static
2819 symbol_type
2820 make_STATISTIC_DEFAULT_SAMPLE_COUNT (location_type l)
2821 {
2822 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT, std::move (l));
2823 }
2824#else
2825 static
2826 symbol_type
2828 {
2829 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT, l);
2830 }
2831#endif
2832#if 201103L <= YY_CPLUSPLUS
2833 static
2834 symbol_type
2835 make_STATISTIC_DEFAULT_SAMPLE_AGE (location_type l)
2836 {
2837 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE, std::move (l));
2838 }
2839#else
2840 static
2841 symbol_type
2843 {
2844 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE, l);
2845 }
2846#endif
2847#if 201103L <= YY_CPLUSPLUS
2848 static
2849 symbol_type
2850 make_DDNS_SEND_UPDATES (location_type l)
2851 {
2852 return symbol_type (token::TOKEN_DDNS_SEND_UPDATES, std::move (l));
2853 }
2854#else
2855 static
2856 symbol_type
2858 {
2859 return symbol_type (token::TOKEN_DDNS_SEND_UPDATES, l);
2860 }
2861#endif
2862#if 201103L <= YY_CPLUSPLUS
2863 static
2864 symbol_type
2865 make_DDNS_OVERRIDE_NO_UPDATE (location_type l)
2866 {
2867 return symbol_type (token::TOKEN_DDNS_OVERRIDE_NO_UPDATE, std::move (l));
2868 }
2869#else
2870 static
2871 symbol_type
2873 {
2874 return symbol_type (token::TOKEN_DDNS_OVERRIDE_NO_UPDATE, l);
2875 }
2876#endif
2877#if 201103L <= YY_CPLUSPLUS
2878 static
2879 symbol_type
2880 make_DDNS_OVERRIDE_CLIENT_UPDATE (location_type l)
2881 {
2882 return symbol_type (token::TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE, std::move (l));
2883 }
2884#else
2885 static
2886 symbol_type
2888 {
2889 return symbol_type (token::TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE, l);
2890 }
2891#endif
2892#if 201103L <= YY_CPLUSPLUS
2893 static
2894 symbol_type
2895 make_DDNS_REPLACE_CLIENT_NAME (location_type l)
2896 {
2897 return symbol_type (token::TOKEN_DDNS_REPLACE_CLIENT_NAME, std::move (l));
2898 }
2899#else
2900 static
2901 symbol_type
2903 {
2904 return symbol_type (token::TOKEN_DDNS_REPLACE_CLIENT_NAME, l);
2905 }
2906#endif
2907#if 201103L <= YY_CPLUSPLUS
2908 static
2909 symbol_type
2910 make_DDNS_GENERATED_PREFIX (location_type l)
2911 {
2912 return symbol_type (token::TOKEN_DDNS_GENERATED_PREFIX, std::move (l));
2913 }
2914#else
2915 static
2916 symbol_type
2918 {
2919 return symbol_type (token::TOKEN_DDNS_GENERATED_PREFIX, l);
2920 }
2921#endif
2922#if 201103L <= YY_CPLUSPLUS
2923 static
2924 symbol_type
2925 make_DDNS_QUALIFYING_SUFFIX (location_type l)
2926 {
2927 return symbol_type (token::TOKEN_DDNS_QUALIFYING_SUFFIX, std::move (l));
2928 }
2929#else
2930 static
2931 symbol_type
2933 {
2934 return symbol_type (token::TOKEN_DDNS_QUALIFYING_SUFFIX, l);
2935 }
2936#endif
2937#if 201103L <= YY_CPLUSPLUS
2938 static
2939 symbol_type
2940 make_DDNS_UPDATE_ON_RENEW (location_type l)
2941 {
2942 return symbol_type (token::TOKEN_DDNS_UPDATE_ON_RENEW, std::move (l));
2943 }
2944#else
2945 static
2946 symbol_type
2948 {
2949 return symbol_type (token::TOKEN_DDNS_UPDATE_ON_RENEW, l);
2950 }
2951#endif
2952#if 201103L <= YY_CPLUSPLUS
2953 static
2954 symbol_type
2955 make_DDNS_USE_CONFLICT_RESOLUTION (location_type l)
2956 {
2957 return symbol_type (token::TOKEN_DDNS_USE_CONFLICT_RESOLUTION, std::move (l));
2958 }
2959#else
2960 static
2961 symbol_type
2963 {
2964 return symbol_type (token::TOKEN_DDNS_USE_CONFLICT_RESOLUTION, l);
2965 }
2966#endif
2967#if 201103L <= YY_CPLUSPLUS
2968 static
2969 symbol_type
2970 make_DDNS_TTL_PERCENT (location_type l)
2971 {
2972 return symbol_type (token::TOKEN_DDNS_TTL_PERCENT, std::move (l));
2973 }
2974#else
2975 static
2976 symbol_type
2978 {
2979 return symbol_type (token::TOKEN_DDNS_TTL_PERCENT, l);
2980 }
2981#endif
2982#if 201103L <= YY_CPLUSPLUS
2983 static
2984 symbol_type
2985 make_STORE_EXTENDED_INFO (location_type l)
2986 {
2987 return symbol_type (token::TOKEN_STORE_EXTENDED_INFO, std::move (l));
2988 }
2989#else
2990 static
2991 symbol_type
2993 {
2994 return symbol_type (token::TOKEN_STORE_EXTENDED_INFO, l);
2995 }
2996#endif
2997#if 201103L <= YY_CPLUSPLUS
2998 static
2999 symbol_type
3000 make_SUBNET6 (location_type l)
3001 {
3002 return symbol_type (token::TOKEN_SUBNET6, std::move (l));
3003 }
3004#else
3005 static
3006 symbol_type
3008 {
3009 return symbol_type (token::TOKEN_SUBNET6, l);
3010 }
3011#endif
3012#if 201103L <= YY_CPLUSPLUS
3013 static
3014 symbol_type
3015 make_OPTION_DEF (location_type l)
3016 {
3017 return symbol_type (token::TOKEN_OPTION_DEF, std::move (l));
3018 }
3019#else
3020 static
3021 symbol_type
3023 {
3024 return symbol_type (token::TOKEN_OPTION_DEF, l);
3025 }
3026#endif
3027#if 201103L <= YY_CPLUSPLUS
3028 static
3029 symbol_type
3030 make_OPTION_DATA (location_type l)
3031 {
3032 return symbol_type (token::TOKEN_OPTION_DATA, std::move (l));
3033 }
3034#else
3035 static
3036 symbol_type
3038 {
3039 return symbol_type (token::TOKEN_OPTION_DATA, l);
3040 }
3041#endif
3042#if 201103L <= YY_CPLUSPLUS
3043 static
3044 symbol_type
3045 make_NAME (location_type l)
3046 {
3047 return symbol_type (token::TOKEN_NAME, std::move (l));
3048 }
3049#else
3050 static
3051 symbol_type
3053 {
3054 return symbol_type (token::TOKEN_NAME, l);
3055 }
3056#endif
3057#if 201103L <= YY_CPLUSPLUS
3058 static
3059 symbol_type
3060 make_DATA (location_type l)
3061 {
3062 return symbol_type (token::TOKEN_DATA, std::move (l));
3063 }
3064#else
3065 static
3066 symbol_type
3068 {
3069 return symbol_type (token::TOKEN_DATA, l);
3070 }
3071#endif
3072#if 201103L <= YY_CPLUSPLUS
3073 static
3074 symbol_type
3075 make_CODE (location_type l)
3076 {
3077 return symbol_type (token::TOKEN_CODE, std::move (l));
3078 }
3079#else
3080 static
3081 symbol_type
3083 {
3084 return symbol_type (token::TOKEN_CODE, l);
3085 }
3086#endif
3087#if 201103L <= YY_CPLUSPLUS
3088 static
3089 symbol_type
3090 make_SPACE (location_type l)
3091 {
3092 return symbol_type (token::TOKEN_SPACE, std::move (l));
3093 }
3094#else
3095 static
3096 symbol_type
3098 {
3099 return symbol_type (token::TOKEN_SPACE, l);
3100 }
3101#endif
3102#if 201103L <= YY_CPLUSPLUS
3103 static
3104 symbol_type
3105 make_CSV_FORMAT (location_type l)
3106 {
3107 return symbol_type (token::TOKEN_CSV_FORMAT, std::move (l));
3108 }
3109#else
3110 static
3111 symbol_type
3113 {
3114 return symbol_type (token::TOKEN_CSV_FORMAT, l);
3115 }
3116#endif
3117#if 201103L <= YY_CPLUSPLUS
3118 static
3119 symbol_type
3120 make_ALWAYS_SEND (location_type l)
3121 {
3122 return symbol_type (token::TOKEN_ALWAYS_SEND, std::move (l));
3123 }
3124#else
3125 static
3126 symbol_type
3128 {
3129 return symbol_type (token::TOKEN_ALWAYS_SEND, l);
3130 }
3131#endif
3132#if 201103L <= YY_CPLUSPLUS
3133 static
3134 symbol_type
3135 make_NEVER_SEND (location_type l)
3136 {
3137 return symbol_type (token::TOKEN_NEVER_SEND, std::move (l));
3138 }
3139#else
3140 static
3141 symbol_type
3143 {
3144 return symbol_type (token::TOKEN_NEVER_SEND, l);
3145 }
3146#endif
3147#if 201103L <= YY_CPLUSPLUS
3148 static
3149 symbol_type
3150 make_RECORD_TYPES (location_type l)
3151 {
3152 return symbol_type (token::TOKEN_RECORD_TYPES, std::move (l));
3153 }
3154#else
3155 static
3156 symbol_type
3158 {
3159 return symbol_type (token::TOKEN_RECORD_TYPES, l);
3160 }
3161#endif
3162#if 201103L <= YY_CPLUSPLUS
3163 static
3164 symbol_type
3165 make_ENCAPSULATE (location_type l)
3166 {
3167 return symbol_type (token::TOKEN_ENCAPSULATE, std::move (l));
3168 }
3169#else
3170 static
3171 symbol_type
3173 {
3174 return symbol_type (token::TOKEN_ENCAPSULATE, l);
3175 }
3176#endif
3177#if 201103L <= YY_CPLUSPLUS
3178 static
3179 symbol_type
3180 make_ARRAY (location_type l)
3181 {
3182 return symbol_type (token::TOKEN_ARRAY, std::move (l));
3183 }
3184#else
3185 static
3186 symbol_type
3188 {
3189 return symbol_type (token::TOKEN_ARRAY, l);
3190 }
3191#endif
3192#if 201103L <= YY_CPLUSPLUS
3193 static
3194 symbol_type
3195 make_PARKED_PACKET_LIMIT (location_type l)
3196 {
3197 return symbol_type (token::TOKEN_PARKED_PACKET_LIMIT, std::move (l));
3198 }
3199#else
3200 static
3201 symbol_type
3203 {
3204 return symbol_type (token::TOKEN_PARKED_PACKET_LIMIT, l);
3205 }
3206#endif
3207#if 201103L <= YY_CPLUSPLUS
3208 static
3209 symbol_type
3210 make_ALLOCATOR (location_type l)
3211 {
3212 return symbol_type (token::TOKEN_ALLOCATOR, std::move (l));
3213 }
3214#else
3215 static
3216 symbol_type
3218 {
3219 return symbol_type (token::TOKEN_ALLOCATOR, l);
3220 }
3221#endif
3222#if 201103L <= YY_CPLUSPLUS
3223 static
3224 symbol_type
3225 make_PD_ALLOCATOR (location_type l)
3226 {
3227 return symbol_type (token::TOKEN_PD_ALLOCATOR, std::move (l));
3228 }
3229#else
3230 static
3231 symbol_type
3233 {
3234 return symbol_type (token::TOKEN_PD_ALLOCATOR, l);
3235 }
3236#endif
3237#if 201103L <= YY_CPLUSPLUS
3238 static
3239 symbol_type
3240 make_DDNS_CONFLICT_RESOLUTION_MODE (location_type l)
3241 {
3242 return symbol_type (token::TOKEN_DDNS_CONFLICT_RESOLUTION_MODE, std::move (l));
3243 }
3244#else
3245 static
3246 symbol_type
3248 {
3249 return symbol_type (token::TOKEN_DDNS_CONFLICT_RESOLUTION_MODE, l);
3250 }
3251#endif
3252#if 201103L <= YY_CPLUSPLUS
3253 static
3254 symbol_type
3255 make_CHECK_WITH_DHCID (location_type l)
3256 {
3257 return symbol_type (token::TOKEN_CHECK_WITH_DHCID, std::move (l));
3258 }
3259#else
3260 static
3261 symbol_type
3263 {
3264 return symbol_type (token::TOKEN_CHECK_WITH_DHCID, l);
3265 }
3266#endif
3267#if 201103L <= YY_CPLUSPLUS
3268 static
3269 symbol_type
3270 make_NO_CHECK_WITH_DHCID (location_type l)
3271 {
3272 return symbol_type (token::TOKEN_NO_CHECK_WITH_DHCID, std::move (l));
3273 }
3274#else
3275 static
3276 symbol_type
3278 {
3279 return symbol_type (token::TOKEN_NO_CHECK_WITH_DHCID, l);
3280 }
3281#endif
3282#if 201103L <= YY_CPLUSPLUS
3283 static
3284 symbol_type
3285 make_CHECK_EXISTS_WITH_DHCID (location_type l)
3286 {
3287 return symbol_type (token::TOKEN_CHECK_EXISTS_WITH_DHCID, std::move (l));
3288 }
3289#else
3290 static
3291 symbol_type
3293 {
3294 return symbol_type (token::TOKEN_CHECK_EXISTS_WITH_DHCID, l);
3295 }
3296#endif
3297#if 201103L <= YY_CPLUSPLUS
3298 static
3299 symbol_type
3300 make_NO_CHECK_WITHOUT_DHCID (location_type l)
3301 {
3302 return symbol_type (token::TOKEN_NO_CHECK_WITHOUT_DHCID, std::move (l));
3303 }
3304#else
3305 static
3306 symbol_type
3308 {
3309 return symbol_type (token::TOKEN_NO_CHECK_WITHOUT_DHCID, l);
3310 }
3311#endif
3312#if 201103L <= YY_CPLUSPLUS
3313 static
3314 symbol_type
3315 make_SHARED_NETWORKS (location_type l)
3316 {
3317 return symbol_type (token::TOKEN_SHARED_NETWORKS, std::move (l));
3318 }
3319#else
3320 static
3321 symbol_type
3323 {
3324 return symbol_type (token::TOKEN_SHARED_NETWORKS, l);
3325 }
3326#endif
3327#if 201103L <= YY_CPLUSPLUS
3328 static
3329 symbol_type
3330 make_POOLS (location_type l)
3331 {
3332 return symbol_type (token::TOKEN_POOLS, std::move (l));
3333 }
3334#else
3335 static
3336 symbol_type
3338 {
3339 return symbol_type (token::TOKEN_POOLS, l);
3340 }
3341#endif
3342#if 201103L <= YY_CPLUSPLUS
3343 static
3344 symbol_type
3345 make_POOL (location_type l)
3346 {
3347 return symbol_type (token::TOKEN_POOL, std::move (l));
3348 }
3349#else
3350 static
3351 symbol_type
3353 {
3354 return symbol_type (token::TOKEN_POOL, l);
3355 }
3356#endif
3357#if 201103L <= YY_CPLUSPLUS
3358 static
3359 symbol_type
3360 make_PD_POOLS (location_type l)
3361 {
3362 return symbol_type (token::TOKEN_PD_POOLS, std::move (l));
3363 }
3364#else
3365 static
3366 symbol_type
3368 {
3369 return symbol_type (token::TOKEN_PD_POOLS, l);
3370 }
3371#endif
3372#if 201103L <= YY_CPLUSPLUS
3373 static
3374 symbol_type
3375 make_PREFIX (location_type l)
3376 {
3377 return symbol_type (token::TOKEN_PREFIX, std::move (l));
3378 }
3379#else
3380 static
3381 symbol_type
3383 {
3384 return symbol_type (token::TOKEN_PREFIX, l);
3385 }
3386#endif
3387#if 201103L <= YY_CPLUSPLUS
3388 static
3389 symbol_type
3390 make_PREFIX_LEN (location_type l)
3391 {
3392 return symbol_type (token::TOKEN_PREFIX_LEN, std::move (l));
3393 }
3394#else
3395 static
3396 symbol_type
3398 {
3399 return symbol_type (token::TOKEN_PREFIX_LEN, l);
3400 }
3401#endif
3402#if 201103L <= YY_CPLUSPLUS
3403 static
3404 symbol_type
3405 make_EXCLUDED_PREFIX (location_type l)
3406 {
3407 return symbol_type (token::TOKEN_EXCLUDED_PREFIX, std::move (l));
3408 }
3409#else
3410 static
3411 symbol_type
3413 {
3414 return symbol_type (token::TOKEN_EXCLUDED_PREFIX, l);
3415 }
3416#endif
3417#if 201103L <= YY_CPLUSPLUS
3418 static
3419 symbol_type
3420 make_EXCLUDED_PREFIX_LEN (location_type l)
3421 {
3422 return symbol_type (token::TOKEN_EXCLUDED_PREFIX_LEN, std::move (l));
3423 }
3424#else
3425 static
3426 symbol_type
3428 {
3429 return symbol_type (token::TOKEN_EXCLUDED_PREFIX_LEN, l);
3430 }
3431#endif
3432#if 201103L <= YY_CPLUSPLUS
3433 static
3434 symbol_type
3435 make_DELEGATED_LEN (location_type l)
3436 {
3437 return symbol_type (token::TOKEN_DELEGATED_LEN, std::move (l));
3438 }
3439#else
3440 static
3441 symbol_type
3443 {
3444 return symbol_type (token::TOKEN_DELEGATED_LEN, l);
3445 }
3446#endif
3447#if 201103L <= YY_CPLUSPLUS
3448 static
3449 symbol_type
3450 make_USER_CONTEXT (location_type l)
3451 {
3452 return symbol_type (token::TOKEN_USER_CONTEXT, std::move (l));
3453 }
3454#else
3455 static
3456 symbol_type
3458 {
3459 return symbol_type (token::TOKEN_USER_CONTEXT, l);
3460 }
3461#endif
3462#if 201103L <= YY_CPLUSPLUS
3463 static
3464 symbol_type
3465 make_COMMENT (location_type l)
3466 {
3467 return symbol_type (token::TOKEN_COMMENT, std::move (l));
3468 }
3469#else
3470 static
3471 symbol_type
3473 {
3474 return symbol_type (token::TOKEN_COMMENT, l);
3475 }
3476#endif
3477#if 201103L <= YY_CPLUSPLUS
3478 static
3479 symbol_type
3480 make_SUBNET (location_type l)
3481 {
3482 return symbol_type (token::TOKEN_SUBNET, std::move (l));
3483 }
3484#else
3485 static
3486 symbol_type
3488 {
3489 return symbol_type (token::TOKEN_SUBNET, l);
3490 }
3491#endif
3492#if 201103L <= YY_CPLUSPLUS
3493 static
3494 symbol_type
3495 make_INTERFACE (location_type l)
3496 {
3497 return symbol_type (token::TOKEN_INTERFACE, std::move (l));
3498 }
3499#else
3500 static
3501 symbol_type
3503 {
3504 return symbol_type (token::TOKEN_INTERFACE, l);
3505 }
3506#endif
3507#if 201103L <= YY_CPLUSPLUS
3508 static
3509 symbol_type
3510 make_INTERFACE_ID (location_type l)
3511 {
3512 return symbol_type (token::TOKEN_INTERFACE_ID, std::move (l));
3513 }
3514#else
3515 static
3516 symbol_type
3518 {
3519 return symbol_type (token::TOKEN_INTERFACE_ID, l);
3520 }
3521#endif
3522#if 201103L <= YY_CPLUSPLUS
3523 static
3524 symbol_type
3525 make_ID (location_type l)
3526 {
3527 return symbol_type (token::TOKEN_ID, std::move (l));
3528 }
3529#else
3530 static
3531 symbol_type
3533 {
3534 return symbol_type (token::TOKEN_ID, l);
3535 }
3536#endif
3537#if 201103L <= YY_CPLUSPLUS
3538 static
3539 symbol_type
3540 make_RAPID_COMMIT (location_type l)
3541 {
3542 return symbol_type (token::TOKEN_RAPID_COMMIT, std::move (l));
3543 }
3544#else
3545 static
3546 symbol_type
3548 {
3549 return symbol_type (token::TOKEN_RAPID_COMMIT, l);
3550 }
3551#endif
3552#if 201103L <= YY_CPLUSPLUS
3553 static
3554 symbol_type
3555 make_RESERVATIONS_GLOBAL (location_type l)
3556 {
3557 return symbol_type (token::TOKEN_RESERVATIONS_GLOBAL, std::move (l));
3558 }
3559#else
3560 static
3561 symbol_type
3563 {
3564 return symbol_type (token::TOKEN_RESERVATIONS_GLOBAL, l);
3565 }
3566#endif
3567#if 201103L <= YY_CPLUSPLUS
3568 static
3569 symbol_type
3570 make_RESERVATIONS_IN_SUBNET (location_type l)
3571 {
3572 return symbol_type (token::TOKEN_RESERVATIONS_IN_SUBNET, std::move (l));
3573 }
3574#else
3575 static
3576 symbol_type
3578 {
3579 return symbol_type (token::TOKEN_RESERVATIONS_IN_SUBNET, l);
3580 }
3581#endif
3582#if 201103L <= YY_CPLUSPLUS
3583 static
3584 symbol_type
3585 make_RESERVATIONS_OUT_OF_POOL (location_type l)
3586 {
3587 return symbol_type (token::TOKEN_RESERVATIONS_OUT_OF_POOL, std::move (l));
3588 }
3589#else
3590 static
3591 symbol_type
3593 {
3594 return symbol_type (token::TOKEN_RESERVATIONS_OUT_OF_POOL, l);
3595 }
3596#endif
3597#if 201103L <= YY_CPLUSPLUS
3598 static
3599 symbol_type
3600 make_MAC_SOURCES (location_type l)
3601 {
3602 return symbol_type (token::TOKEN_MAC_SOURCES, std::move (l));
3603 }
3604#else
3605 static
3606 symbol_type
3608 {
3609 return symbol_type (token::TOKEN_MAC_SOURCES, l);
3610 }
3611#endif
3612#if 201103L <= YY_CPLUSPLUS
3613 static
3614 symbol_type
3615 make_RELAY_SUPPLIED_OPTIONS (location_type l)
3616 {
3617 return symbol_type (token::TOKEN_RELAY_SUPPLIED_OPTIONS, std::move (l));
3618 }
3619#else
3620 static
3621 symbol_type
3623 {
3624 return symbol_type (token::TOKEN_RELAY_SUPPLIED_OPTIONS, l);
3625 }
3626#endif
3627#if 201103L <= YY_CPLUSPLUS
3628 static
3629 symbol_type
3630 make_HOST_RESERVATION_IDENTIFIERS (location_type l)
3631 {
3632 return symbol_type (token::TOKEN_HOST_RESERVATION_IDENTIFIERS, std::move (l));
3633 }
3634#else
3635 static
3636 symbol_type
3638 {
3639 return symbol_type (token::TOKEN_HOST_RESERVATION_IDENTIFIERS, l);
3640 }
3641#endif
3642#if 201103L <= YY_CPLUSPLUS
3643 static
3644 symbol_type
3645 make_SANITY_CHECKS (location_type l)
3646 {
3647 return symbol_type (token::TOKEN_SANITY_CHECKS, std::move (l));
3648 }
3649#else
3650 static
3651 symbol_type
3653 {
3654 return symbol_type (token::TOKEN_SANITY_CHECKS, l);
3655 }
3656#endif
3657#if 201103L <= YY_CPLUSPLUS
3658 static
3659 symbol_type
3660 make_LEASE_CHECKS (location_type l)
3661 {
3662 return symbol_type (token::TOKEN_LEASE_CHECKS, std::move (l));
3663 }
3664#else
3665 static
3666 symbol_type
3668 {
3669 return symbol_type (token::TOKEN_LEASE_CHECKS, l);
3670 }
3671#endif
3672#if 201103L <= YY_CPLUSPLUS
3673 static
3674 symbol_type
3675 make_EXTENDED_INFO_CHECKS (location_type l)
3676 {
3677 return symbol_type (token::TOKEN_EXTENDED_INFO_CHECKS, std::move (l));
3678 }
3679#else
3680 static
3681 symbol_type
3683 {
3684 return symbol_type (token::TOKEN_EXTENDED_INFO_CHECKS, l);
3685 }
3686#endif
3687#if 201103L <= YY_CPLUSPLUS
3688 static
3689 symbol_type
3690 make_CLIENT_CLASSES (location_type l)
3691 {
3692 return symbol_type (token::TOKEN_CLIENT_CLASSES, std::move (l));
3693 }
3694#else
3695 static
3696 symbol_type
3698 {
3699 return symbol_type (token::TOKEN_CLIENT_CLASSES, l);
3700 }
3701#endif
3702#if 201103L <= YY_CPLUSPLUS
3703 static
3704 symbol_type
3705 make_REQUIRE_CLIENT_CLASSES (location_type l)
3706 {
3707 return symbol_type (token::TOKEN_REQUIRE_CLIENT_CLASSES, std::move (l));
3708 }
3709#else
3710 static
3711 symbol_type
3713 {
3714 return symbol_type (token::TOKEN_REQUIRE_CLIENT_CLASSES, l);
3715 }
3716#endif
3717#if 201103L <= YY_CPLUSPLUS
3718 static
3719 symbol_type
3720 make_EVALUATE_ADDITIONAL_CLASSES (location_type l)
3721 {
3722 return symbol_type (token::TOKEN_EVALUATE_ADDITIONAL_CLASSES, std::move (l));
3723 }
3724#else
3725 static
3726 symbol_type
3728 {
3729 return symbol_type (token::TOKEN_EVALUATE_ADDITIONAL_CLASSES, l);
3730 }
3731#endif
3732#if 201103L <= YY_CPLUSPLUS
3733 static
3734 symbol_type
3735 make_TEST (location_type l)
3736 {
3737 return symbol_type (token::TOKEN_TEST, std::move (l));
3738 }
3739#else
3740 static
3741 symbol_type
3743 {
3744 return symbol_type (token::TOKEN_TEST, l);
3745 }
3746#endif
3747#if 201103L <= YY_CPLUSPLUS
3748 static
3749 symbol_type
3750 make_TEMPLATE_TEST (location_type l)
3751 {
3752 return symbol_type (token::TOKEN_TEMPLATE_TEST, std::move (l));
3753 }
3754#else
3755 static
3756 symbol_type
3758 {
3759 return symbol_type (token::TOKEN_TEMPLATE_TEST, l);
3760 }
3761#endif
3762#if 201103L <= YY_CPLUSPLUS
3763 static
3764 symbol_type
3765 make_ONLY_IF_REQUIRED (location_type l)
3766 {
3767 return symbol_type (token::TOKEN_ONLY_IF_REQUIRED, std::move (l));
3768 }
3769#else
3770 static
3771 symbol_type
3773 {
3774 return symbol_type (token::TOKEN_ONLY_IF_REQUIRED, l);
3775 }
3776#endif
3777#if 201103L <= YY_CPLUSPLUS
3778 static
3779 symbol_type
3780 make_ONLY_IN_ADDITIONAL_LIST (location_type l)
3781 {
3782 return symbol_type (token::TOKEN_ONLY_IN_ADDITIONAL_LIST, std::move (l));
3783 }
3784#else
3785 static
3786 symbol_type
3788 {
3789 return symbol_type (token::TOKEN_ONLY_IN_ADDITIONAL_LIST, l);
3790 }
3791#endif
3792#if 201103L <= YY_CPLUSPLUS
3793 static
3794 symbol_type
3795 make_CLIENT_CLASS (location_type l)
3796 {
3797 return symbol_type (token::TOKEN_CLIENT_CLASS, std::move (l));
3798 }
3799#else
3800 static
3801 symbol_type
3803 {
3804 return symbol_type (token::TOKEN_CLIENT_CLASS, l);
3805 }
3806#endif
3807#if 201103L <= YY_CPLUSPLUS
3808 static
3809 symbol_type
3810 make_POOL_ID (location_type l)
3811 {
3812 return symbol_type (token::TOKEN_POOL_ID, std::move (l));
3813 }
3814#else
3815 static
3816 symbol_type
3818 {
3819 return symbol_type (token::TOKEN_POOL_ID, l);
3820 }
3821#endif
3822#if 201103L <= YY_CPLUSPLUS
3823 static
3824 symbol_type
3825 make_RESERVATIONS (location_type l)
3826 {
3827 return symbol_type (token::TOKEN_RESERVATIONS, std::move (l));
3828 }
3829#else
3830 static
3831 symbol_type
3833 {
3834 return symbol_type (token::TOKEN_RESERVATIONS, l);
3835 }
3836#endif
3837#if 201103L <= YY_CPLUSPLUS
3838 static
3839 symbol_type
3840 make_IP_ADDRESSES (location_type l)
3841 {
3842 return symbol_type (token::TOKEN_IP_ADDRESSES, std::move (l));
3843 }
3844#else
3845 static
3846 symbol_type
3848 {
3849 return symbol_type (token::TOKEN_IP_ADDRESSES, l);
3850 }
3851#endif
3852#if 201103L <= YY_CPLUSPLUS
3853 static
3854 symbol_type
3855 make_PREFIXES (location_type l)
3856 {
3857 return symbol_type (token::TOKEN_PREFIXES, std::move (l));
3858 }
3859#else
3860 static
3861 symbol_type
3863 {
3864 return symbol_type (token::TOKEN_PREFIXES, l);
3865 }
3866#endif
3867#if 201103L <= YY_CPLUSPLUS
3868 static
3869 symbol_type
3870 make_EXCLUDED_PREFIXES (location_type l)
3871 {
3872 return symbol_type (token::TOKEN_EXCLUDED_PREFIXES, std::move (l));
3873 }
3874#else
3875 static
3876 symbol_type
3878 {
3879 return symbol_type (token::TOKEN_EXCLUDED_PREFIXES, l);
3880 }
3881#endif
3882#if 201103L <= YY_CPLUSPLUS
3883 static
3884 symbol_type
3885 make_DUID (location_type l)
3886 {
3887 return symbol_type (token::TOKEN_DUID, std::move (l));
3888 }
3889#else
3890 static
3891 symbol_type
3893 {
3894 return symbol_type (token::TOKEN_DUID, l);
3895 }
3896#endif
3897#if 201103L <= YY_CPLUSPLUS
3898 static
3899 symbol_type
3900 make_HW_ADDRESS (location_type l)
3901 {
3902 return symbol_type (token::TOKEN_HW_ADDRESS, std::move (l));
3903 }
3904#else
3905 static
3906 symbol_type
3908 {
3909 return symbol_type (token::TOKEN_HW_ADDRESS, l);
3910 }
3911#endif
3912#if 201103L <= YY_CPLUSPLUS
3913 static
3914 symbol_type
3915 make_HOSTNAME (location_type l)
3916 {
3917 return symbol_type (token::TOKEN_HOSTNAME, std::move (l));
3918 }
3919#else
3920 static
3921 symbol_type
3923 {
3924 return symbol_type (token::TOKEN_HOSTNAME, l);
3925 }
3926#endif
3927#if 201103L <= YY_CPLUSPLUS
3928 static
3929 symbol_type
3930 make_FLEX_ID (location_type l)
3931 {
3932 return symbol_type (token::TOKEN_FLEX_ID, std::move (l));
3933 }
3934#else
3935 static
3936 symbol_type
3938 {
3939 return symbol_type (token::TOKEN_FLEX_ID, l);
3940 }
3941#endif
3942#if 201103L <= YY_CPLUSPLUS
3943 static
3944 symbol_type
3945 make_RELAY (location_type l)
3946 {
3947 return symbol_type (token::TOKEN_RELAY, std::move (l));
3948 }
3949#else
3950 static
3951 symbol_type
3953 {
3954 return symbol_type (token::TOKEN_RELAY, l);
3955 }
3956#endif
3957#if 201103L <= YY_CPLUSPLUS
3958 static
3959 symbol_type
3960 make_HOOKS_LIBRARIES (location_type l)
3961 {
3962 return symbol_type (token::TOKEN_HOOKS_LIBRARIES, std::move (l));
3963 }
3964#else
3965 static
3966 symbol_type
3968 {
3969 return symbol_type (token::TOKEN_HOOKS_LIBRARIES, l);
3970 }
3971#endif
3972#if 201103L <= YY_CPLUSPLUS
3973 static
3974 symbol_type
3975 make_LIBRARY (location_type l)
3976 {
3977 return symbol_type (token::TOKEN_LIBRARY, std::move (l));
3978 }
3979#else
3980 static
3981 symbol_type
3983 {
3984 return symbol_type (token::TOKEN_LIBRARY, l);
3985 }
3986#endif
3987#if 201103L <= YY_CPLUSPLUS
3988 static
3989 symbol_type
3990 make_PARAMETERS (location_type l)
3991 {
3992 return symbol_type (token::TOKEN_PARAMETERS, std::move (l));
3993 }
3994#else
3995 static
3996 symbol_type
3998 {
3999 return symbol_type (token::TOKEN_PARAMETERS, l);
4000 }
4001#endif
4002#if 201103L <= YY_CPLUSPLUS
4003 static
4004 symbol_type
4005 make_EXPIRED_LEASES_PROCESSING (location_type l)
4006 {
4007 return symbol_type (token::TOKEN_EXPIRED_LEASES_PROCESSING, std::move (l));
4008 }
4009#else
4010 static
4011 symbol_type
4013 {
4014 return symbol_type (token::TOKEN_EXPIRED_LEASES_PROCESSING, l);
4015 }
4016#endif
4017#if 201103L <= YY_CPLUSPLUS
4018 static
4019 symbol_type
4020 make_RECLAIM_TIMER_WAIT_TIME (location_type l)
4021 {
4022 return symbol_type (token::TOKEN_RECLAIM_TIMER_WAIT_TIME, std::move (l));
4023 }
4024#else
4025 static
4026 symbol_type
4028 {
4029 return symbol_type (token::TOKEN_RECLAIM_TIMER_WAIT_TIME, l);
4030 }
4031#endif
4032#if 201103L <= YY_CPLUSPLUS
4033 static
4034 symbol_type
4035 make_FLUSH_RECLAIMED_TIMER_WAIT_TIME (location_type l)
4036 {
4037 return symbol_type (token::TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME, std::move (l));
4038 }
4039#else
4040 static
4041 symbol_type
4043 {
4044 return symbol_type (token::TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME, l);
4045 }
4046#endif
4047#if 201103L <= YY_CPLUSPLUS
4048 static
4049 symbol_type
4050 make_HOLD_RECLAIMED_TIME (location_type l)
4051 {
4052 return symbol_type (token::TOKEN_HOLD_RECLAIMED_TIME, std::move (l));
4053 }
4054#else
4055 static
4056 symbol_type
4058 {
4059 return symbol_type (token::TOKEN_HOLD_RECLAIMED_TIME, l);
4060 }
4061#endif
4062#if 201103L <= YY_CPLUSPLUS
4063 static
4064 symbol_type
4065 make_MAX_RECLAIM_LEASES (location_type l)
4066 {
4067 return symbol_type (token::TOKEN_MAX_RECLAIM_LEASES, std::move (l));
4068 }
4069#else
4070 static
4071 symbol_type
4073 {
4074 return symbol_type (token::TOKEN_MAX_RECLAIM_LEASES, l);
4075 }
4076#endif
4077#if 201103L <= YY_CPLUSPLUS
4078 static
4079 symbol_type
4080 make_MAX_RECLAIM_TIME (location_type l)
4081 {
4082 return symbol_type (token::TOKEN_MAX_RECLAIM_TIME, std::move (l));
4083 }
4084#else
4085 static
4086 symbol_type
4088 {
4089 return symbol_type (token::TOKEN_MAX_RECLAIM_TIME, l);
4090 }
4091#endif
4092#if 201103L <= YY_CPLUSPLUS
4093 static
4094 symbol_type
4095 make_UNWARNED_RECLAIM_CYCLES (location_type l)
4096 {
4097 return symbol_type (token::TOKEN_UNWARNED_RECLAIM_CYCLES, std::move (l));
4098 }
4099#else
4100 static
4101 symbol_type
4103 {
4104 return symbol_type (token::TOKEN_UNWARNED_RECLAIM_CYCLES, l);
4105 }
4106#endif
4107#if 201103L <= YY_CPLUSPLUS
4108 static
4109 symbol_type
4110 make_SERVER_ID (location_type l)
4111 {
4112 return symbol_type (token::TOKEN_SERVER_ID, std::move (l));
4113 }
4114#else
4115 static
4116 symbol_type
4118 {
4119 return symbol_type (token::TOKEN_SERVER_ID, l);
4120 }
4121#endif
4122#if 201103L <= YY_CPLUSPLUS
4123 static
4124 symbol_type
4125 make_LLT (location_type l)
4126 {
4127 return symbol_type (token::TOKEN_LLT, std::move (l));
4128 }
4129#else
4130 static
4131 symbol_type
4133 {
4134 return symbol_type (token::TOKEN_LLT, l);
4135 }
4136#endif
4137#if 201103L <= YY_CPLUSPLUS
4138 static
4139 symbol_type
4140 make_EN (location_type l)
4141 {
4142 return symbol_type (token::TOKEN_EN, std::move (l));
4143 }
4144#else
4145 static
4146 symbol_type
4148 {
4149 return symbol_type (token::TOKEN_EN, l);
4150 }
4151#endif
4152#if 201103L <= YY_CPLUSPLUS
4153 static
4154 symbol_type
4155 make_LL (location_type l)
4156 {
4157 return symbol_type (token::TOKEN_LL, std::move (l));
4158 }
4159#else
4160 static
4161 symbol_type
4163 {
4164 return symbol_type (token::TOKEN_LL, l);
4165 }
4166#endif
4167#if 201103L <= YY_CPLUSPLUS
4168 static
4169 symbol_type
4170 make_IDENTIFIER (location_type l)
4171 {
4172 return symbol_type (token::TOKEN_IDENTIFIER, std::move (l));
4173 }
4174#else
4175 static
4176 symbol_type
4178 {
4179 return symbol_type (token::TOKEN_IDENTIFIER, l);
4180 }
4181#endif
4182#if 201103L <= YY_CPLUSPLUS
4183 static
4184 symbol_type
4185 make_HTYPE (location_type l)
4186 {
4187 return symbol_type (token::TOKEN_HTYPE, std::move (l));
4188 }
4189#else
4190 static
4191 symbol_type
4193 {
4194 return symbol_type (token::TOKEN_HTYPE, l);
4195 }
4196#endif
4197#if 201103L <= YY_CPLUSPLUS
4198 static
4199 symbol_type
4200 make_TIME (location_type l)
4201 {
4202 return symbol_type (token::TOKEN_TIME, std::move (l));
4203 }
4204#else
4205 static
4206 symbol_type
4208 {
4209 return symbol_type (token::TOKEN_TIME, l);
4210 }
4211#endif
4212#if 201103L <= YY_CPLUSPLUS
4213 static
4214 symbol_type
4215 make_ENTERPRISE_ID (location_type l)
4216 {
4217 return symbol_type (token::TOKEN_ENTERPRISE_ID, std::move (l));
4218 }
4219#else
4220 static
4221 symbol_type
4223 {
4224 return symbol_type (token::TOKEN_ENTERPRISE_ID, l);
4225 }
4226#endif
4227#if 201103L <= YY_CPLUSPLUS
4228 static
4229 symbol_type
4230 make_DHCP4O6_PORT (location_type l)
4231 {
4232 return symbol_type (token::TOKEN_DHCP4O6_PORT, std::move (l));
4233 }
4234#else
4235 static
4236 symbol_type
4238 {
4239 return symbol_type (token::TOKEN_DHCP4O6_PORT, l);
4240 }
4241#endif
4242#if 201103L <= YY_CPLUSPLUS
4243 static
4244 symbol_type
4245 make_DHCP_MULTI_THREADING (location_type l)
4246 {
4247 return symbol_type (token::TOKEN_DHCP_MULTI_THREADING, std::move (l));
4248 }
4249#else
4250 static
4251 symbol_type
4253 {
4254 return symbol_type (token::TOKEN_DHCP_MULTI_THREADING, l);
4255 }
4256#endif
4257#if 201103L <= YY_CPLUSPLUS
4258 static
4259 symbol_type
4260 make_ENABLE_MULTI_THREADING (location_type l)
4261 {
4262 return symbol_type (token::TOKEN_ENABLE_MULTI_THREADING, std::move (l));
4263 }
4264#else
4265 static
4266 symbol_type
4268 {
4269 return symbol_type (token::TOKEN_ENABLE_MULTI_THREADING, l);
4270 }
4271#endif
4272#if 201103L <= YY_CPLUSPLUS
4273 static
4274 symbol_type
4275 make_THREAD_POOL_SIZE (location_type l)
4276 {
4277 return symbol_type (token::TOKEN_THREAD_POOL_SIZE, std::move (l));
4278 }
4279#else
4280 static
4281 symbol_type
4283 {
4284 return symbol_type (token::TOKEN_THREAD_POOL_SIZE, l);
4285 }
4286#endif
4287#if 201103L <= YY_CPLUSPLUS
4288 static
4289 symbol_type
4290 make_PACKET_QUEUE_SIZE (location_type l)
4291 {
4292 return symbol_type (token::TOKEN_PACKET_QUEUE_SIZE, std::move (l));
4293 }
4294#else
4295 static
4296 symbol_type
4298 {
4299 return symbol_type (token::TOKEN_PACKET_QUEUE_SIZE, l);
4300 }
4301#endif
4302#if 201103L <= YY_CPLUSPLUS
4303 static
4304 symbol_type
4305 make_CONTROL_SOCKET (location_type l)
4306 {
4307 return symbol_type (token::TOKEN_CONTROL_SOCKET, std::move (l));
4308 }
4309#else
4310 static
4311 symbol_type
4313 {
4314 return symbol_type (token::TOKEN_CONTROL_SOCKET, l);
4315 }
4316#endif
4317#if 201103L <= YY_CPLUSPLUS
4318 static
4319 symbol_type
4320 make_CONTROL_SOCKETS (location_type l)
4321 {
4322 return symbol_type (token::TOKEN_CONTROL_SOCKETS, std::move (l));
4323 }
4324#else
4325 static
4326 symbol_type
4328 {
4329 return symbol_type (token::TOKEN_CONTROL_SOCKETS, l);
4330 }
4331#endif
4332#if 201103L <= YY_CPLUSPLUS
4333 static
4334 symbol_type
4335 make_SOCKET_TYPE (location_type l)
4336 {
4337 return symbol_type (token::TOKEN_SOCKET_TYPE, std::move (l));
4338 }
4339#else
4340 static
4341 symbol_type
4343 {
4344 return symbol_type (token::TOKEN_SOCKET_TYPE, l);
4345 }
4346#endif
4347#if 201103L <= YY_CPLUSPLUS
4348 static
4349 symbol_type
4350 make_UNIX (location_type l)
4351 {
4352 return symbol_type (token::TOKEN_UNIX, std::move (l));
4353 }
4354#else
4355 static
4356 symbol_type
4358 {
4359 return symbol_type (token::TOKEN_UNIX, l);
4360 }
4361#endif
4362#if 201103L <= YY_CPLUSPLUS
4363 static
4364 symbol_type
4365 make_HTTP (location_type l)
4366 {
4367 return symbol_type (token::TOKEN_HTTP, std::move (l));
4368 }
4369#else
4370 static
4371 symbol_type
4373 {
4374 return symbol_type (token::TOKEN_HTTP, l);
4375 }
4376#endif
4377#if 201103L <= YY_CPLUSPLUS
4378 static
4379 symbol_type
4380 make_HTTPS (location_type l)
4381 {
4382 return symbol_type (token::TOKEN_HTTPS, std::move (l));
4383 }
4384#else
4385 static
4386 symbol_type
4388 {
4389 return symbol_type (token::TOKEN_HTTPS, l);
4390 }
4391#endif
4392#if 201103L <= YY_CPLUSPLUS
4393 static
4394 symbol_type
4395 make_SOCKET_NAME (location_type l)
4396 {
4397 return symbol_type (token::TOKEN_SOCKET_NAME, std::move (l));
4398 }
4399#else
4400 static
4401 symbol_type
4403 {
4404 return symbol_type (token::TOKEN_SOCKET_NAME, l);
4405 }
4406#endif
4407#if 201103L <= YY_CPLUSPLUS
4408 static
4409 symbol_type
4410 make_SOCKET_ADDRESS (location_type l)
4411 {
4412 return symbol_type (token::TOKEN_SOCKET_ADDRESS, std::move (l));
4413 }
4414#else
4415 static
4416 symbol_type
4418 {
4419 return symbol_type (token::TOKEN_SOCKET_ADDRESS, l);
4420 }
4421#endif
4422#if 201103L <= YY_CPLUSPLUS
4423 static
4424 symbol_type
4425 make_SOCKET_PORT (location_type l)
4426 {
4427 return symbol_type (token::TOKEN_SOCKET_PORT, std::move (l));
4428 }
4429#else
4430 static
4431 symbol_type
4433 {
4434 return symbol_type (token::TOKEN_SOCKET_PORT, l);
4435 }
4436#endif
4437#if 201103L <= YY_CPLUSPLUS
4438 static
4439 symbol_type
4440 make_AUTHENTICATION (location_type l)
4441 {
4442 return symbol_type (token::TOKEN_AUTHENTICATION, std::move (l));
4443 }
4444#else
4445 static
4446 symbol_type
4448 {
4449 return symbol_type (token::TOKEN_AUTHENTICATION, l);
4450 }
4451#endif
4452#if 201103L <= YY_CPLUSPLUS
4453 static
4454 symbol_type
4455 make_BASIC (location_type l)
4456 {
4457 return symbol_type (token::TOKEN_BASIC, std::move (l));
4458 }
4459#else
4460 static
4461 symbol_type
4463 {
4464 return symbol_type (token::TOKEN_BASIC, l);
4465 }
4466#endif
4467#if 201103L <= YY_CPLUSPLUS
4468 static
4469 symbol_type
4470 make_REALM (location_type l)
4471 {
4472 return symbol_type (token::TOKEN_REALM, std::move (l));
4473 }
4474#else
4475 static
4476 symbol_type
4478 {
4479 return symbol_type (token::TOKEN_REALM, l);
4480 }
4481#endif
4482#if 201103L <= YY_CPLUSPLUS
4483 static
4484 symbol_type
4485 make_DIRECTORY (location_type l)
4486 {
4487 return symbol_type (token::TOKEN_DIRECTORY, std::move (l));
4488 }
4489#else
4490 static
4491 symbol_type
4493 {
4494 return symbol_type (token::TOKEN_DIRECTORY, l);
4495 }
4496#endif
4497#if 201103L <= YY_CPLUSPLUS
4498 static
4499 symbol_type
4500 make_CLIENTS (location_type l)
4501 {
4502 return symbol_type (token::TOKEN_CLIENTS, std::move (l));
4503 }
4504#else
4505 static
4506 symbol_type
4508 {
4509 return symbol_type (token::TOKEN_CLIENTS, l);
4510 }
4511#endif
4512#if 201103L <= YY_CPLUSPLUS
4513 static
4514 symbol_type
4515 make_USER_FILE (location_type l)
4516 {
4517 return symbol_type (token::TOKEN_USER_FILE, std::move (l));
4518 }
4519#else
4520 static
4521 symbol_type
4523 {
4524 return symbol_type (token::TOKEN_USER_FILE, l);
4525 }
4526#endif
4527#if 201103L <= YY_CPLUSPLUS
4528 static
4529 symbol_type
4530 make_PASSWORD_FILE (location_type l)
4531 {
4532 return symbol_type (token::TOKEN_PASSWORD_FILE, std::move (l));
4533 }
4534#else
4535 static
4536 symbol_type
4538 {
4539 return symbol_type (token::TOKEN_PASSWORD_FILE, l);
4540 }
4541#endif
4542#if 201103L <= YY_CPLUSPLUS
4543 static
4544 symbol_type
4545 make_CERT_REQUIRED (location_type l)
4546 {
4547 return symbol_type (token::TOKEN_CERT_REQUIRED, std::move (l));
4548 }
4549#else
4550 static
4551 symbol_type
4553 {
4554 return symbol_type (token::TOKEN_CERT_REQUIRED, l);
4555 }
4556#endif
4557#if 201103L <= YY_CPLUSPLUS
4558 static
4559 symbol_type
4560 make_DHCP_QUEUE_CONTROL (location_type l)
4561 {
4562 return symbol_type (token::TOKEN_DHCP_QUEUE_CONTROL, std::move (l));
4563 }
4564#else
4565 static
4566 symbol_type
4568 {
4569 return symbol_type (token::TOKEN_DHCP_QUEUE_CONTROL, l);
4570 }
4571#endif
4572#if 201103L <= YY_CPLUSPLUS
4573 static
4574 symbol_type
4575 make_ENABLE_QUEUE (location_type l)
4576 {
4577 return symbol_type (token::TOKEN_ENABLE_QUEUE, std::move (l));
4578 }
4579#else
4580 static
4581 symbol_type
4583 {
4584 return symbol_type (token::TOKEN_ENABLE_QUEUE, l);
4585 }
4586#endif
4587#if 201103L <= YY_CPLUSPLUS
4588 static
4589 symbol_type
4590 make_QUEUE_TYPE (location_type l)
4591 {
4592 return symbol_type (token::TOKEN_QUEUE_TYPE, std::move (l));
4593 }
4594#else
4595 static
4596 symbol_type
4598 {
4599 return symbol_type (token::TOKEN_QUEUE_TYPE, l);
4600 }
4601#endif
4602#if 201103L <= YY_CPLUSPLUS
4603 static
4604 symbol_type
4605 make_CAPACITY (location_type l)
4606 {
4607 return symbol_type (token::TOKEN_CAPACITY, std::move (l));
4608 }
4609#else
4610 static
4611 symbol_type
4613 {
4614 return symbol_type (token::TOKEN_CAPACITY, l);
4615 }
4616#endif
4617#if 201103L <= YY_CPLUSPLUS
4618 static
4619 symbol_type
4620 make_DHCP_DDNS (location_type l)
4621 {
4622 return symbol_type (token::TOKEN_DHCP_DDNS, std::move (l));
4623 }
4624#else
4625 static
4626 symbol_type
4628 {
4629 return symbol_type (token::TOKEN_DHCP_DDNS, l);
4630 }
4631#endif
4632#if 201103L <= YY_CPLUSPLUS
4633 static
4634 symbol_type
4635 make_ENABLE_UPDATES (location_type l)
4636 {
4637 return symbol_type (token::TOKEN_ENABLE_UPDATES, std::move (l));
4638 }
4639#else
4640 static
4641 symbol_type
4643 {
4644 return symbol_type (token::TOKEN_ENABLE_UPDATES, l);
4645 }
4646#endif
4647#if 201103L <= YY_CPLUSPLUS
4648 static
4649 symbol_type
4650 make_SERVER_IP (location_type l)
4651 {
4652 return symbol_type (token::TOKEN_SERVER_IP, std::move (l));
4653 }
4654#else
4655 static
4656 symbol_type
4658 {
4659 return symbol_type (token::TOKEN_SERVER_IP, l);
4660 }
4661#endif
4662#if 201103L <= YY_CPLUSPLUS
4663 static
4664 symbol_type
4665 make_SERVER_PORT (location_type l)
4666 {
4667 return symbol_type (token::TOKEN_SERVER_PORT, std::move (l));
4668 }
4669#else
4670 static
4671 symbol_type
4673 {
4674 return symbol_type (token::TOKEN_SERVER_PORT, l);
4675 }
4676#endif
4677#if 201103L <= YY_CPLUSPLUS
4678 static
4679 symbol_type
4680 make_SENDER_IP (location_type l)
4681 {
4682 return symbol_type (token::TOKEN_SENDER_IP, std::move (l));
4683 }
4684#else
4685 static
4686 symbol_type
4688 {
4689 return symbol_type (token::TOKEN_SENDER_IP, l);
4690 }
4691#endif
4692#if 201103L <= YY_CPLUSPLUS
4693 static
4694 symbol_type
4695 make_SENDER_PORT (location_type l)
4696 {
4697 return symbol_type (token::TOKEN_SENDER_PORT, std::move (l));
4698 }
4699#else
4700 static
4701 symbol_type
4703 {
4704 return symbol_type (token::TOKEN_SENDER_PORT, l);
4705 }
4706#endif
4707#if 201103L <= YY_CPLUSPLUS
4708 static
4709 symbol_type
4710 make_MAX_QUEUE_SIZE (location_type l)
4711 {
4712 return symbol_type (token::TOKEN_MAX_QUEUE_SIZE, std::move (l));
4713 }
4714#else
4715 static
4716 symbol_type
4718 {
4719 return symbol_type (token::TOKEN_MAX_QUEUE_SIZE, l);
4720 }
4721#endif
4722#if 201103L <= YY_CPLUSPLUS
4723 static
4724 symbol_type
4725 make_NCR_PROTOCOL (location_type l)
4726 {
4727 return symbol_type (token::TOKEN_NCR_PROTOCOL, std::move (l));
4728 }
4729#else
4730 static
4731 symbol_type
4733 {
4734 return symbol_type (token::TOKEN_NCR_PROTOCOL, l);
4735 }
4736#endif
4737#if 201103L <= YY_CPLUSPLUS
4738 static
4739 symbol_type
4740 make_NCR_FORMAT (location_type l)
4741 {
4742 return symbol_type (token::TOKEN_NCR_FORMAT, std::move (l));
4743 }
4744#else
4745 static
4746 symbol_type
4748 {
4749 return symbol_type (token::TOKEN_NCR_FORMAT, l);
4750 }
4751#endif
4752#if 201103L <= YY_CPLUSPLUS
4753 static
4754 symbol_type
4755 make_UDP (location_type l)
4756 {
4757 return symbol_type (token::TOKEN_UDP, std::move (l));
4758 }
4759#else
4760 static
4761 symbol_type
4763 {
4764 return symbol_type (token::TOKEN_UDP, l);
4765 }
4766#endif
4767#if 201103L <= YY_CPLUSPLUS
4768 static
4769 symbol_type
4770 make_TCP (location_type l)
4771 {
4772 return symbol_type (token::TOKEN_TCP, std::move (l));
4773 }
4774#else
4775 static
4776 symbol_type
4778 {
4779 return symbol_type (token::TOKEN_TCP, l);
4780 }
4781#endif
4782#if 201103L <= YY_CPLUSPLUS
4783 static
4784 symbol_type
4785 make_JSON (location_type l)
4786 {
4787 return symbol_type (token::TOKEN_JSON, std::move (l));
4788 }
4789#else
4790 static
4791 symbol_type
4793 {
4794 return symbol_type (token::TOKEN_JSON, l);
4795 }
4796#endif
4797#if 201103L <= YY_CPLUSPLUS
4798 static
4799 symbol_type
4800 make_WHEN_PRESENT (location_type l)
4801 {
4802 return symbol_type (token::TOKEN_WHEN_PRESENT, std::move (l));
4803 }
4804#else
4805 static
4806 symbol_type
4808 {
4809 return symbol_type (token::TOKEN_WHEN_PRESENT, l);
4810 }
4811#endif
4812#if 201103L <= YY_CPLUSPLUS
4813 static
4814 symbol_type
4815 make_NEVER (location_type l)
4816 {
4817 return symbol_type (token::TOKEN_NEVER, std::move (l));
4818 }
4819#else
4820 static
4821 symbol_type
4823 {
4824 return symbol_type (token::TOKEN_NEVER, l);
4825 }
4826#endif
4827#if 201103L <= YY_CPLUSPLUS
4828 static
4829 symbol_type
4830 make_ALWAYS (location_type l)
4831 {
4832 return symbol_type (token::TOKEN_ALWAYS, std::move (l));
4833 }
4834#else
4835 static
4836 symbol_type
4838 {
4839 return symbol_type (token::TOKEN_ALWAYS, l);
4840 }
4841#endif
4842#if 201103L <= YY_CPLUSPLUS
4843 static
4844 symbol_type
4845 make_WHEN_NOT_PRESENT (location_type l)
4846 {
4847 return symbol_type (token::TOKEN_WHEN_NOT_PRESENT, std::move (l));
4848 }
4849#else
4850 static
4851 symbol_type
4853 {
4854 return symbol_type (token::TOKEN_WHEN_NOT_PRESENT, l);
4855 }
4856#endif
4857#if 201103L <= YY_CPLUSPLUS
4858 static
4859 symbol_type
4860 make_HOSTNAME_CHAR_SET (location_type l)
4861 {
4862 return symbol_type (token::TOKEN_HOSTNAME_CHAR_SET, std::move (l));
4863 }
4864#else
4865 static
4866 symbol_type
4868 {
4869 return symbol_type (token::TOKEN_HOSTNAME_CHAR_SET, l);
4870 }
4871#endif
4872#if 201103L <= YY_CPLUSPLUS
4873 static
4874 symbol_type
4875 make_HOSTNAME_CHAR_REPLACEMENT (location_type l)
4876 {
4877 return symbol_type (token::TOKEN_HOSTNAME_CHAR_REPLACEMENT, std::move (l));
4878 }
4879#else
4880 static
4881 symbol_type
4883 {
4884 return symbol_type (token::TOKEN_HOSTNAME_CHAR_REPLACEMENT, l);
4885 }
4886#endif
4887#if 201103L <= YY_CPLUSPLUS
4888 static
4889 symbol_type
4890 make_EARLY_GLOBAL_RESERVATIONS_LOOKUP (location_type l)
4891 {
4892 return symbol_type (token::TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP, std::move (l));
4893 }
4894#else
4895 static
4896 symbol_type
4898 {
4899 return symbol_type (token::TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP, l);
4900 }
4901#endif
4902#if 201103L <= YY_CPLUSPLUS
4903 static
4904 symbol_type
4905 make_IP_RESERVATIONS_UNIQUE (location_type l)
4906 {
4907 return symbol_type (token::TOKEN_IP_RESERVATIONS_UNIQUE, std::move (l));
4908 }
4909#else
4910 static
4911 symbol_type
4913 {
4914 return symbol_type (token::TOKEN_IP_RESERVATIONS_UNIQUE, l);
4915 }
4916#endif
4917#if 201103L <= YY_CPLUSPLUS
4918 static
4919 symbol_type
4920 make_RESERVATIONS_LOOKUP_FIRST (location_type l)
4921 {
4922 return symbol_type (token::TOKEN_RESERVATIONS_LOOKUP_FIRST, std::move (l));
4923 }
4924#else
4925 static
4926 symbol_type
4928 {
4929 return symbol_type (token::TOKEN_RESERVATIONS_LOOKUP_FIRST, l);
4930 }
4931#endif
4932#if 201103L <= YY_CPLUSPLUS
4933 static
4934 symbol_type
4935 make_LOGGERS (location_type l)
4936 {
4937 return symbol_type (token::TOKEN_LOGGERS, std::move (l));
4938 }
4939#else
4940 static
4941 symbol_type
4943 {
4944 return symbol_type (token::TOKEN_LOGGERS, l);
4945 }
4946#endif
4947#if 201103L <= YY_CPLUSPLUS
4948 static
4949 symbol_type
4950 make_OUTPUT_OPTIONS (location_type l)
4951 {
4952 return symbol_type (token::TOKEN_OUTPUT_OPTIONS, std::move (l));
4953 }
4954#else
4955 static
4956 symbol_type
4958 {
4959 return symbol_type (token::TOKEN_OUTPUT_OPTIONS, l);
4960 }
4961#endif
4962#if 201103L <= YY_CPLUSPLUS
4963 static
4964 symbol_type
4965 make_OUTPUT (location_type l)
4966 {
4967 return symbol_type (token::TOKEN_OUTPUT, std::move (l));
4968 }
4969#else
4970 static
4971 symbol_type
4973 {
4974 return symbol_type (token::TOKEN_OUTPUT, l);
4975 }
4976#endif
4977#if 201103L <= YY_CPLUSPLUS
4978 static
4979 symbol_type
4980 make_DEBUGLEVEL (location_type l)
4981 {
4982 return symbol_type (token::TOKEN_DEBUGLEVEL, std::move (l));
4983 }
4984#else
4985 static
4986 symbol_type
4988 {
4989 return symbol_type (token::TOKEN_DEBUGLEVEL, l);
4990 }
4991#endif
4992#if 201103L <= YY_CPLUSPLUS
4993 static
4994 symbol_type
4995 make_SEVERITY (location_type l)
4996 {
4997 return symbol_type (token::TOKEN_SEVERITY, std::move (l));
4998 }
4999#else
5000 static
5001 symbol_type
5003 {
5004 return symbol_type (token::TOKEN_SEVERITY, l);
5005 }
5006#endif
5007#if 201103L <= YY_CPLUSPLUS
5008 static
5009 symbol_type
5010 make_FLUSH (location_type l)
5011 {
5012 return symbol_type (token::TOKEN_FLUSH, std::move (l));
5013 }
5014#else
5015 static
5016 symbol_type
5018 {
5019 return symbol_type (token::TOKEN_FLUSH, l);
5020 }
5021#endif
5022#if 201103L <= YY_CPLUSPLUS
5023 static
5024 symbol_type
5025 make_MAXSIZE (location_type l)
5026 {
5027 return symbol_type (token::TOKEN_MAXSIZE, std::move (l));
5028 }
5029#else
5030 static
5031 symbol_type
5033 {
5034 return symbol_type (token::TOKEN_MAXSIZE, l);
5035 }
5036#endif
5037#if 201103L <= YY_CPLUSPLUS
5038 static
5039 symbol_type
5040 make_MAXVER (location_type l)
5041 {
5042 return symbol_type (token::TOKEN_MAXVER, std::move (l));
5043 }
5044#else
5045 static
5046 symbol_type
5048 {
5049 return symbol_type (token::TOKEN_MAXVER, l);
5050 }
5051#endif
5052#if 201103L <= YY_CPLUSPLUS
5053 static
5054 symbol_type
5055 make_PATTERN (location_type l)
5056 {
5057 return symbol_type (token::TOKEN_PATTERN, std::move (l));
5058 }
5059#else
5060 static
5061 symbol_type
5063 {
5064 return symbol_type (token::TOKEN_PATTERN, l);
5065 }
5066#endif
5067#if 201103L <= YY_CPLUSPLUS
5068 static
5069 symbol_type
5070 make_COMPATIBILITY (location_type l)
5071 {
5072 return symbol_type (token::TOKEN_COMPATIBILITY, std::move (l));
5073 }
5074#else
5075 static
5076 symbol_type
5078 {
5079 return symbol_type (token::TOKEN_COMPATIBILITY, l);
5080 }
5081#endif
5082#if 201103L <= YY_CPLUSPLUS
5083 static
5084 symbol_type
5085 make_LENIENT_OPTION_PARSING (location_type l)
5086 {
5087 return symbol_type (token::TOKEN_LENIENT_OPTION_PARSING, std::move (l));
5088 }
5089#else
5090 static
5091 symbol_type
5093 {
5094 return symbol_type (token::TOKEN_LENIENT_OPTION_PARSING, l);
5095 }
5096#endif
5097#if 201103L <= YY_CPLUSPLUS
5098 static
5099 symbol_type
5100 make_TOPLEVEL_JSON (location_type l)
5101 {
5102 return symbol_type (token::TOKEN_TOPLEVEL_JSON, std::move (l));
5103 }
5104#else
5105 static
5106 symbol_type
5108 {
5109 return symbol_type (token::TOKEN_TOPLEVEL_JSON, l);
5110 }
5111#endif
5112#if 201103L <= YY_CPLUSPLUS
5113 static
5114 symbol_type
5115 make_TOPLEVEL_DHCP6 (location_type l)
5116 {
5117 return symbol_type (token::TOKEN_TOPLEVEL_DHCP6, std::move (l));
5118 }
5119#else
5120 static
5121 symbol_type
5123 {
5124 return symbol_type (token::TOKEN_TOPLEVEL_DHCP6, l);
5125 }
5126#endif
5127#if 201103L <= YY_CPLUSPLUS
5128 static
5129 symbol_type
5130 make_SUB_DHCP6 (location_type l)
5131 {
5132 return symbol_type (token::TOKEN_SUB_DHCP6, std::move (l));
5133 }
5134#else
5135 static
5136 symbol_type
5138 {
5139 return symbol_type (token::TOKEN_SUB_DHCP6, l);
5140 }
5141#endif
5142#if 201103L <= YY_CPLUSPLUS
5143 static
5144 symbol_type
5145 make_SUB_INTERFACES6 (location_type l)
5146 {
5147 return symbol_type (token::TOKEN_SUB_INTERFACES6, std::move (l));
5148 }
5149#else
5150 static
5151 symbol_type
5153 {
5154 return symbol_type (token::TOKEN_SUB_INTERFACES6, l);
5155 }
5156#endif
5157#if 201103L <= YY_CPLUSPLUS
5158 static
5159 symbol_type
5160 make_SUB_SUBNET6 (location_type l)
5161 {
5162 return symbol_type (token::TOKEN_SUB_SUBNET6, std::move (l));
5163 }
5164#else
5165 static
5166 symbol_type
5168 {
5169 return symbol_type (token::TOKEN_SUB_SUBNET6, l);
5170 }
5171#endif
5172#if 201103L <= YY_CPLUSPLUS
5173 static
5174 symbol_type
5175 make_SUB_POOL6 (location_type l)
5176 {
5177 return symbol_type (token::TOKEN_SUB_POOL6, std::move (l));
5178 }
5179#else
5180 static
5181 symbol_type
5183 {
5184 return symbol_type (token::TOKEN_SUB_POOL6, l);
5185 }
5186#endif
5187#if 201103L <= YY_CPLUSPLUS
5188 static
5189 symbol_type
5190 make_SUB_PD_POOL (location_type l)
5191 {
5192 return symbol_type (token::TOKEN_SUB_PD_POOL, std::move (l));
5193 }
5194#else
5195 static
5196 symbol_type
5198 {
5199 return symbol_type (token::TOKEN_SUB_PD_POOL, l);
5200 }
5201#endif
5202#if 201103L <= YY_CPLUSPLUS
5203 static
5204 symbol_type
5205 make_SUB_RESERVATION (location_type l)
5206 {
5207 return symbol_type (token::TOKEN_SUB_RESERVATION, std::move (l));
5208 }
5209#else
5210 static
5211 symbol_type
5213 {
5214 return symbol_type (token::TOKEN_SUB_RESERVATION, l);
5215 }
5216#endif
5217#if 201103L <= YY_CPLUSPLUS
5218 static
5219 symbol_type
5220 make_SUB_OPTION_DEFS (location_type l)
5221 {
5222 return symbol_type (token::TOKEN_SUB_OPTION_DEFS, std::move (l));
5223 }
5224#else
5225 static
5226 symbol_type
5228 {
5229 return symbol_type (token::TOKEN_SUB_OPTION_DEFS, l);
5230 }
5231#endif
5232#if 201103L <= YY_CPLUSPLUS
5233 static
5234 symbol_type
5235 make_SUB_OPTION_DEF (location_type l)
5236 {
5237 return symbol_type (token::TOKEN_SUB_OPTION_DEF, std::move (l));
5238 }
5239#else
5240 static
5241 symbol_type
5243 {
5244 return symbol_type (token::TOKEN_SUB_OPTION_DEF, l);
5245 }
5246#endif
5247#if 201103L <= YY_CPLUSPLUS
5248 static
5249 symbol_type
5250 make_SUB_OPTION_DATA (location_type l)
5251 {
5252 return symbol_type (token::TOKEN_SUB_OPTION_DATA, std::move (l));
5253 }
5254#else
5255 static
5256 symbol_type
5258 {
5259 return symbol_type (token::TOKEN_SUB_OPTION_DATA, l);
5260 }
5261#endif
5262#if 201103L <= YY_CPLUSPLUS
5263 static
5264 symbol_type
5265 make_SUB_HOOKS_LIBRARY (location_type l)
5266 {
5267 return symbol_type (token::TOKEN_SUB_HOOKS_LIBRARY, std::move (l));
5268 }
5269#else
5270 static
5271 symbol_type
5273 {
5274 return symbol_type (token::TOKEN_SUB_HOOKS_LIBRARY, l);
5275 }
5276#endif
5277#if 201103L <= YY_CPLUSPLUS
5278 static
5279 symbol_type
5280 make_SUB_DHCP_DDNS (location_type l)
5281 {
5282 return symbol_type (token::TOKEN_SUB_DHCP_DDNS, std::move (l));
5283 }
5284#else
5285 static
5286 symbol_type
5288 {
5289 return symbol_type (token::TOKEN_SUB_DHCP_DDNS, l);
5290 }
5291#endif
5292#if 201103L <= YY_CPLUSPLUS
5293 static
5294 symbol_type
5295 make_SUB_CONFIG_CONTROL (location_type l)
5296 {
5297 return symbol_type (token::TOKEN_SUB_CONFIG_CONTROL, std::move (l));
5298 }
5299#else
5300 static
5301 symbol_type
5303 {
5304 return symbol_type (token::TOKEN_SUB_CONFIG_CONTROL, l);
5305 }
5306#endif
5307#if 201103L <= YY_CPLUSPLUS
5308 static
5309 symbol_type
5310 make_STRING (std::string v, location_type l)
5311 {
5312 return symbol_type (token::TOKEN_STRING, std::move (v), std::move (l));
5313 }
5314#else
5315 static
5316 symbol_type
5317 make_STRING (const std::string& v, const location_type& l)
5318 {
5319 return symbol_type (token::TOKEN_STRING, v, l);
5320 }
5321#endif
5322#if 201103L <= YY_CPLUSPLUS
5323 static
5324 symbol_type
5325 make_INTEGER (int64_t v, location_type l)
5326 {
5327 return symbol_type (token::TOKEN_INTEGER, std::move (v), std::move (l));
5328 }
5329#else
5330 static
5331 symbol_type
5332 make_INTEGER (const int64_t& v, const location_type& l)
5333 {
5334 return symbol_type (token::TOKEN_INTEGER, v, l);
5335 }
5336#endif
5337#if 201103L <= YY_CPLUSPLUS
5338 static
5339 symbol_type
5340 make_FLOAT (double v, location_type l)
5341 {
5342 return symbol_type (token::TOKEN_FLOAT, std::move (v), std::move (l));
5343 }
5344#else
5345 static
5346 symbol_type
5347 make_FLOAT (const double& v, const location_type& l)
5348 {
5349 return symbol_type (token::TOKEN_FLOAT, v, l);
5350 }
5351#endif
5352#if 201103L <= YY_CPLUSPLUS
5353 static
5354 symbol_type
5355 make_BOOLEAN (bool v, location_type l)
5356 {
5357 return symbol_type (token::TOKEN_BOOLEAN, std::move (v), std::move (l));
5358 }
5359#else
5360 static
5361 symbol_type
5362 make_BOOLEAN (const bool& v, const location_type& l)
5363 {
5364 return symbol_type (token::TOKEN_BOOLEAN, v, l);
5365 }
5366#endif
5367
5368
5370 {
5371 public:
5372 context (const Dhcp6Parser& yyparser, const symbol_type& yyla);
5373 const symbol_type& lookahead () const YY_NOEXCEPT { return yyla_; }
5374 symbol_kind_type token () const YY_NOEXCEPT { return yyla_.kind (); }
5375 const location_type& location () const YY_NOEXCEPT { return yyla_.location; }
5376
5380 int expected_tokens (symbol_kind_type yyarg[], int yyargn) const;
5381
5382 private:
5383 const Dhcp6Parser& yyparser_;
5384 const symbol_type& yyla_;
5385 };
5386
5387 private:
5388#if YY_CPLUSPLUS < 201103L
5390 Dhcp6Parser (const Dhcp6Parser&);
5392 Dhcp6Parser& operator= (const Dhcp6Parser&);
5393#endif
5394
5395
5397 typedef short state_type;
5398
5400 int yy_syntax_error_arguments_ (const context& yyctx,
5401 symbol_kind_type yyarg[], int yyargn) const;
5402
5405 virtual std::string yysyntax_error_ (const context& yyctx) const;
5409 static state_type yy_lr_goto_state_ (state_type yystate, int yysym);
5410
5413 static bool yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT;
5414
5417 static bool yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT;
5418
5419 static const short yypact_ninf_;
5420 static const signed char yytable_ninf_;
5421
5425 static symbol_kind_type yytranslate_ (int t) YY_NOEXCEPT;
5426
5428 static std::string yytnamerr_ (const char *yystr);
5429
5431 static const char* const yytname_[];
5432
5433
5434 // Tables.
5435 // YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
5436 // STATE-NUM.
5437 static const short yypact_[];
5438
5439 // YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
5440 // Performed when YYTABLE does not specify something else to do. Zero
5441 // means the default is an error.
5442 static const short yydefact_[];
5443
5444 // YYPGOTO[NTERM-NUM].
5445 static const short yypgoto_[];
5446
5447 // YYDEFGOTO[NTERM-NUM].
5448 static const short yydefgoto_[];
5449
5450 // YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
5451 // positive, shift that token. If negative, reduce the rule whose
5452 // number is the opposite. If YYTABLE_NINF, syntax error.
5453 static const short yytable_[];
5454
5455 static const short yycheck_[];
5456
5457 // YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
5458 // state STATE-NUM.
5459 static const short yystos_[];
5460
5461 // YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM.
5462 static const short yyr1_[];
5463
5464 // YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM.
5465 static const signed char yyr2_[];
5466
5467
5468#if PARSER6_DEBUG
5469 // YYRLINE[YYN] -- Source line where rule number YYN was defined.
5470 static const short yyrline_[];
5472 virtual void yy_reduce_print_ (int r) const;
5474 virtual void yy_stack_print_ () const;
5475
5477 int yydebug_;
5479 std::ostream* yycdebug_;
5480
5484 template <typename Base>
5485 void yy_print_ (std::ostream& yyo, const basic_symbol<Base>& yysym) const;
5486#endif
5487
5492 template <typename Base>
5493 void yy_destroy_ (const char* yymsg, basic_symbol<Base>& yysym) const;
5494
5495 private:
5497 struct by_state
5498 {
5500 by_state () YY_NOEXCEPT;
5501
5503 typedef state_type kind_type;
5504
5506 by_state (kind_type s) YY_NOEXCEPT;
5507
5509 by_state (const by_state& that) YY_NOEXCEPT;
5510
5512 void clear () YY_NOEXCEPT;
5513
5515 void move (by_state& that);
5516
5519 symbol_kind_type kind () const YY_NOEXCEPT;
5520
5523 enum { empty_state = 0 };
5524
5527 state_type state;
5528 };
5529
5531 struct stack_symbol_type : basic_symbol<by_state>
5532 {
5534 typedef basic_symbol<by_state> super_type;
5536 stack_symbol_type ();
5538 stack_symbol_type (YY_RVREF (stack_symbol_type) that);
5540 stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) sym);
5541#if YY_CPLUSPLUS < 201103L
5544 stack_symbol_type& operator= (stack_symbol_type& that);
5545
5548 stack_symbol_type& operator= (const stack_symbol_type& that);
5549#endif
5550 };
5551
5553 template <typename T, typename S = std::vector<T> >
5554 class stack
5555 {
5556 public:
5557 // Hide our reversed order.
5558 typedef typename S::iterator iterator;
5559 typedef typename S::const_iterator const_iterator;
5560 typedef typename S::size_type size_type;
5561 typedef typename std::ptrdiff_t index_type;
5562
5563 stack (size_type n = 200) YY_NOEXCEPT
5564 : seq_ (n)
5565 {}
5566
5567#if 201103L <= YY_CPLUSPLUS
5569 stack (const stack&) = delete;
5571 stack& operator= (const stack&) = delete;
5572#endif
5573
5577 const T&
5578 operator[] (index_type i) const
5579 {
5580 return seq_[size_type (size () - 1 - i)];
5581 }
5582
5586 T&
5587 operator[] (index_type i)
5588 {
5589 return seq_[size_type (size () - 1 - i)];
5590 }
5591
5595 void
5596 push (YY_MOVE_REF (T) t)
5597 {
5598 seq_.push_back (T ());
5599 operator[] (0).move (t);
5600 }
5601
5603 void
5604 pop (std::ptrdiff_t n = 1) YY_NOEXCEPT
5605 {
5606 for (; 0 < n; --n)
5607 seq_.pop_back ();
5608 }
5609
5611 void
5612 clear () YY_NOEXCEPT
5613 {
5614 seq_.clear ();
5615 }
5616
5618 index_type
5619 size () const YY_NOEXCEPT
5620 {
5621 return index_type (seq_.size ());
5622 }
5623
5625 const_iterator
5626 begin () const YY_NOEXCEPT
5627 {
5628 return seq_.begin ();
5629 }
5630
5632 const_iterator
5633 end () const YY_NOEXCEPT
5634 {
5635 return seq_.end ();
5636 }
5637
5639 class slice
5640 {
5641 public:
5642 slice (const stack& stack, index_type range) YY_NOEXCEPT
5643 : stack_ (stack)
5644 , range_ (range)
5645 {}
5646
5647 const T&
5648 operator[] (index_type i) const
5649 {
5650 return stack_[range_ - i];
5651 }
5652
5653 private:
5654 const stack& stack_;
5655 index_type range_;
5656 };
5657
5658 private:
5659#if YY_CPLUSPLUS < 201103L
5661 stack (const stack&);
5663 stack& operator= (const stack&);
5664#endif
5666 S seq_;
5667 };
5668
5669
5671 typedef stack<stack_symbol_type> stack_type;
5672
5674 stack_type yystack_;
5675
5681 void yypush_ (const char* m, YY_MOVE_REF (stack_symbol_type) sym);
5682
5689 void yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym);
5690
5692 void yypop_ (int n = 1) YY_NOEXCEPT;
5693
5695 enum
5696 {
5697 yylast_ = 1694,
5698 yynnts_ = 483,
5699 yyfinal_ = 30
5700 };
5701
5702
5703 // User arguments.
5705
5706 };
5707
5708 inline
5710 Dhcp6Parser::yytranslate_ (int t) YY_NOEXCEPT
5711 {
5712 // YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to
5713 // TOKEN-NUM as returned by yylex.
5714 static
5715 const unsigned char
5716 translate_table[] =
5717 {
5718 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5719 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5720 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5721 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5722 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5723 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5724 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5725 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5726 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5727 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5728 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5729 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5730 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5731 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5732 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5733 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5734 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5735 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5736 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5737 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5738 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5739 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5740 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5741 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5742 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5743 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
5744 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
5745 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
5746 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
5747 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5748 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
5749 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
5750 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
5751 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
5752 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
5753 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
5754 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
5755 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
5756 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
5757 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
5758 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
5759 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
5760 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
5761 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
5762 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
5763 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
5764 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
5765 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
5766 225, 226, 227, 228, 229, 230, 231, 232
5767 };
5768 // Last valid token kind.
5769 const int code_max = 487;
5770
5771 if (t <= 0)
5772 return symbol_kind::S_YYEOF;
5773 else if (t <= code_max)
5774 return static_cast <symbol_kind_type> (translate_table[t]);
5775 else
5777 }
5778
5779 // basic_symbol.
5780 template <typename Base>
5782 : Base (that)
5783 , value ()
5784 , location (that.location)
5785 {
5786 switch (this->kind ())
5787 {
5788 case symbol_kind::S_value: // value
5789 case symbol_kind::S_map_value: // map_value
5790 case symbol_kind::S_ddns_replace_client_name_value: // ddns_replace_client_name_value
5791 case symbol_kind::S_ddns_conflict_resolution_mode_value: // ddns_conflict_resolution_mode_value
5792 case symbol_kind::S_on_fail_mode: // on_fail_mode
5793 case symbol_kind::S_duid_type: // duid_type
5794 case symbol_kind::S_control_socket_type_value: // control_socket_type_value
5795 case symbol_kind::S_auth_type_value: // auth_type_value
5796 case symbol_kind::S_ncr_protocol_value: // ncr_protocol_value
5797 value.copy< ElementPtr > (YY_MOVE (that.value));
5798 break;
5799
5800 case symbol_kind::S_BOOLEAN: // "boolean"
5801 value.copy< bool > (YY_MOVE (that.value));
5802 break;
5803
5804 case symbol_kind::S_FLOAT: // "floating point"
5805 value.copy< double > (YY_MOVE (that.value));
5806 break;
5807
5808 case symbol_kind::S_INTEGER: // "integer"
5809 value.copy< int64_t > (YY_MOVE (that.value));
5810 break;
5811
5812 case symbol_kind::S_STRING: // "constant string"
5813 value.copy< std::string > (YY_MOVE (that.value));
5814 break;
5815
5816 default:
5817 break;
5818 }
5819
5820 }
5821
5822
5823
5824
5825 template <typename Base>
5828 {
5829 return this->kind ();
5830 }
5831
5832
5833 template <typename Base>
5834 bool
5836 {
5837 return this->kind () == symbol_kind::S_YYEMPTY;
5838 }
5839
5840 template <typename Base>
5841 void
5843 {
5844 super_type::move (s);
5845 switch (this->kind ())
5846 {
5847 case symbol_kind::S_value: // value
5848 case symbol_kind::S_map_value: // map_value
5849 case symbol_kind::S_ddns_replace_client_name_value: // ddns_replace_client_name_value
5850 case symbol_kind::S_ddns_conflict_resolution_mode_value: // ddns_conflict_resolution_mode_value
5851 case symbol_kind::S_on_fail_mode: // on_fail_mode
5852 case symbol_kind::S_duid_type: // duid_type
5853 case symbol_kind::S_control_socket_type_value: // control_socket_type_value
5854 case symbol_kind::S_auth_type_value: // auth_type_value
5855 case symbol_kind::S_ncr_protocol_value: // ncr_protocol_value
5856 value.move< ElementPtr > (YY_MOVE (s.value));
5857 break;
5858
5859 case symbol_kind::S_BOOLEAN: // "boolean"
5860 value.move< bool > (YY_MOVE (s.value));
5861 break;
5862
5863 case symbol_kind::S_FLOAT: // "floating point"
5864 value.move< double > (YY_MOVE (s.value));
5865 break;
5866
5867 case symbol_kind::S_INTEGER: // "integer"
5868 value.move< int64_t > (YY_MOVE (s.value));
5869 break;
5870
5871 case symbol_kind::S_STRING: // "constant string"
5872 value.move< std::string > (YY_MOVE (s.value));
5873 break;
5874
5875 default:
5876 break;
5877 }
5878
5879 location = YY_MOVE (s.location);
5880 }
5881
5882 // by_kind.
5883 inline
5885 : kind_ (symbol_kind::S_YYEMPTY)
5886 {}
5887
5888#if 201103L <= YY_CPLUSPLUS
5889 inline
5891 : kind_ (that.kind_)
5892 {
5893 that.clear ();
5894 }
5895#endif
5896
5897 inline
5899 : kind_ (that.kind_)
5900 {}
5901
5902 inline
5904 : kind_ (yytranslate_ (t))
5905 {}
5906
5907
5908
5909 inline
5910 void
5915
5916 inline
5917 void
5919 {
5920 kind_ = that.kind_;
5921 that.clear ();
5922 }
5923
5924 inline
5927 {
5928 return kind_;
5929 }
5930
5931
5932 inline
5935 {
5936 return this->kind ();
5937 }
5938
5939
5940#line 14 "dhcp6_parser.yy"
5941} } // isc::dhcp
5942#line 5943 "dhcp6_parser.h"
5943
5944
5945
5946
5947#endif // !YY_PARSER6_DHCP6_PARSER_H_INCLUDED
#define YY_RVREF(Type)
#define YY_MOVE_REF(Type)
#define YY_NOEXCEPT
#define YY_ATTRIBUTE_PURE
#define YY_MOVE
#define YY_NOTHROW
symbol_kind_type token() const YY_NOEXCEPT
const symbol_type & lookahead() const YY_NOEXCEPT
const location_type & location() const YY_NOEXCEPT
Present a slice of the top of a stack.
slice(const stack &stack, index_type range) YY_NOEXCEPT
A buffer to store and retrieve objects.
void swap(self_type &that) YY_NOEXCEPT
Swap the content with that, of same type.
const T & as() const YY_NOEXCEPT
Const accessor to a built T (for printer).
T & emplace()
Instantiate an empty T in here.
T & build()
Instantiate an empty T in here.
void copy(const self_type &that)
Copy the content of that to this.
long double yyalign_me_
Strongest alignment constraints.
char yyraw_[size]
A buffer large enough to store any of the semantic values.
T & emplace(const T &t)
Instantiate a T in here from t.
T & as() YY_NOEXCEPT
Accessor to a built T.
~value_type() YY_NOEXCEPT
Destruction, allowed only if empty.
void destroy()
Destroy the stored T.
T & build(const T &t)
Instantiate a T in here from t.
void move(self_type &that)
Move the content of that to this.
value_type() YY_NOEXCEPT
Empty construction.
value_type(YY_RVREF(T) t)
Construct and fill.
value_type self_type
Type of *this.
static symbol_type make_SUB_RESERVATION(const location_type &l)
static symbol_type make_EXCLUDED_PREFIXES(const location_type &l)
static symbol_type make_NAME(const location_type &l)
static symbol_type make_CIPHER_LIST(const location_type &l)
static symbol_type make_SUB_HOOKS_LIBRARY(const location_type &l)
static symbol_type make_WHEN_PRESENT(const location_type &l)
static symbol_type make_COMMENT(const location_type &l)
static symbol_type make_LENIENT_OPTION_PARSING(const location_type &l)
static symbol_type make_SENDER_PORT(const location_type &l)
static symbol_type make_CODE(const location_type &l)
static symbol_type make_STATISTIC_DEFAULT_SAMPLE_AGE(const location_type &l)
static symbol_type make_CACHE_THRESHOLD(const location_type &l)
static symbol_type make_ALLOCATOR(const location_type &l)
static symbol_type make_DHCP6(const location_type &l)
symbol_kind::symbol_kind_type symbol_kind_type
(Internal) symbol kind.
static symbol_type make_PASSWORD_FILE(const location_type &l)
static symbol_type make_DIRECTORY(const location_type &l)
static symbol_type make_HOSTS_DATABASE(const location_type &l)
static symbol_type make_DDNS_CONFLICT_RESOLUTION_MODE(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_REQUIRE_ALL(const location_type &l)
static symbol_type make_USER_CONTEXT(const location_type &l)
static symbol_type make_ENTERPRISE_ID(const location_type &l)
static symbol_type make_COMMA(const location_type &l)
static symbol_type make_DHCP_DDNS(const location_type &l)
static symbol_type make_MAX_RECLAIM_TIME(const location_type &l)
static symbol_type make_SOCKET_NAME(const location_type &l)
static symbol_type make_NCR_FORMAT(const location_type &l)
static symbol_type make_RESERVATIONS_OUT_OF_POOL(const location_type &l)
static symbol_type make_NCR_PROTOCOL(const location_type &l)
static symbol_type make_HTTPS(const location_type &l)
static symbol_type make_FLOAT(const double &v, const location_type &l)
static symbol_type make_EN(const location_type &l)
static symbol_type make_ARRAY(const location_type &l)
static symbol_type make_DDNS_QUALIFYING_SUFFIX(const location_type &l)
static symbol_type make_COLON(const location_type &l)
static symbol_type make_RETRY_ON_STARTUP(const location_type &l)
static symbol_type make_SUB_DHCP6(const location_type &l)
token::token_kind_type token_kind_type
Token kind, as returned by yylex.
static symbol_type make_ONLY_IN_ADDITIONAL_LIST(const location_type &l)
static symbol_type make_RE_DETECT(const location_type &l)
static symbol_type make_DELEGATED_LEN(const location_type &l)
static symbol_type make_THREAD_POOL_SIZE(const location_type &l)
static symbol_type make_INTERFACE_ID(const location_type &l)
static symbol_type make_RESERVATIONS_LOOKUP_FIRST(const location_type &l)
static symbol_type make_HOSTNAME(const location_type &l)
static symbol_type make_DATA_DIRECTORY(const location_type &l)
static symbol_type make_MAX_QUEUE_SIZE(const location_type &l)
static symbol_type make_SUB_POOL6(const location_type &l)
static symbol_type make_SUB_DHCP_DDNS(const location_type &l)
static symbol_type make_SUB_CONFIG_CONTROL(const location_type &l)
static symbol_type make_DDNS_SEND_UPDATES(const location_type &l)
static symbol_type make_IP_ADDRESSES(const location_type &l)
static symbol_type make_EVALUATE_ADDITIONAL_CLASSES(const location_type &l)
static symbol_type make_POOLS(const location_type &l)
static symbol_type make_PREFIX(const location_type &l)
static symbol_type make_ID(const location_type &l)
static symbol_type make_MAXVER(const location_type &l)
static symbol_type make_RESERVATIONS(const location_type &l)
static symbol_type make_DATA(const location_type &l)
static symbol_type make_INTERFACES(const location_type &l)
static symbol_type make_PREFERRED_LIFETIME(const location_type &l)
static symbol_type make_SERVER_IP(const location_type &l)
static symbol_type make_PATTERN(const location_type &l)
static symbol_type make_MAXSIZE(const location_type &l)
static symbol_type make_POOL_ID(const location_type &l)
static symbol_type make_HOST_RESERVATION_IDENTIFIERS(const location_type &l)
static symbol_type make_OPTION_DATA(const location_type &l)
static symbol_type make_SUBNET6(const location_type &l)
static symbol_type make_PD_POOLS(const location_type &l)
static symbol_type make_RCURLY_BRACKET(const location_type &l)
static symbol_type make_TEMPLATE_TEST(const location_type &l)
static symbol_type make_MAX_PREFERRED_LIFETIME(const location_type &l)
static symbol_type make_TRUST_ANCHOR(const location_type &l)
static symbol_type make_PORT(const location_type &l)
static symbol_type make_AUTHENTICATION(const location_type &l)
static symbol_type make_LIBRARY(const location_type &l)
static symbol_type make_ENABLE_UPDATES(const location_type &l)
static symbol_type make_HOSTNAME_CHAR_REPLACEMENT(const location_type &l)
static symbol_type make_NULL_TYPE(const location_type &l)
static symbol_type make_MAX_RECONNECT_TRIES(const location_type &l)
static symbol_type make_MAX_VALID_LIFETIME(const location_type &l)
static symbol_type make_TIME(const location_type &l)
static symbol_type make_SOCKET_TYPE(const location_type &l)
value_type semantic_type
Backward compatibility (Bison 3.8).
static symbol_type make_CHECK_WITH_DHCID(const location_type &l)
static symbol_type make_SUB_INTERFACES6(const location_type &l)
static symbol_type make_JSON(const location_type &l)
static symbol_type make_MIN_PREFERRED_LIFETIME(const location_type &l)
static symbol_type make_LLT(const location_type &l)
static symbol_type make_READ_TIMEOUT(const location_type &l)
static symbol_type make_CERT_FILE(const location_type &l)
static symbol_type make_HTTP(const location_type &l)
static symbol_type make_PARAMETERS(const location_type &l)
static symbol_type make_PARSER6_error(const location_type &l)
static symbol_type make_FLEX_ID(const location_type &l)
static symbol_type make_REQUIRE_CLIENT_CLASSES(const location_type &l)
static symbol_type make_SERVER_PORT(const location_type &l)
static symbol_type make_ONLY_IF_REQUIRED(const location_type &l)
static symbol_type make_SHARED_NETWORKS(const location_type &l)
static symbol_type make_DDNS_REPLACE_CLIENT_NAME(const location_type &l)
static symbol_type make_USER_FILE(const location_type &l)
static const symbol_kind_type YYNTOKENS
The number of tokens.
static symbol_type make_SUB_OPTION_DATA(const location_type &l)
static symbol_type make_OPTION_DEF(const location_type &l)
static symbol_type make_TCP_USER_TIMEOUT(const location_type &l)
static symbol_type make_UNIX(const location_type &l)
static symbol_type make_DDNS_GENERATED_PREFIX(const location_type &l)
static symbol_type make_ALWAYS_SEND(const location_type &l)
static symbol_type make_CLIENT_CLASS(const location_type &l)
static symbol_type make_NEVER_SEND(const location_type &l)
static symbol_type make_IP_RESERVATIONS_UNIQUE(const location_type &l)
static symbol_type make_PARKED_PACKET_LIMIT(const location_type &l)
location location_type
Symbol locations.
static symbol_type make_LFC_INTERVAL(const location_type &l)
static symbol_type make_USER(const location_type &l)
static symbol_type make_SUBNET(const location_type &l)
static symbol_type make_RECORD_TYPES(const location_type &l)
static symbol_type make_LCURLY_BRACKET(const location_type &l)
static symbol_type make_INTEGER(const int64_t &v, const location_type &l)
static symbol_type make_RECONNECT_WAIT_TIME(const location_type &l)
static symbol_type make_SUB_SUBNET6(const location_type &l)
static symbol_type make_EXPIRED_LEASES_PROCESSING(const location_type &l)
static symbol_type make_EXCLUDED_PREFIX(const location_type &l)
static symbol_type make_ALWAYS(const location_type &l)
static symbol_type make_HOSTS_DATABASES(const location_type &l)
static symbol_type make_STRING(const std::string &v, const location_type &l)
static symbol_type make_DDNS_USE_CONFLICT_RESOLUTION(const location_type &l)
static symbol_type make_DDNS_UPDATE_ON_RENEW(const location_type &l)
static symbol_type make_SANITY_CHECKS(const location_type &l)
static symbol_type make_SOCKET_PORT(const location_type &l)
static symbol_type make_REALM(const location_type &l)
static symbol_type make_ENABLE_MULTI_THREADING(const location_type &l)
static symbol_type make_PERSIST(const location_type &l)
static symbol_type make_LEASE_DATABASE(const location_type &l)
static symbol_type make_INTERFACES_CONFIG(const location_type &l)
static symbol_type make_HTYPE(const location_type &l)
static symbol_type make_FLUSH_RECLAIMED_TIMER_WAIT_TIME(const location_type &l)
token_kind_type token_type
Backward compatibility alias (Bison 3.6).
static symbol_type make_CONFIG_FETCH_WAIT_TIME(const location_type &l)
static symbol_type make_OUTPUT_OPTIONS(const location_type &l)
static symbol_type make_STORE_EXTENDED_INFO(const location_type &l)
static symbol_type make_CLIENT_CLASSES(const location_type &l)
static symbol_type make_PREFIX_LEN(const location_type &l)
static symbol_type make_RSQUARE_BRACKET(const location_type &l)
static symbol_type make_END(const location_type &l)
static symbol_type make_IDENTIFIER(const location_type &l)
static symbol_type make_CACHE_MAX_AGE(const location_type &l)
static symbol_type make_READONLY(const location_type &l)
static symbol_type make_PASSWORD(const location_type &l)
static symbol_type make_LEASE_CHECKS(const location_type &l)
static symbol_type make_FLUSH(const location_type &l)
static symbol_type make_MIN_VALID_LIFETIME(const location_type &l)
static symbol_type make_T2_PERCENT(const location_type &l)
static symbol_type make_UNWARNED_RECLAIM_CYCLES(const location_type &l)
static symbol_type make_DEBUGLEVEL(const location_type &l)
static symbol_type make_BASIC(const location_type &l)
static symbol_type make_HOOKS_LIBRARIES(const location_type &l)
static symbol_type make_TCP(const location_type &l)
static symbol_type make_POOL(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_RETRY_WAIT_TIME(const location_type &l)
static symbol_type make_LL(const location_type &l)
static symbol_type make_WHEN_NOT_PRESENT(const location_type &l)
static symbol_type make_SERVE_RETRY_EXIT(const location_type &l)
static symbol_type make_INTERFACE(const location_type &l)
static symbol_type make_DDNS_OVERRIDE_CLIENT_UPDATE(const location_type &l)
static symbol_type make_SERVE_RETRY_CONTINUE(const location_type &l)
static symbol_type make_ENABLE_QUEUE(const location_type &l)
static symbol_type make_STOP_RETRY_EXIT(const location_type &l)
static symbol_type make_CONFIG_DATABASES(const location_type &l)
static symbol_type make_DHCP_QUEUE_CONTROL(const location_type &l)
static std::string symbol_name(symbol_kind_type yysymbol)
The user-facing name of the symbol whose (internal) number is YYSYMBOL.
static symbol_type make_STATISTIC_DEFAULT_SAMPLE_COUNT(const location_type &l)
static symbol_type make_CALCULATE_TEE_TIMES(const location_type &l)
static symbol_type make_CAPACITY(const location_type &l)
static symbol_type make_RECLAIM_TIMER_WAIT_TIME(const location_type &l)
static symbol_type make_SUB_OPTION_DEF(const location_type &l)
static symbol_type make_DHCP_MULTI_THREADING(const location_type &l)
static symbol_type make_EARLY_GLOBAL_RESERVATIONS_LOOKUP(const location_type &l)
static symbol_type make_CLIENTS(const location_type &l)
static symbol_type make_SUB_PD_POOL(const location_type &l)
static symbol_type make_T1_PERCENT(const location_type &l)
static symbol_type make_LSQUARE_BRACKET(const location_type &l)
static symbol_type make_UDP(const location_type &l)
static symbol_type make_CHECK_EXISTS_WITH_DHCID(const location_type &l)
static symbol_type make_KEY_FILE(const location_type &l)
static symbol_type make_QUEUE_TYPE(const location_type &l)
static symbol_type make_CERT_REQUIRED(const location_type &l)
static symbol_type make_TOPLEVEL_DHCP6(const location_type &l)
static symbol_type make_SERVER_ID(const location_type &l)
static symbol_type make_RELAY(const location_type &l)
static symbol_type make_HOLD_RECLAIMED_TIME(const location_type &l)
static symbol_type make_PARSER6_UNDEF(const location_type &l)
static symbol_type make_RELAY_SUPPLIED_OPTIONS(const location_type &l)
static symbol_type make_COMPATIBILITY(const location_type &l)
static symbol_type make_SUB_OPTION_DEFS(const location_type &l)
static symbol_type make_PD_ALLOCATOR(const location_type &l)
static symbol_type make_CONTROL_SOCKET(const location_type &l)
static symbol_type make_NO_CHECK_WITH_DHCID(const location_type &l)
static symbol_type make_SOCKET_ADDRESS(const location_type &l)
static symbol_type make_WRITE_TIMEOUT(const location_type &l)
static symbol_type make_TYPE(const location_type &l)
static symbol_type make_DDNS_TTL_PERCENT(const location_type &l)
static symbol_type make_EXTENDED_INFO_CHECKS(const location_type &l)
static symbol_type make_CONNECT_TIMEOUT(const location_type &l)
static symbol_type make_DDNS_OVERRIDE_NO_UPDATE(const location_type &l)
static symbol_type make_LOGGERS(const location_type &l)
static symbol_type make_PACKET_QUEUE_SIZE(const location_type &l)
static symbol_type make_RESERVATIONS_IN_SUBNET(const location_type &l)
static symbol_type make_REBIND_TIMER(const location_type &l)
static symbol_type make_NO_CHECK_WITHOUT_DHCID(const location_type &l)
static symbol_type make_CONFIG_CONTROL(const location_type &l)
static symbol_type make_PREFIXES(const location_type &l)
static symbol_type make_CSV_FORMAT(const location_type &l)
static symbol_type make_MAC_SOURCES(const location_type &l)
static symbol_type make_DECLINE_PROBATION_PERIOD(const location_type &l)
static symbol_type make_TEST(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_MAX_RETRIES(const location_type &l)
static symbol_type make_RAPID_COMMIT(const location_type &l)
static symbol_type make_DUID(const location_type &l)
static symbol_type make_DHCP4O6_PORT(const location_type &l)
static symbol_type make_VALID_LIFETIME(const location_type &l)
static symbol_type make_ON_FAIL(const location_type &l)
static symbol_type make_SENDER_IP(const location_type &l)
static symbol_type make_HOST(const location_type &l)
static symbol_type make_MAX_RECLAIM_LEASES(const location_type &l)
static symbol_type make_CONTROL_SOCKETS(const location_type &l)
static symbol_type make_SPACE(const location_type &l)
static symbol_type make_TOPLEVEL_JSON(const location_type &l)
static symbol_type make_EXCLUDED_PREFIX_LEN(const location_type &l)
static symbol_type make_HW_ADDRESS(const location_type &l)
static symbol_type make_RENEW_TIMER(const location_type &l)
static symbol_type make_MAX_ROW_ERRORS(const location_type &l)
static symbol_type make_NEVER(const location_type &l)
static symbol_type make_BOOLEAN(const bool &v, const location_type &l)
static symbol_type make_ENCAPSULATE(const location_type &l)
static symbol_type make_RESERVATIONS_GLOBAL(const location_type &l)
static symbol_type make_HOSTNAME_CHAR_SET(const location_type &l)
static symbol_type make_SERVER_TAG(const location_type &l)
static symbol_type make_OUTPUT(const location_type &l)
static symbol_type make_SEVERITY(const location_type &l)
Evaluation context, an interface to the expression evaluation.
Forward declaration of the ParserContext class.
#define PARSER6__ASSERT
boost::shared_ptr< Element > ElementPtr
Definition data.h:28
@ error
Definition db_log.h:118
Defines the logger used by the top-level component of kea-lfc.
value_type value
The semantic value.
location_type location
The location.
basic_symbol() YY_NOEXCEPT
Default constructor.
basic_symbol(typename Base::kind_type t, const int64_t &v, const location_type &l)
basic_symbol(typename Base::kind_type t, const ElementPtr &v, const location_type &l)
void move(basic_symbol &s)
Destructive move, s is emptied into this.
basic_symbol(typename Base::kind_type t, const location_type &l)
Constructors for typed symbols.
void clear() YY_NOEXCEPT
Destroy contents, and record that is empty.
bool empty() const YY_NOEXCEPT
Whether empty.
symbol_kind_type type_get() const YY_NOEXCEPT
Backward compatibility (Bison 3.6).
std::string name() const YY_NOEXCEPT
The user-facing name of this symbol.
basic_symbol(typename Base::kind_type t, const std::string &v, const location_type &l)
basic_symbol(typename Base::kind_type t, const double &v, const location_type &l)
basic_symbol(typename Base::kind_type t, const bool &v, const location_type &l)
Type access provider for token (enum) based symbols.
symbol_kind_type kind() const YY_NOEXCEPT
The (internal) type number (corresponding to type).
void move(by_kind &that)
Steal the symbol kind from that.
symbol_kind_type type_get() const YY_NOEXCEPT
Backward compatibility (Bison 3.6).
token_kind_type kind_type
The symbol kind as needed by the constructor.
by_kind() YY_NOEXCEPT
Default constructor.
void clear() YY_NOEXCEPT
Record that this symbol is empty.
"External" symbols: returned by the scanner.
symbol_type() YY_NOEXCEPT
Empty symbol.
basic_symbol< by_kind > super_type
Superclass.
Syntax errors thrown from user actions.
syntax_error(const location_type &l, const std::string &m)
syntax_error(const syntax_error &s)
~syntax_error() YY_NOEXCEPT YY_NOTHROW
token_kind_type yytokentype
Backward compatibility alias (Bison 3.6).