45#ifndef YY_PARSER4_DHCP4_PARSER_H_INCLUDED
46# define YY_PARSER4_DHCP4_PARSER_H_INCLUDED
48#line 17 "dhcp4_parser.yy"
53#include <boost/lexical_cast.hpp>
60#line 61 "dhcp4_parser.h"
69#if defined __cplusplus
70# define YY_CPLUSPLUS __cplusplus
72# define YY_CPLUSPLUS 199711L
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
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&
91#if 201103L <= YY_CPLUSPLUS
92# define YY_NOEXCEPT noexcept
96# define YY_NOTHROW throw ()
100#if 201703 <= YY_CPLUSPLUS
101# define YY_CONSTEXPR constexpr
105# include "location.hh"
107#ifndef PARSER4__ASSERT
109# define PARSER4__ASSERT assert
113#ifndef YY_ATTRIBUTE_PURE
114# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
115# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
117# define YY_ATTRIBUTE_PURE
121#ifndef YY_ATTRIBUTE_UNUSED
122# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
123# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
125# define YY_ATTRIBUTE_UNUSED
130#if ! defined lint || defined __GNUC__
131# define YY_USE(E) ((void) (E))
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\"")
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\"")
148# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
149 _Pragma ("GCC diagnostic pop")
151# define YY_INITIAL_VALUE(Value) Value
153#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
154# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
155# define YY_IGNORE_MAYBE_UNINITIALIZED_END
157#ifndef YY_INITIAL_VALUE
158# define YY_INITIAL_VALUE(Value)
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")
168#ifndef YY_IGNORE_USELESS_CAST_BEGIN
169# define YY_IGNORE_USELESS_CAST_BEGIN
170# define YY_IGNORE_USELESS_CAST_END
175# define YY_CAST(Type, Val) static_cast<Type> (Val)
176# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
178# define YY_CAST(Type, Val) ((Type) (Val))
179# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
183# if defined __cplusplus
184# if 201103L <= __cplusplus
185# define YY_NULLPTR nullptr
190# define YY_NULLPTR ((void*)0)
198# define PARSER4_DEBUG 1
200# define PARSER4_DEBUG 0
203# define PARSER4_DEBUG 1
207#line 14 "dhcp4_parser.yy"
208namespace isc {
namespace dhcp {
209#line 210 "dhcp4_parser.h"
220# pragma GCC message "bison: do not #define PARSER4_STYPE in C++, use %define api.value.type"
238 , yytypeid_ (YY_NULLPTR)
242 template <
typename T>
244 : yytypeid_ (&typeid (T))
247 new (yyas_<T> ()) T (
YY_MOVE (t));
250#if 201103L <= YY_CPLUSPLUS
263# if 201103L <= YY_CPLUSPLUS
265 template <
typename T,
typename... U>
271 yytypeid_ = &
typeid (T);
272 return *
new (yyas_<T> ()) T (std::forward <U>(u)...);
276 template <
typename T>
282 yytypeid_ = &
typeid (T);
283 return *
new (yyas_<T> ()) T ();
287 template <
typename T>
293 yytypeid_ = &
typeid (T);
294 return *
new (yyas_<T> ()) T (t);
300 template <
typename T>
304 return emplace<T> ();
309 template <
typename T>
313 return emplace<T> (t);
317 template <
typename T>
328 template <
typename T>
346 template <
typename T>
352 std::swap (as<T> (), that.as<T> ());
358 template <
typename T>
362# if 201103L <= YY_CPLUSPLUS
363 emplace<T> (std::move (that.
as<T> ()));
371# if 201103L <= YY_CPLUSPLUS
373 template <
typename T>
377 emplace<T> (std::move (that.as<T> ()));
383 template <
typename T>
387 emplace<T> (that.
as<T> ());
391 template <
typename T>
396 yytypeid_ = YY_NULLPTR;
400#if YY_CPLUSPLUS < 201103L
408 template <
typename T>
413 return static_cast<T*
> (yyp);
417 template <
typename T>
422 return static_cast<const T*
> (yyp);
441 char dummy2[
sizeof (bool)];
444 char dummy3[
sizeof (double)];
447 char dummy4[
sizeof (int64_t)];
450 char dummy5[
sizeof (std::string)];
454 enum { size =
sizeof (union_type) };
466 const std::type_info *yytypeid_;
480 : std::runtime_error (m)
485 : std::runtime_error (s.what ())
499 TOKEN_PARSER4_EMPTY = -2,
501 TOKEN_PARSER4_error = 256,
502 TOKEN_PARSER4_UNDEF = 257,
505 TOKEN_LSQUARE_BRACKET = 260,
506 TOKEN_RSQUARE_BRACKET = 261,
507 TOKEN_LCURLY_BRACKET = 262,
508 TOKEN_RCURLY_BRACKET = 263,
509 TOKEN_NULL_TYPE = 264,
511 TOKEN_CONFIG_CONTROL = 266,
512 TOKEN_CONFIG_DATABASES = 267,
513 TOKEN_CONFIG_FETCH_WAIT_TIME = 268,
514 TOKEN_INTERFACES_CONFIG = 269,
515 TOKEN_INTERFACES = 270,
516 TOKEN_DHCP_SOCKET_TYPE = 271,
519 TOKEN_OUTBOUND_INTERFACE = 274,
520 TOKEN_SAME_AS_INBOUND = 275,
521 TOKEN_USE_ROUTING = 276,
522 TOKEN_RE_DETECT = 277,
523 TOKEN_SERVICE_SOCKETS_REQUIRE_ALL = 278,
524 TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME = 279,
525 TOKEN_SERVICE_SOCKETS_MAX_RETRIES = 280,
526 TOKEN_SANITY_CHECKS = 281,
527 TOKEN_LEASE_CHECKS = 282,
528 TOKEN_EXTENDED_INFO_CHECKS = 283,
529 TOKEN_ECHO_CLIENT_ID = 284,
530 TOKEN_MATCH_CLIENT_ID = 285,
531 TOKEN_AUTHORITATIVE = 286,
532 TOKEN_NEXT_SERVER = 287,
533 TOKEN_SERVER_HOSTNAME = 288,
534 TOKEN_BOOT_FILE_NAME = 289,
535 TOKEN_OFFER_LFT = 290,
536 TOKEN_LEASE_DATABASE = 291,
537 TOKEN_HOSTS_DATABASE = 292,
538 TOKEN_HOSTS_DATABASES = 293,
542 TOKEN_POSTGRESQL = 297,
544 TOKEN_PASSWORD = 299,
548 TOKEN_LFC_INTERVAL = 303,
549 TOKEN_READONLY = 304,
550 TOKEN_CONNECT_TIMEOUT = 305,
551 TOKEN_READ_TIMEOUT = 306,
552 TOKEN_WRITE_TIMEOUT = 307,
553 TOKEN_TCP_USER_TIMEOUT = 308,
554 TOKEN_MAX_RECONNECT_TRIES = 309,
555 TOKEN_RECONNECT_WAIT_TIME = 310,
557 TOKEN_STOP_RETRY_EXIT = 312,
558 TOKEN_SERVE_RETRY_EXIT = 313,
559 TOKEN_SERVE_RETRY_CONTINUE = 314,
560 TOKEN_RETRY_ON_STARTUP = 315,
561 TOKEN_MAX_ROW_ERRORS = 316,
562 TOKEN_TRUST_ANCHOR = 317,
563 TOKEN_CERT_FILE = 318,
564 TOKEN_KEY_FILE = 319,
565 TOKEN_CIPHER_LIST = 320,
566 TOKEN_VALID_LIFETIME = 321,
567 TOKEN_MIN_VALID_LIFETIME = 322,
568 TOKEN_MAX_VALID_LIFETIME = 323,
569 TOKEN_RENEW_TIMER = 324,
570 TOKEN_REBIND_TIMER = 325,
571 TOKEN_CALCULATE_TEE_TIMES = 326,
572 TOKEN_T1_PERCENT = 327,
573 TOKEN_T2_PERCENT = 328,
574 TOKEN_CACHE_THRESHOLD = 329,
575 TOKEN_CACHE_MAX_AGE = 330,
576 TOKEN_DECLINE_PROBATION_PERIOD = 331,
577 TOKEN_SERVER_TAG = 332,
578 TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT = 333,
579 TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE = 334,
580 TOKEN_DDNS_SEND_UPDATES = 335,
581 TOKEN_DDNS_OVERRIDE_NO_UPDATE = 336,
582 TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE = 337,
583 TOKEN_DDNS_REPLACE_CLIENT_NAME = 338,
584 TOKEN_DDNS_GENERATED_PREFIX = 339,
585 TOKEN_DDNS_QUALIFYING_SUFFIX = 340,
586 TOKEN_DDNS_UPDATE_ON_RENEW = 341,
587 TOKEN_DDNS_USE_CONFLICT_RESOLUTION = 342,
588 TOKEN_DDNS_TTL_PERCENT = 343,
589 TOKEN_STORE_EXTENDED_INFO = 344,
591 TOKEN_SUBNET_4O6_INTERFACE = 346,
592 TOKEN_SUBNET_4O6_INTERFACE_ID = 347,
593 TOKEN_SUBNET_4O6_SUBNET = 348,
594 TOKEN_OPTION_DEF = 349,
595 TOKEN_OPTION_DATA = 350,
600 TOKEN_CSV_FORMAT = 355,
601 TOKEN_ALWAYS_SEND = 356,
602 TOKEN_NEVER_SEND = 357,
603 TOKEN_RECORD_TYPES = 358,
604 TOKEN_ENCAPSULATE = 359,
606 TOKEN_PARKED_PACKET_LIMIT = 361,
607 TOKEN_ALLOCATOR = 362,
608 TOKEN_DDNS_CONFLICT_RESOLUTION_MODE = 363,
609 TOKEN_CHECK_WITH_DHCID = 364,
610 TOKEN_NO_CHECK_WITH_DHCID = 365,
611 TOKEN_CHECK_EXISTS_WITH_DHCID = 366,
612 TOKEN_NO_CHECK_WITHOUT_DHCID = 367,
613 TOKEN_SHARED_NETWORKS = 368,
616 TOKEN_USER_CONTEXT = 371,
619 TOKEN_INTERFACE = 374,
621 TOKEN_RESERVATION_MODE = 376,
622 TOKEN_DISABLED = 377,
623 TOKEN_OUT_OF_POOL = 378,
626 TOKEN_RESERVATIONS_GLOBAL = 381,
627 TOKEN_RESERVATIONS_IN_SUBNET = 382,
628 TOKEN_RESERVATIONS_OUT_OF_POOL = 383,
629 TOKEN_HOST_RESERVATION_IDENTIFIERS = 384,
630 TOKEN_CLIENT_CLASSES = 385,
631 TOKEN_REQUIRE_CLIENT_CLASSES = 386,
633 TOKEN_TEMPLATE_TEST = 388,
634 TOKEN_ONLY_IF_REQUIRED = 389,
635 TOKEN_CLIENT_CLASS = 390,
637 TOKEN_RESERVATIONS = 392,
639 TOKEN_HW_ADDRESS = 394,
640 TOKEN_CIRCUIT_ID = 395,
641 TOKEN_CLIENT_ID = 396,
642 TOKEN_HOSTNAME = 397,
645 TOKEN_IP_ADDRESS = 400,
646 TOKEN_IP_ADDRESSES = 401,
647 TOKEN_HOOKS_LIBRARIES = 402,
649 TOKEN_PARAMETERS = 404,
650 TOKEN_EXPIRED_LEASES_PROCESSING = 405,
651 TOKEN_RECLAIM_TIMER_WAIT_TIME = 406,
652 TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 407,
653 TOKEN_HOLD_RECLAIMED_TIME = 408,
654 TOKEN_MAX_RECLAIM_LEASES = 409,
655 TOKEN_MAX_RECLAIM_TIME = 410,
656 TOKEN_UNWARNED_RECLAIM_CYCLES = 411,
657 TOKEN_DHCP4O6_PORT = 412,
658 TOKEN_DHCP_MULTI_THREADING = 413,
659 TOKEN_ENABLE_MULTI_THREADING = 414,
660 TOKEN_THREAD_POOL_SIZE = 415,
661 TOKEN_PACKET_QUEUE_SIZE = 416,
662 TOKEN_CONTROL_SOCKET = 417,
663 TOKEN_SOCKET_TYPE = 418,
664 TOKEN_SOCKET_NAME = 419,
665 TOKEN_DHCP_QUEUE_CONTROL = 420,
666 TOKEN_ENABLE_QUEUE = 421,
667 TOKEN_QUEUE_TYPE = 422,
668 TOKEN_CAPACITY = 423,
669 TOKEN_DHCP_DDNS = 424,
670 TOKEN_ENABLE_UPDATES = 425,
671 TOKEN_QUALIFYING_SUFFIX = 426,
672 TOKEN_SERVER_IP = 427,
673 TOKEN_SERVER_PORT = 428,
674 TOKEN_SENDER_IP = 429,
675 TOKEN_SENDER_PORT = 430,
676 TOKEN_MAX_QUEUE_SIZE = 431,
677 TOKEN_NCR_PROTOCOL = 432,
678 TOKEN_NCR_FORMAT = 433,
679 TOKEN_OVERRIDE_NO_UPDATE = 434,
680 TOKEN_OVERRIDE_CLIENT_UPDATE = 435,
681 TOKEN_REPLACE_CLIENT_NAME = 436,
682 TOKEN_GENERATED_PREFIX = 437,
685 TOKEN_WHEN_PRESENT = 440,
688 TOKEN_WHEN_NOT_PRESENT = 443,
689 TOKEN_HOSTNAME_CHAR_SET = 444,
690 TOKEN_HOSTNAME_CHAR_REPLACEMENT = 445,
691 TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP = 446,
692 TOKEN_IP_RESERVATIONS_UNIQUE = 447,
693 TOKEN_RESERVATIONS_LOOKUP_FIRST = 448,
695 TOKEN_OUTPUT_OPTIONS = 450,
697 TOKEN_DEBUGLEVEL = 452,
698 TOKEN_SEVERITY = 453,
703 TOKEN_COMPATIBILITY = 458,
704 TOKEN_LENIENT_OPTION_PARSING = 459,
705 TOKEN_IGNORE_DHCP_SERVER_ID = 460,
706 TOKEN_IGNORE_RAI_LINK_SEL = 461,
707 TOKEN_EXCLUDE_FIRST_LAST_24 = 462,
708 TOKEN_TOPLEVEL_JSON = 463,
709 TOKEN_TOPLEVEL_DHCP4 = 464,
710 TOKEN_SUB_DHCP4 = 465,
711 TOKEN_SUB_INTERFACES4 = 466,
712 TOKEN_SUB_SUBNET4 = 467,
713 TOKEN_SUB_POOL4 = 468,
714 TOKEN_SUB_RESERVATION = 469,
715 TOKEN_SUB_OPTION_DEFS = 470,
716 TOKEN_SUB_OPTION_DEF = 471,
717 TOKEN_SUB_OPTION_DATA = 472,
718 TOKEN_SUB_HOOKS_LIBRARY = 473,
719 TOKEN_SUB_DHCP_DDNS = 474,
720 TOKEN_SUB_CONFIG_CONTROL = 475,
748 S_LSQUARE_BRACKET = 5,
749 S_RSQUARE_BRACKET = 6,
750 S_LCURLY_BRACKET = 7,
751 S_RCURLY_BRACKET = 8,
754 S_CONFIG_CONTROL = 11,
755 S_CONFIG_DATABASES = 12,
756 S_CONFIG_FETCH_WAIT_TIME = 13,
757 S_INTERFACES_CONFIG = 14,
759 S_DHCP_SOCKET_TYPE = 16,
762 S_OUTBOUND_INTERFACE = 19,
763 S_SAME_AS_INBOUND = 20,
766 S_SERVICE_SOCKETS_REQUIRE_ALL = 23,
767 S_SERVICE_SOCKETS_RETRY_WAIT_TIME = 24,
768 S_SERVICE_SOCKETS_MAX_RETRIES = 25,
769 S_SANITY_CHECKS = 26,
771 S_EXTENDED_INFO_CHECKS = 28,
772 S_ECHO_CLIENT_ID = 29,
773 S_MATCH_CLIENT_ID = 30,
774 S_AUTHORITATIVE = 31,
776 S_SERVER_HOSTNAME = 33,
777 S_BOOT_FILE_NAME = 34,
779 S_LEASE_DATABASE = 36,
780 S_HOSTS_DATABASE = 37,
781 S_HOSTS_DATABASES = 38,
793 S_CONNECT_TIMEOUT = 50,
795 S_WRITE_TIMEOUT = 52,
796 S_TCP_USER_TIMEOUT = 53,
797 S_MAX_RECONNECT_TRIES = 54,
798 S_RECONNECT_WAIT_TIME = 55,
800 S_STOP_RETRY_EXIT = 57,
801 S_SERVE_RETRY_EXIT = 58,
802 S_SERVE_RETRY_CONTINUE = 59,
803 S_RETRY_ON_STARTUP = 60,
804 S_MAX_ROW_ERRORS = 61,
809 S_VALID_LIFETIME = 66,
810 S_MIN_VALID_LIFETIME = 67,
811 S_MAX_VALID_LIFETIME = 68,
814 S_CALCULATE_TEE_TIMES = 71,
817 S_CACHE_THRESHOLD = 74,
818 S_CACHE_MAX_AGE = 75,
819 S_DECLINE_PROBATION_PERIOD = 76,
821 S_STATISTIC_DEFAULT_SAMPLE_COUNT = 78,
822 S_STATISTIC_DEFAULT_SAMPLE_AGE = 79,
823 S_DDNS_SEND_UPDATES = 80,
824 S_DDNS_OVERRIDE_NO_UPDATE = 81,
825 S_DDNS_OVERRIDE_CLIENT_UPDATE = 82,
826 S_DDNS_REPLACE_CLIENT_NAME = 83,
827 S_DDNS_GENERATED_PREFIX = 84,
828 S_DDNS_QUALIFYING_SUFFIX = 85,
829 S_DDNS_UPDATE_ON_RENEW = 86,
830 S_DDNS_USE_CONFLICT_RESOLUTION = 87,
831 S_DDNS_TTL_PERCENT = 88,
832 S_STORE_EXTENDED_INFO = 89,
834 S_SUBNET_4O6_INTERFACE = 91,
835 S_SUBNET_4O6_INTERFACE_ID = 92,
836 S_SUBNET_4O6_SUBNET = 93,
846 S_RECORD_TYPES = 103,
849 S_PARKED_PACKET_LIMIT = 106,
851 S_DDNS_CONFLICT_RESOLUTION_MODE = 108,
852 S_CHECK_WITH_DHCID = 109,
853 S_NO_CHECK_WITH_DHCID = 110,
854 S_CHECK_EXISTS_WITH_DHCID = 111,
855 S_NO_CHECK_WITHOUT_DHCID = 112,
856 S_SHARED_NETWORKS = 113,
859 S_USER_CONTEXT = 116,
864 S_RESERVATION_MODE = 121,
869 S_RESERVATIONS_GLOBAL = 126,
870 S_RESERVATIONS_IN_SUBNET = 127,
871 S_RESERVATIONS_OUT_OF_POOL = 128,
872 S_HOST_RESERVATION_IDENTIFIERS = 129,
873 S_CLIENT_CLASSES = 130,
874 S_REQUIRE_CLIENT_CLASSES = 131,
876 S_TEMPLATE_TEST = 133,
877 S_ONLY_IF_REQUIRED = 134,
878 S_CLIENT_CLASS = 135,
880 S_RESERVATIONS = 137,
889 S_IP_ADDRESSES = 146,
890 S_HOOKS_LIBRARIES = 147,
893 S_EXPIRED_LEASES_PROCESSING = 150,
894 S_RECLAIM_TIMER_WAIT_TIME = 151,
895 S_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 152,
896 S_HOLD_RECLAIMED_TIME = 153,
897 S_MAX_RECLAIM_LEASES = 154,
898 S_MAX_RECLAIM_TIME = 155,
899 S_UNWARNED_RECLAIM_CYCLES = 156,
900 S_DHCP4O6_PORT = 157,
901 S_DHCP_MULTI_THREADING = 158,
902 S_ENABLE_MULTI_THREADING = 159,
903 S_THREAD_POOL_SIZE = 160,
904 S_PACKET_QUEUE_SIZE = 161,
905 S_CONTROL_SOCKET = 162,
908 S_DHCP_QUEUE_CONTROL = 165,
909 S_ENABLE_QUEUE = 166,
913 S_ENABLE_UPDATES = 170,
914 S_QUALIFYING_SUFFIX = 171,
919 S_MAX_QUEUE_SIZE = 176,
920 S_NCR_PROTOCOL = 177,
922 S_OVERRIDE_NO_UPDATE = 179,
923 S_OVERRIDE_CLIENT_UPDATE = 180,
924 S_REPLACE_CLIENT_NAME = 181,
925 S_GENERATED_PREFIX = 182,
928 S_WHEN_PRESENT = 185,
931 S_WHEN_NOT_PRESENT = 188,
932 S_HOSTNAME_CHAR_SET = 189,
933 S_HOSTNAME_CHAR_REPLACEMENT = 190,
934 S_EARLY_GLOBAL_RESERVATIONS_LOOKUP = 191,
935 S_IP_RESERVATIONS_UNIQUE = 192,
936 S_RESERVATIONS_LOOKUP_FIRST = 193,
938 S_OUTPUT_OPTIONS = 195,
946 S_COMPATIBILITY = 203,
947 S_LENIENT_OPTION_PARSING = 204,
948 S_IGNORE_DHCP_SERVER_ID = 205,
949 S_IGNORE_RAI_LINK_SEL = 206,
950 S_EXCLUDE_FIRST_LAST_24 = 207,
951 S_TOPLEVEL_JSON = 208,
952 S_TOPLEVEL_DHCP4 = 209,
954 S_SUB_INTERFACES4 = 211,
957 S_SUB_RESERVATION = 214,
958 S_SUB_OPTION_DEFS = 215,
959 S_SUB_OPTION_DEF = 216,
960 S_SUB_OPTION_DATA = 217,
961 S_SUB_HOOKS_LIBRARY = 218,
962 S_SUB_DHCP_DDNS = 219,
963 S_SUB_CONFIG_CONTROL = 220,
989 S_not_empty_map = 246,
990 S_list_generic = 247,
992 S_list_content = 249,
993 S_not_empty_list = 250,
994 S_list_strings = 251,
996 S_list_strings_content = 253,
997 S_not_empty_list_strings = 254,
998 S_unknown_map_entry = 255,
1001 S_global_object = 258,
1003 S_global_object_comma = 260,
1006 S_global_params = 263,
1007 S_global_param = 264,
1008 S_valid_lifetime = 265,
1009 S_min_valid_lifetime = 266,
1010 S_max_valid_lifetime = 267,
1011 S_renew_timer = 268,
1012 S_rebind_timer = 269,
1013 S_calculate_tee_times = 270,
1016 S_cache_threshold = 273,
1017 S_cache_max_age = 274,
1018 S_decline_probation_period = 275,
1021 S_parked_packet_limit = 278,
1024 S_echo_client_id = 281,
1025 S_match_client_id = 282,
1026 S_authoritative = 283,
1027 S_ddns_send_updates = 284,
1028 S_ddns_override_no_update = 285,
1029 S_ddns_override_client_update = 286,
1030 S_ddns_replace_client_name = 287,
1032 S_ddns_replace_client_name_value = 289,
1033 S_ddns_generated_prefix = 290,
1035 S_ddns_qualifying_suffix = 292,
1037 S_ddns_update_on_renew = 294,
1038 S_ddns_use_conflict_resolution = 295,
1039 S_ddns_conflict_resolution_mode = 296,
1041 S_ddns_conflict_resolution_mode_value = 298,
1042 S_ddns_ttl_percent = 299,
1043 S_hostname_char_set = 300,
1045 S_hostname_char_replacement = 302,
1047 S_store_extended_info = 304,
1048 S_statistic_default_sample_count = 305,
1049 S_statistic_default_sample_age = 306,
1050 S_early_global_reservations_lookup = 307,
1051 S_ip_reservations_unique = 308,
1052 S_reservations_lookup_first = 309,
1053 S_offer_lifetime = 310,
1054 S_interfaces_config = 311,
1056 S_interfaces_config_params = 313,
1057 S_interfaces_config_param = 314,
1058 S_sub_interfaces4 = 315,
1060 S_interfaces_list = 317,
1062 S_dhcp_socket_type = 319,
1064 S_socket_type = 321,
1065 S_outbound_interface = 322,
1067 S_outbound_interface_value = 324,
1069 S_service_sockets_require_all = 326,
1070 S_service_sockets_retry_wait_time = 327,
1071 S_service_sockets_max_retries = 328,
1072 S_lease_database = 329,
1074 S_sanity_checks = 331,
1076 S_sanity_checks_params = 333,
1077 S_sanity_checks_param = 334,
1078 S_lease_checks = 335,
1080 S_extended_info_checks = 337,
1082 S_hosts_database = 339,
1084 S_hosts_databases = 341,
1086 S_database_list = 343,
1087 S_not_empty_database_list = 344,
1090 S_database_map_params = 347,
1091 S_database_map_param = 348,
1092 S_database_type = 349,
1105 S_lfc_interval = 362,
1107 S_connect_timeout = 364,
1108 S_read_timeout = 365,
1109 S_write_timeout = 366,
1110 S_tcp_user_timeout = 367,
1111 S_max_reconnect_tries = 368,
1112 S_reconnect_wait_time = 369,
1115 S_on_fail_mode = 372,
1116 S_retry_on_startup = 373,
1117 S_max_row_errors = 374,
1118 S_trust_anchor = 375,
1124 S_cipher_list = 381,
1126 S_host_reservation_identifiers = 383,
1128 S_host_reservation_identifiers_list = 385,
1129 S_host_reservation_identifier = 386,
1131 S_hw_address_id = 388,
1135 S_dhcp_multi_threading = 392,
1137 S_multi_threading_params = 394,
1138 S_multi_threading_param = 395,
1139 S_enable_multi_threading = 396,
1140 S_thread_pool_size = 397,
1141 S_packet_queue_size = 398,
1142 S_hooks_libraries = 399,
1144 S_hooks_libraries_list = 401,
1145 S_not_empty_hooks_libraries_list = 402,
1146 S_hooks_library = 403,
1148 S_sub_hooks_library = 405,
1150 S_hooks_params = 407,
1151 S_hooks_param = 408,
1156 S_expired_leases_processing = 413,
1158 S_expired_leases_params = 415,
1159 S_expired_leases_param = 416,
1160 S_reclaim_timer_wait_time = 417,
1161 S_flush_reclaimed_timer_wait_time = 418,
1162 S_hold_reclaimed_time = 419,
1163 S_max_reclaim_leases = 420,
1164 S_max_reclaim_time = 421,
1165 S_unwarned_reclaim_cycles = 422,
1166 S_subnet4_list = 423,
1168 S_subnet4_list_content = 425,
1169 S_not_empty_subnet4_list = 426,
1172 S_sub_subnet4 = 429,
1174 S_subnet4_params = 431,
1175 S_subnet4_param = 432,
1178 S_subnet_4o6_interface = 435,
1180 S_subnet_4o6_interface_id = 437,
1182 S_subnet_4o6_subnet = 439,
1186 S_client_class = 443,
1188 S_require_client_classes = 445,
1190 S_reservations_global = 447,
1191 S_reservations_in_subnet = 448,
1192 S_reservations_out_of_pool = 449,
1193 S_reservation_mode = 450,
1197 S_shared_networks = 454,
1199 S_shared_networks_content = 456,
1200 S_shared_networks_list = 457,
1201 S_shared_network = 458,
1203 S_shared_network_params = 460,
1204 S_shared_network_param = 461,
1205 S_option_def_list = 462,
1207 S_sub_option_def_list = 464,
1209 S_option_def_list_content = 466,
1210 S_not_empty_option_def_list = 467,
1211 S_option_def_entry = 468,
1213 S_sub_option_def = 470,
1215 S_option_def_params = 472,
1216 S_not_empty_option_def_params = 473,
1217 S_option_def_param = 474,
1218 S_option_def_name = 475,
1220 S_option_def_code = 477,
1221 S_option_def_type = 478,
1223 S_option_def_record_types = 480,
1227 S_option_def_space = 484,
1228 S_option_def_encapsulate = 485,
1230 S_option_def_array = 487,
1231 S_option_data_list = 488,
1233 S_option_data_list_content = 490,
1234 S_not_empty_option_data_list = 491,
1235 S_option_data_entry = 492,
1237 S_sub_option_data = 494,
1239 S_option_data_params = 496,
1240 S_not_empty_option_data_params = 497,
1241 S_option_data_param = 498,
1242 S_option_data_name = 499,
1243 S_option_data_data = 500,
1245 S_option_data_code = 502,
1246 S_option_data_space = 503,
1247 S_option_data_csv_format = 504,
1248 S_option_data_always_send = 505,
1249 S_option_data_never_send = 506,
1252 S_pools_list_content = 509,
1253 S_not_empty_pools_list = 510,
1254 S_pool_list_entry = 511,
1258 S_pool_params = 515,
1263 S_user_context = 520,
1267 S_reservations = 524,
1269 S_reservations_list = 526,
1270 S_not_empty_reservations_list = 527,
1271 S_reservation = 528,
1273 S_sub_reservation = 530,
1275 S_reservation_params = 532,
1276 S_not_empty_reservation_params = 533,
1277 S_reservation_param = 534,
1278 S_next_server = 535,
1280 S_server_hostname = 537,
1282 S_boot_file_name = 539,
1286 S_ip_addresses = 543,
1292 S_client_id_value = 549,
1294 S_circuit_id_value = 551,
1296 S_flex_id_value = 553,
1300 S_reservation_client_classes = 557,
1305 S_client_classes = 562,
1307 S_client_classes_list = 564,
1308 S_client_class_entry = 565,
1310 S_client_class_params = 567,
1311 S_not_empty_client_class_params = 568,
1312 S_client_class_param = 569,
1313 S_client_class_name = 570,
1314 S_client_class_test = 571,
1316 S_client_class_template_test = 573,
1318 S_only_if_required = 575,
1319 S_dhcp4o6_port = 576,
1320 S_control_socket = 577,
1322 S_control_socket_params = 579,
1323 S_control_socket_param = 580,
1324 S_control_socket_type = 581,
1326 S_control_socket_name = 583,
1328 S_dhcp_queue_control = 585,
1330 S_queue_control_params = 587,
1331 S_queue_control_param = 588,
1332 S_enable_queue = 589,
1336 S_arbitrary_map_entry = 593,
1340 S_sub_dhcp_ddns = 597,
1342 S_dhcp_ddns_params = 599,
1343 S_dhcp_ddns_param = 600,
1344 S_enable_updates = 601,
1347 S_server_port = 604,
1350 S_sender_port = 607,
1351 S_max_queue_size = 608,
1352 S_ncr_protocol = 609,
1354 S_ncr_protocol_value = 611,
1357 S_dep_qualifying_suffix = 614,
1359 S_dep_override_no_update = 616,
1360 S_dep_override_client_update = 617,
1361 S_dep_replace_client_name = 618,
1363 S_dep_generated_prefix = 620,
1365 S_dep_hostname_char_set = 622,
1367 S_dep_hostname_char_replacement = 624,
1369 S_config_control = 626,
1371 S_sub_config_control = 628,
1373 S_config_control_params = 630,
1374 S_config_control_param = 631,
1375 S_config_databases = 632,
1377 S_config_fetch_wait_time = 634,
1380 S_loggers_entries = 637,
1381 S_logger_entry = 638,
1383 S_logger_params = 640,
1384 S_logger_param = 641,
1388 S_output_options_list = 645,
1390 S_output_options_list_content = 647,
1391 S_output_entry = 648,
1393 S_output_params_list = 650,
1394 S_output_params = 651,
1402 S_compatibility = 659,
1404 S_compatibility_params = 661,
1405 S_compatibility_param = 662,
1406 S_lenient_option_parsing = 663,
1407 S_ignore_dhcp_server_identifier = 664,
1408 S_ignore_rai_link_selection = 665,
1409 S_exclude_first_last_24 = 666
1425 template <
typename Base>
1437#if 201103L <= YY_CPLUSPLUS
1440 : Base (std::move (that))
1442 , location (std::move (that.location))
1444 switch (this->kind ())
1446 case symbol_kind::S_value:
1447 case symbol_kind::S_map_value:
1448 case symbol_kind::S_ddns_replace_client_name_value:
1449 case symbol_kind::S_ddns_conflict_resolution_mode_value:
1450 case symbol_kind::S_socket_type:
1451 case symbol_kind::S_outbound_interface_value:
1452 case symbol_kind::S_db_type:
1453 case symbol_kind::S_on_fail_mode:
1454 case symbol_kind::S_hr_mode:
1455 case symbol_kind::S_ncr_protocol_value:
1456 value.move<
ElementPtr > (std::move (that.value));
1459 case symbol_kind::S_BOOLEAN:
1460 value.move<
bool > (std::move (that.value));
1463 case symbol_kind::S_FLOAT:
1464 value.move<
double > (std::move (that.value));
1467 case symbol_kind::S_INTEGER:
1468 value.move< int64_t > (std::move (that.value));
1471 case symbol_kind::S_STRING:
1472 value.move< std::string > (std::move (that.value));
1483 basic_symbol (
const basic_symbol& that);
1486#if 201103L <= YY_CPLUSPLUS
1487 basic_symbol (
typename Base::kind_type t, location_type&& l)
1489 , location (std::move (l))
1498#if 201103L <= YY_CPLUSPLUS
1501 , value (std::move (v))
1502 , location (std::move (l))
1512#if 201103L <= YY_CPLUSPLUS
1515 , value (std::move (v))
1516 , location (std::move (l))
1526#if 201103L <= YY_CPLUSPLUS
1529 , value (std::move (v))
1530 , location (std::move (l))
1540#if 201103L <= YY_CPLUSPLUS
1543 , value (std::move (v))
1544 , location (std::move (l))
1554#if 201103L <= YY_CPLUSPLUS
1557 , value (std::move (v))
1558 , location (std::move (l))
1592 case symbol_kind::S_value:
1593 case symbol_kind::S_map_value:
1594 case symbol_kind::S_ddns_replace_client_name_value:
1595 case symbol_kind::S_ddns_conflict_resolution_mode_value:
1596 case symbol_kind::S_socket_type:
1597 case symbol_kind::S_outbound_interface_value:
1598 case symbol_kind::S_db_type:
1599 case symbol_kind::S_on_fail_mode:
1600 case symbol_kind::S_hr_mode:
1601 case symbol_kind::S_ncr_protocol_value:
1602 value.template destroy< ElementPtr > ();
1605 case symbol_kind::S_BOOLEAN:
1606 value.template destroy< bool > ();
1609 case symbol_kind::S_FLOAT:
1610 value.template destroy< double > ();
1613 case symbol_kind::S_INTEGER:
1614 value.template destroy< int64_t > ();
1617 case symbol_kind::S_STRING:
1618 value.template destroy< std::string > ();
1650#if YY_CPLUSPLUS < 201103L
1665#if 201103L <= YY_CPLUSPLUS
1709#if 201103L <= YY_CPLUSPLUS
1717#if !defined _MSC_VER || defined __clang__
1719 || (token::TOKEN_PARSER4_error <= tok && tok <= token::TOKEN_SUB_CONFIG_CONTROL));
1722#if 201103L <= YY_CPLUSPLUS
1730#if !defined _MSC_VER || defined __clang__
1734#if 201103L <= YY_CPLUSPLUS
1742#if !defined _MSC_VER || defined __clang__
1746#if 201103L <= YY_CPLUSPLUS
1754#if !defined _MSC_VER || defined __clang__
1758#if 201103L <= YY_CPLUSPLUS
1766#if !defined _MSC_VER || defined __clang__
1776#if 201103L <= YY_CPLUSPLUS
1789 virtual int parse ();
1795 void set_debug_stream (std::ostream &);
1798 typedef
int debug_level_type;
1802 void set_debug_level (debug_level_type l);
1808 virtual void error (
const location_type& loc,
const std::string& msg);
1811 void error (
const syntax_error& err);
1815 static std::string symbol_name (symbol_kind_type yysymbol);
1818#if 201103L <= YY_CPLUSPLUS
1821 make_END (location_type l)
1823 return symbol_type (token::TOKEN_END, std::move (l));
1833#if 201103L <= YY_CPLUSPLUS
1836 make_PARSER4_error (location_type l)
1838 return symbol_type (token::TOKEN_PARSER4_error, std::move (l));
1845 return symbol_type (token::TOKEN_PARSER4_error, l);
1848#if 201103L <= YY_CPLUSPLUS
1851 make_PARSER4_UNDEF (location_type l)
1853 return symbol_type (token::TOKEN_PARSER4_UNDEF, std::move (l));
1860 return symbol_type (token::TOKEN_PARSER4_UNDEF, l);
1863#if 201103L <= YY_CPLUSPLUS
1866 make_COMMA (location_type l)
1868 return symbol_type (token::TOKEN_COMMA, std::move (l));
1878#if 201103L <= YY_CPLUSPLUS
1881 make_COLON (location_type l)
1883 return symbol_type (token::TOKEN_COLON, std::move (l));
1893#if 201103L <= YY_CPLUSPLUS
1896 make_LSQUARE_BRACKET (location_type l)
1898 return symbol_type (token::TOKEN_LSQUARE_BRACKET, std::move (l));
1905 return symbol_type (token::TOKEN_LSQUARE_BRACKET, l);
1908#if 201103L <= YY_CPLUSPLUS
1911 make_RSQUARE_BRACKET (location_type l)
1913 return symbol_type (token::TOKEN_RSQUARE_BRACKET, std::move (l));
1920 return symbol_type (token::TOKEN_RSQUARE_BRACKET, l);
1923#if 201103L <= YY_CPLUSPLUS
1926 make_LCURLY_BRACKET (location_type l)
1928 return symbol_type (token::TOKEN_LCURLY_BRACKET, std::move (l));
1935 return symbol_type (token::TOKEN_LCURLY_BRACKET, l);
1938#if 201103L <= YY_CPLUSPLUS
1941 make_RCURLY_BRACKET (location_type l)
1943 return symbol_type (token::TOKEN_RCURLY_BRACKET, std::move (l));
1950 return symbol_type (token::TOKEN_RCURLY_BRACKET, l);
1953#if 201103L <= YY_CPLUSPLUS
1956 make_NULL_TYPE (location_type l)
1958 return symbol_type (token::TOKEN_NULL_TYPE, std::move (l));
1968#if 201103L <= YY_CPLUSPLUS
1971 make_DHCP4 (location_type l)
1973 return symbol_type (token::TOKEN_DHCP4, std::move (l));
1983#if 201103L <= YY_CPLUSPLUS
1986 make_CONFIG_CONTROL (location_type l)
1988 return symbol_type (token::TOKEN_CONFIG_CONTROL, std::move (l));
1995 return symbol_type (token::TOKEN_CONFIG_CONTROL, l);
1998#if 201103L <= YY_CPLUSPLUS
2001 make_CONFIG_DATABASES (location_type l)
2003 return symbol_type (token::TOKEN_CONFIG_DATABASES, std::move (l));
2010 return symbol_type (token::TOKEN_CONFIG_DATABASES, l);
2013#if 201103L <= YY_CPLUSPLUS
2016 make_CONFIG_FETCH_WAIT_TIME (location_type l)
2018 return symbol_type (token::TOKEN_CONFIG_FETCH_WAIT_TIME, std::move (l));
2025 return symbol_type (token::TOKEN_CONFIG_FETCH_WAIT_TIME, l);
2028#if 201103L <= YY_CPLUSPLUS
2031 make_INTERFACES_CONFIG (location_type l)
2033 return symbol_type (token::TOKEN_INTERFACES_CONFIG, std::move (l));
2040 return symbol_type (token::TOKEN_INTERFACES_CONFIG, l);
2043#if 201103L <= YY_CPLUSPLUS
2046 make_INTERFACES (location_type l)
2048 return symbol_type (token::TOKEN_INTERFACES, std::move (l));
2058#if 201103L <= YY_CPLUSPLUS
2061 make_DHCP_SOCKET_TYPE (location_type l)
2063 return symbol_type (token::TOKEN_DHCP_SOCKET_TYPE, std::move (l));
2070 return symbol_type (token::TOKEN_DHCP_SOCKET_TYPE, l);
2073#if 201103L <= YY_CPLUSPLUS
2076 make_RAW (location_type l)
2078 return symbol_type (token::TOKEN_RAW, std::move (l));
2088#if 201103L <= YY_CPLUSPLUS
2091 make_UDP (location_type l)
2093 return symbol_type (token::TOKEN_UDP, std::move (l));
2103#if 201103L <= YY_CPLUSPLUS
2106 make_OUTBOUND_INTERFACE (location_type l)
2108 return symbol_type (token::TOKEN_OUTBOUND_INTERFACE, std::move (l));
2115 return symbol_type (token::TOKEN_OUTBOUND_INTERFACE, l);
2118#if 201103L <= YY_CPLUSPLUS
2121 make_SAME_AS_INBOUND (location_type l)
2123 return symbol_type (token::TOKEN_SAME_AS_INBOUND, std::move (l));
2130 return symbol_type (token::TOKEN_SAME_AS_INBOUND, l);
2133#if 201103L <= YY_CPLUSPLUS
2136 make_USE_ROUTING (location_type l)
2138 return symbol_type (token::TOKEN_USE_ROUTING, std::move (l));
2148#if 201103L <= YY_CPLUSPLUS
2151 make_RE_DETECT (location_type l)
2153 return symbol_type (token::TOKEN_RE_DETECT, std::move (l));
2163#if 201103L <= YY_CPLUSPLUS
2166 make_SERVICE_SOCKETS_REQUIRE_ALL (location_type l)
2168 return symbol_type (token::TOKEN_SERVICE_SOCKETS_REQUIRE_ALL, std::move (l));
2175 return symbol_type (token::TOKEN_SERVICE_SOCKETS_REQUIRE_ALL, l);
2178#if 201103L <= YY_CPLUSPLUS
2181 make_SERVICE_SOCKETS_RETRY_WAIT_TIME (location_type l)
2183 return symbol_type (token::TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME, std::move (l));
2190 return symbol_type (token::TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME, l);
2193#if 201103L <= YY_CPLUSPLUS
2196 make_SERVICE_SOCKETS_MAX_RETRIES (location_type l)
2198 return symbol_type (token::TOKEN_SERVICE_SOCKETS_MAX_RETRIES, std::move (l));
2205 return symbol_type (token::TOKEN_SERVICE_SOCKETS_MAX_RETRIES, l);
2208#if 201103L <= YY_CPLUSPLUS
2211 make_SANITY_CHECKS (location_type l)
2213 return symbol_type (token::TOKEN_SANITY_CHECKS, std::move (l));
2220 return symbol_type (token::TOKEN_SANITY_CHECKS, l);
2223#if 201103L <= YY_CPLUSPLUS
2226 make_LEASE_CHECKS (location_type l)
2228 return symbol_type (token::TOKEN_LEASE_CHECKS, std::move (l));
2235 return symbol_type (token::TOKEN_LEASE_CHECKS, l);
2238#if 201103L <= YY_CPLUSPLUS
2241 make_EXTENDED_INFO_CHECKS (location_type l)
2243 return symbol_type (token::TOKEN_EXTENDED_INFO_CHECKS, std::move (l));
2250 return symbol_type (token::TOKEN_EXTENDED_INFO_CHECKS, l);
2253#if 201103L <= YY_CPLUSPLUS
2256 make_ECHO_CLIENT_ID (location_type l)
2258 return symbol_type (token::TOKEN_ECHO_CLIENT_ID, std::move (l));
2265 return symbol_type (token::TOKEN_ECHO_CLIENT_ID, l);
2268#if 201103L <= YY_CPLUSPLUS
2271 make_MATCH_CLIENT_ID (location_type l)
2273 return symbol_type (token::TOKEN_MATCH_CLIENT_ID, std::move (l));
2280 return symbol_type (token::TOKEN_MATCH_CLIENT_ID, l);
2283#if 201103L <= YY_CPLUSPLUS
2286 make_AUTHORITATIVE (location_type l)
2288 return symbol_type (token::TOKEN_AUTHORITATIVE, std::move (l));
2295 return symbol_type (token::TOKEN_AUTHORITATIVE, l);
2298#if 201103L <= YY_CPLUSPLUS
2301 make_NEXT_SERVER (location_type l)
2303 return symbol_type (token::TOKEN_NEXT_SERVER, std::move (l));
2313#if 201103L <= YY_CPLUSPLUS
2316 make_SERVER_HOSTNAME (location_type l)
2318 return symbol_type (token::TOKEN_SERVER_HOSTNAME, std::move (l));
2325 return symbol_type (token::TOKEN_SERVER_HOSTNAME, l);
2328#if 201103L <= YY_CPLUSPLUS
2331 make_BOOT_FILE_NAME (location_type l)
2333 return symbol_type (token::TOKEN_BOOT_FILE_NAME, std::move (l));
2340 return symbol_type (token::TOKEN_BOOT_FILE_NAME, l);
2343#if 201103L <= YY_CPLUSPLUS
2346 make_OFFER_LFT (location_type l)
2348 return symbol_type (token::TOKEN_OFFER_LFT, std::move (l));
2358#if 201103L <= YY_CPLUSPLUS
2361 make_LEASE_DATABASE (location_type l)
2363 return symbol_type (token::TOKEN_LEASE_DATABASE, std::move (l));
2370 return symbol_type (token::TOKEN_LEASE_DATABASE, l);
2373#if 201103L <= YY_CPLUSPLUS
2376 make_HOSTS_DATABASE (location_type l)
2378 return symbol_type (token::TOKEN_HOSTS_DATABASE, std::move (l));
2385 return symbol_type (token::TOKEN_HOSTS_DATABASE, l);
2388#if 201103L <= YY_CPLUSPLUS
2391 make_HOSTS_DATABASES (location_type l)
2393 return symbol_type (token::TOKEN_HOSTS_DATABASES, std::move (l));
2400 return symbol_type (token::TOKEN_HOSTS_DATABASES, l);
2403#if 201103L <= YY_CPLUSPLUS
2406 make_TYPE (location_type l)
2408 return symbol_type (token::TOKEN_TYPE, std::move (l));
2418#if 201103L <= YY_CPLUSPLUS
2421 make_MEMFILE (location_type l)
2423 return symbol_type (token::TOKEN_MEMFILE, std::move (l));
2433#if 201103L <= YY_CPLUSPLUS
2436 make_MYSQL (location_type l)
2438 return symbol_type (token::TOKEN_MYSQL, std::move (l));
2448#if 201103L <= YY_CPLUSPLUS
2451 make_POSTGRESQL (location_type l)
2453 return symbol_type (token::TOKEN_POSTGRESQL, std::move (l));
2463#if 201103L <= YY_CPLUSPLUS
2466 make_USER (location_type l)
2468 return symbol_type (token::TOKEN_USER, std::move (l));
2478#if 201103L <= YY_CPLUSPLUS
2481 make_PASSWORD (location_type l)
2483 return symbol_type (token::TOKEN_PASSWORD, std::move (l));
2493#if 201103L <= YY_CPLUSPLUS
2496 make_HOST (location_type l)
2498 return symbol_type (token::TOKEN_HOST, std::move (l));
2508#if 201103L <= YY_CPLUSPLUS
2511 make_PORT (location_type l)
2513 return symbol_type (token::TOKEN_PORT, std::move (l));
2523#if 201103L <= YY_CPLUSPLUS
2526 make_PERSIST (location_type l)
2528 return symbol_type (token::TOKEN_PERSIST, std::move (l));
2538#if 201103L <= YY_CPLUSPLUS
2541 make_LFC_INTERVAL (location_type l)
2543 return symbol_type (token::TOKEN_LFC_INTERVAL, std::move (l));
2550 return symbol_type (token::TOKEN_LFC_INTERVAL, l);
2553#if 201103L <= YY_CPLUSPLUS
2556 make_READONLY (location_type l)
2558 return symbol_type (token::TOKEN_READONLY, std::move (l));
2568#if 201103L <= YY_CPLUSPLUS
2571 make_CONNECT_TIMEOUT (location_type l)
2573 return symbol_type (token::TOKEN_CONNECT_TIMEOUT, std::move (l));
2580 return symbol_type (token::TOKEN_CONNECT_TIMEOUT, l);
2583#if 201103L <= YY_CPLUSPLUS
2586 make_READ_TIMEOUT (location_type l)
2588 return symbol_type (token::TOKEN_READ_TIMEOUT, std::move (l));
2595 return symbol_type (token::TOKEN_READ_TIMEOUT, l);
2598#if 201103L <= YY_CPLUSPLUS
2601 make_WRITE_TIMEOUT (location_type l)
2603 return symbol_type (token::TOKEN_WRITE_TIMEOUT, std::move (l));
2610 return symbol_type (token::TOKEN_WRITE_TIMEOUT, l);
2613#if 201103L <= YY_CPLUSPLUS
2616 make_TCP_USER_TIMEOUT (location_type l)
2618 return symbol_type (token::TOKEN_TCP_USER_TIMEOUT, std::move (l));
2625 return symbol_type (token::TOKEN_TCP_USER_TIMEOUT, l);
2628#if 201103L <= YY_CPLUSPLUS
2631 make_MAX_RECONNECT_TRIES (location_type l)
2633 return symbol_type (token::TOKEN_MAX_RECONNECT_TRIES, std::move (l));
2640 return symbol_type (token::TOKEN_MAX_RECONNECT_TRIES, l);
2643#if 201103L <= YY_CPLUSPLUS
2646 make_RECONNECT_WAIT_TIME (location_type l)
2648 return symbol_type (token::TOKEN_RECONNECT_WAIT_TIME, std::move (l));
2655 return symbol_type (token::TOKEN_RECONNECT_WAIT_TIME, l);
2658#if 201103L <= YY_CPLUSPLUS
2661 make_ON_FAIL (location_type l)
2663 return symbol_type (token::TOKEN_ON_FAIL, std::move (l));
2673#if 201103L <= YY_CPLUSPLUS
2676 make_STOP_RETRY_EXIT (location_type l)
2678 return symbol_type (token::TOKEN_STOP_RETRY_EXIT, std::move (l));
2685 return symbol_type (token::TOKEN_STOP_RETRY_EXIT, l);
2688#if 201103L <= YY_CPLUSPLUS
2691 make_SERVE_RETRY_EXIT (location_type l)
2693 return symbol_type (token::TOKEN_SERVE_RETRY_EXIT, std::move (l));
2700 return symbol_type (token::TOKEN_SERVE_RETRY_EXIT, l);
2703#if 201103L <= YY_CPLUSPLUS
2706 make_SERVE_RETRY_CONTINUE (location_type l)
2708 return symbol_type (token::TOKEN_SERVE_RETRY_CONTINUE, std::move (l));
2715 return symbol_type (token::TOKEN_SERVE_RETRY_CONTINUE, l);
2718#if 201103L <= YY_CPLUSPLUS
2721 make_RETRY_ON_STARTUP (location_type l)
2723 return symbol_type (token::TOKEN_RETRY_ON_STARTUP, std::move (l));
2730 return symbol_type (token::TOKEN_RETRY_ON_STARTUP, l);
2733#if 201103L <= YY_CPLUSPLUS
2736 make_MAX_ROW_ERRORS (location_type l)
2738 return symbol_type (token::TOKEN_MAX_ROW_ERRORS, std::move (l));
2745 return symbol_type (token::TOKEN_MAX_ROW_ERRORS, l);
2748#if 201103L <= YY_CPLUSPLUS
2751 make_TRUST_ANCHOR (location_type l)
2753 return symbol_type (token::TOKEN_TRUST_ANCHOR, std::move (l));
2760 return symbol_type (token::TOKEN_TRUST_ANCHOR, l);
2763#if 201103L <= YY_CPLUSPLUS
2766 make_CERT_FILE (location_type l)
2768 return symbol_type (token::TOKEN_CERT_FILE, std::move (l));
2778#if 201103L <= YY_CPLUSPLUS
2781 make_KEY_FILE (location_type l)
2783 return symbol_type (token::TOKEN_KEY_FILE, std::move (l));
2793#if 201103L <= YY_CPLUSPLUS
2796 make_CIPHER_LIST (location_type l)
2798 return symbol_type (token::TOKEN_CIPHER_LIST, std::move (l));
2808#if 201103L <= YY_CPLUSPLUS
2811 make_VALID_LIFETIME (location_type l)
2813 return symbol_type (token::TOKEN_VALID_LIFETIME, std::move (l));
2820 return symbol_type (token::TOKEN_VALID_LIFETIME, l);
2823#if 201103L <= YY_CPLUSPLUS
2826 make_MIN_VALID_LIFETIME (location_type l)
2828 return symbol_type (token::TOKEN_MIN_VALID_LIFETIME, std::move (l));
2835 return symbol_type (token::TOKEN_MIN_VALID_LIFETIME, l);
2838#if 201103L <= YY_CPLUSPLUS
2841 make_MAX_VALID_LIFETIME (location_type l)
2843 return symbol_type (token::TOKEN_MAX_VALID_LIFETIME, std::move (l));
2850 return symbol_type (token::TOKEN_MAX_VALID_LIFETIME, l);
2853#if 201103L <= YY_CPLUSPLUS
2856 make_RENEW_TIMER (location_type l)
2858 return symbol_type (token::TOKEN_RENEW_TIMER, std::move (l));
2868#if 201103L <= YY_CPLUSPLUS
2871 make_REBIND_TIMER (location_type l)
2873 return symbol_type (token::TOKEN_REBIND_TIMER, std::move (l));
2880 return symbol_type (token::TOKEN_REBIND_TIMER, l);
2883#if 201103L <= YY_CPLUSPLUS
2886 make_CALCULATE_TEE_TIMES (location_type l)
2888 return symbol_type (token::TOKEN_CALCULATE_TEE_TIMES, std::move (l));
2895 return symbol_type (token::TOKEN_CALCULATE_TEE_TIMES, l);
2898#if 201103L <= YY_CPLUSPLUS
2901 make_T1_PERCENT (location_type l)
2903 return symbol_type (token::TOKEN_T1_PERCENT, std::move (l));
2913#if 201103L <= YY_CPLUSPLUS
2916 make_T2_PERCENT (location_type l)
2918 return symbol_type (token::TOKEN_T2_PERCENT, std::move (l));
2928#if 201103L <= YY_CPLUSPLUS
2931 make_CACHE_THRESHOLD (location_type l)
2933 return symbol_type (token::TOKEN_CACHE_THRESHOLD, std::move (l));
2940 return symbol_type (token::TOKEN_CACHE_THRESHOLD, l);
2943#if 201103L <= YY_CPLUSPLUS
2946 make_CACHE_MAX_AGE (location_type l)
2948 return symbol_type (token::TOKEN_CACHE_MAX_AGE, std::move (l));
2955 return symbol_type (token::TOKEN_CACHE_MAX_AGE, l);
2958#if 201103L <= YY_CPLUSPLUS
2961 make_DECLINE_PROBATION_PERIOD (location_type l)
2963 return symbol_type (token::TOKEN_DECLINE_PROBATION_PERIOD, std::move (l));
2970 return symbol_type (token::TOKEN_DECLINE_PROBATION_PERIOD, l);
2973#if 201103L <= YY_CPLUSPLUS
2976 make_SERVER_TAG (location_type l)
2978 return symbol_type (token::TOKEN_SERVER_TAG, std::move (l));
2988#if 201103L <= YY_CPLUSPLUS
2991 make_STATISTIC_DEFAULT_SAMPLE_COUNT (location_type l)
2993 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT, std::move (l));
3000 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT, l);
3003#if 201103L <= YY_CPLUSPLUS
3006 make_STATISTIC_DEFAULT_SAMPLE_AGE (location_type l)
3008 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE, std::move (l));
3015 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE, l);
3018#if 201103L <= YY_CPLUSPLUS
3021 make_DDNS_SEND_UPDATES (location_type l)
3023 return symbol_type (token::TOKEN_DDNS_SEND_UPDATES, std::move (l));
3030 return symbol_type (token::TOKEN_DDNS_SEND_UPDATES, l);
3033#if 201103L <= YY_CPLUSPLUS
3036 make_DDNS_OVERRIDE_NO_UPDATE (location_type l)
3038 return symbol_type (token::TOKEN_DDNS_OVERRIDE_NO_UPDATE, std::move (l));
3045 return symbol_type (token::TOKEN_DDNS_OVERRIDE_NO_UPDATE, l);
3048#if 201103L <= YY_CPLUSPLUS
3051 make_DDNS_OVERRIDE_CLIENT_UPDATE (location_type l)
3053 return symbol_type (token::TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE, std::move (l));
3060 return symbol_type (token::TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE, l);
3063#if 201103L <= YY_CPLUSPLUS
3066 make_DDNS_REPLACE_CLIENT_NAME (location_type l)
3068 return symbol_type (token::TOKEN_DDNS_REPLACE_CLIENT_NAME, std::move (l));
3075 return symbol_type (token::TOKEN_DDNS_REPLACE_CLIENT_NAME, l);
3078#if 201103L <= YY_CPLUSPLUS
3081 make_DDNS_GENERATED_PREFIX (location_type l)
3083 return symbol_type (token::TOKEN_DDNS_GENERATED_PREFIX, std::move (l));
3090 return symbol_type (token::TOKEN_DDNS_GENERATED_PREFIX, l);
3093#if 201103L <= YY_CPLUSPLUS
3096 make_DDNS_QUALIFYING_SUFFIX (location_type l)
3098 return symbol_type (token::TOKEN_DDNS_QUALIFYING_SUFFIX, std::move (l));
3105 return symbol_type (token::TOKEN_DDNS_QUALIFYING_SUFFIX, l);
3108#if 201103L <= YY_CPLUSPLUS
3111 make_DDNS_UPDATE_ON_RENEW (location_type l)
3113 return symbol_type (token::TOKEN_DDNS_UPDATE_ON_RENEW, std::move (l));
3120 return symbol_type (token::TOKEN_DDNS_UPDATE_ON_RENEW, l);
3123#if 201103L <= YY_CPLUSPLUS
3126 make_DDNS_USE_CONFLICT_RESOLUTION (location_type l)
3128 return symbol_type (token::TOKEN_DDNS_USE_CONFLICT_RESOLUTION, std::move (l));
3135 return symbol_type (token::TOKEN_DDNS_USE_CONFLICT_RESOLUTION, l);
3138#if 201103L <= YY_CPLUSPLUS
3141 make_DDNS_TTL_PERCENT (location_type l)
3143 return symbol_type (token::TOKEN_DDNS_TTL_PERCENT, std::move (l));
3150 return symbol_type (token::TOKEN_DDNS_TTL_PERCENT, l);
3153#if 201103L <= YY_CPLUSPLUS
3156 make_STORE_EXTENDED_INFO (location_type l)
3158 return symbol_type (token::TOKEN_STORE_EXTENDED_INFO, std::move (l));
3165 return symbol_type (token::TOKEN_STORE_EXTENDED_INFO, l);
3168#if 201103L <= YY_CPLUSPLUS
3171 make_SUBNET4 (location_type l)
3173 return symbol_type (token::TOKEN_SUBNET4, std::move (l));
3183#if 201103L <= YY_CPLUSPLUS
3186 make_SUBNET_4O6_INTERFACE (location_type l)
3188 return symbol_type (token::TOKEN_SUBNET_4O6_INTERFACE, std::move (l));
3195 return symbol_type (token::TOKEN_SUBNET_4O6_INTERFACE, l);
3198#if 201103L <= YY_CPLUSPLUS
3201 make_SUBNET_4O6_INTERFACE_ID (location_type l)
3203 return symbol_type (token::TOKEN_SUBNET_4O6_INTERFACE_ID, std::move (l));
3210 return symbol_type (token::TOKEN_SUBNET_4O6_INTERFACE_ID, l);
3213#if 201103L <= YY_CPLUSPLUS
3216 make_SUBNET_4O6_SUBNET (location_type l)
3218 return symbol_type (token::TOKEN_SUBNET_4O6_SUBNET, std::move (l));
3225 return symbol_type (token::TOKEN_SUBNET_4O6_SUBNET, l);
3228#if 201103L <= YY_CPLUSPLUS
3231 make_OPTION_DEF (location_type l)
3233 return symbol_type (token::TOKEN_OPTION_DEF, std::move (l));
3243#if 201103L <= YY_CPLUSPLUS
3246 make_OPTION_DATA (location_type l)
3248 return symbol_type (token::TOKEN_OPTION_DATA, std::move (l));
3258#if 201103L <= YY_CPLUSPLUS
3261 make_NAME (location_type l)
3263 return symbol_type (token::TOKEN_NAME, std::move (l));
3273#if 201103L <= YY_CPLUSPLUS
3276 make_DATA (location_type l)
3278 return symbol_type (token::TOKEN_DATA, std::move (l));
3288#if 201103L <= YY_CPLUSPLUS
3291 make_CODE (location_type l)
3293 return symbol_type (token::TOKEN_CODE, std::move (l));
3303#if 201103L <= YY_CPLUSPLUS
3306 make_SPACE (location_type l)
3308 return symbol_type (token::TOKEN_SPACE, std::move (l));
3318#if 201103L <= YY_CPLUSPLUS
3321 make_CSV_FORMAT (location_type l)
3323 return symbol_type (token::TOKEN_CSV_FORMAT, std::move (l));
3333#if 201103L <= YY_CPLUSPLUS
3336 make_ALWAYS_SEND (location_type l)
3338 return symbol_type (token::TOKEN_ALWAYS_SEND, std::move (l));
3348#if 201103L <= YY_CPLUSPLUS
3351 make_NEVER_SEND (location_type l)
3353 return symbol_type (token::TOKEN_NEVER_SEND, std::move (l));
3363#if 201103L <= YY_CPLUSPLUS
3366 make_RECORD_TYPES (location_type l)
3368 return symbol_type (token::TOKEN_RECORD_TYPES, std::move (l));
3375 return symbol_type (token::TOKEN_RECORD_TYPES, l);
3378#if 201103L <= YY_CPLUSPLUS
3381 make_ENCAPSULATE (location_type l)
3383 return symbol_type (token::TOKEN_ENCAPSULATE, std::move (l));
3393#if 201103L <= YY_CPLUSPLUS
3396 make_ARRAY (location_type l)
3398 return symbol_type (token::TOKEN_ARRAY, std::move (l));
3408#if 201103L <= YY_CPLUSPLUS
3411 make_PARKED_PACKET_LIMIT (location_type l)
3413 return symbol_type (token::TOKEN_PARKED_PACKET_LIMIT, std::move (l));
3420 return symbol_type (token::TOKEN_PARKED_PACKET_LIMIT, l);
3423#if 201103L <= YY_CPLUSPLUS
3426 make_ALLOCATOR (location_type l)
3428 return symbol_type (token::TOKEN_ALLOCATOR, std::move (l));
3438#if 201103L <= YY_CPLUSPLUS
3441 make_DDNS_CONFLICT_RESOLUTION_MODE (location_type l)
3443 return symbol_type (token::TOKEN_DDNS_CONFLICT_RESOLUTION_MODE, std::move (l));
3450 return symbol_type (token::TOKEN_DDNS_CONFLICT_RESOLUTION_MODE, l);
3453#if 201103L <= YY_CPLUSPLUS
3456 make_CHECK_WITH_DHCID (location_type l)
3458 return symbol_type (token::TOKEN_CHECK_WITH_DHCID, std::move (l));
3465 return symbol_type (token::TOKEN_CHECK_WITH_DHCID, l);
3468#if 201103L <= YY_CPLUSPLUS
3471 make_NO_CHECK_WITH_DHCID (location_type l)
3473 return symbol_type (token::TOKEN_NO_CHECK_WITH_DHCID, std::move (l));
3480 return symbol_type (token::TOKEN_NO_CHECK_WITH_DHCID, l);
3483#if 201103L <= YY_CPLUSPLUS
3486 make_CHECK_EXISTS_WITH_DHCID (location_type l)
3488 return symbol_type (token::TOKEN_CHECK_EXISTS_WITH_DHCID, std::move (l));
3495 return symbol_type (token::TOKEN_CHECK_EXISTS_WITH_DHCID, l);
3498#if 201103L <= YY_CPLUSPLUS
3501 make_NO_CHECK_WITHOUT_DHCID (location_type l)
3503 return symbol_type (token::TOKEN_NO_CHECK_WITHOUT_DHCID, std::move (l));
3510 return symbol_type (token::TOKEN_NO_CHECK_WITHOUT_DHCID, l);
3513#if 201103L <= YY_CPLUSPLUS
3516 make_SHARED_NETWORKS (location_type l)
3518 return symbol_type (token::TOKEN_SHARED_NETWORKS, std::move (l));
3525 return symbol_type (token::TOKEN_SHARED_NETWORKS, l);
3528#if 201103L <= YY_CPLUSPLUS
3531 make_POOLS (location_type l)
3533 return symbol_type (token::TOKEN_POOLS, std::move (l));
3543#if 201103L <= YY_CPLUSPLUS
3546 make_POOL (location_type l)
3548 return symbol_type (token::TOKEN_POOL, std::move (l));
3558#if 201103L <= YY_CPLUSPLUS
3561 make_USER_CONTEXT (location_type l)
3563 return symbol_type (token::TOKEN_USER_CONTEXT, std::move (l));
3570 return symbol_type (token::TOKEN_USER_CONTEXT, l);
3573#if 201103L <= YY_CPLUSPLUS
3576 make_COMMENT (location_type l)
3578 return symbol_type (token::TOKEN_COMMENT, std::move (l));
3588#if 201103L <= YY_CPLUSPLUS
3591 make_SUBNET (location_type l)
3593 return symbol_type (token::TOKEN_SUBNET, std::move (l));
3603#if 201103L <= YY_CPLUSPLUS
3606 make_INTERFACE (location_type l)
3608 return symbol_type (token::TOKEN_INTERFACE, std::move (l));
3618#if 201103L <= YY_CPLUSPLUS
3621 make_ID (location_type l)
3623 return symbol_type (token::TOKEN_ID, std::move (l));
3633#if 201103L <= YY_CPLUSPLUS
3636 make_RESERVATION_MODE (location_type l)
3638 return symbol_type (token::TOKEN_RESERVATION_MODE, std::move (l));
3645 return symbol_type (token::TOKEN_RESERVATION_MODE, l);
3648#if 201103L <= YY_CPLUSPLUS
3651 make_DISABLED (location_type l)
3653 return symbol_type (token::TOKEN_DISABLED, std::move (l));
3663#if 201103L <= YY_CPLUSPLUS
3666 make_OUT_OF_POOL (location_type l)
3668 return symbol_type (token::TOKEN_OUT_OF_POOL, std::move (l));
3678#if 201103L <= YY_CPLUSPLUS
3681 make_GLOBAL (location_type l)
3683 return symbol_type (token::TOKEN_GLOBAL, std::move (l));
3693#if 201103L <= YY_CPLUSPLUS
3696 make_ALL (location_type l)
3698 return symbol_type (token::TOKEN_ALL, std::move (l));
3708#if 201103L <= YY_CPLUSPLUS
3711 make_RESERVATIONS_GLOBAL (location_type l)
3713 return symbol_type (token::TOKEN_RESERVATIONS_GLOBAL, std::move (l));
3720 return symbol_type (token::TOKEN_RESERVATIONS_GLOBAL, l);
3723#if 201103L <= YY_CPLUSPLUS
3726 make_RESERVATIONS_IN_SUBNET (location_type l)
3728 return symbol_type (token::TOKEN_RESERVATIONS_IN_SUBNET, std::move (l));
3735 return symbol_type (token::TOKEN_RESERVATIONS_IN_SUBNET, l);
3738#if 201103L <= YY_CPLUSPLUS
3741 make_RESERVATIONS_OUT_OF_POOL (location_type l)
3743 return symbol_type (token::TOKEN_RESERVATIONS_OUT_OF_POOL, std::move (l));
3750 return symbol_type (token::TOKEN_RESERVATIONS_OUT_OF_POOL, l);
3753#if 201103L <= YY_CPLUSPLUS
3756 make_HOST_RESERVATION_IDENTIFIERS (location_type l)
3758 return symbol_type (token::TOKEN_HOST_RESERVATION_IDENTIFIERS, std::move (l));
3765 return symbol_type (token::TOKEN_HOST_RESERVATION_IDENTIFIERS, l);
3768#if 201103L <= YY_CPLUSPLUS
3771 make_CLIENT_CLASSES (location_type l)
3773 return symbol_type (token::TOKEN_CLIENT_CLASSES, std::move (l));
3780 return symbol_type (token::TOKEN_CLIENT_CLASSES, l);
3783#if 201103L <= YY_CPLUSPLUS
3786 make_REQUIRE_CLIENT_CLASSES (location_type l)
3788 return symbol_type (token::TOKEN_REQUIRE_CLIENT_CLASSES, std::move (l));
3795 return symbol_type (token::TOKEN_REQUIRE_CLIENT_CLASSES, l);
3798#if 201103L <= YY_CPLUSPLUS
3801 make_TEST (location_type l)
3803 return symbol_type (token::TOKEN_TEST, std::move (l));
3813#if 201103L <= YY_CPLUSPLUS
3816 make_TEMPLATE_TEST (location_type l)
3818 return symbol_type (token::TOKEN_TEMPLATE_TEST, std::move (l));
3825 return symbol_type (token::TOKEN_TEMPLATE_TEST, l);
3828#if 201103L <= YY_CPLUSPLUS
3831 make_ONLY_IF_REQUIRED (location_type l)
3833 return symbol_type (token::TOKEN_ONLY_IF_REQUIRED, std::move (l));
3840 return symbol_type (token::TOKEN_ONLY_IF_REQUIRED, l);
3843#if 201103L <= YY_CPLUSPLUS
3846 make_CLIENT_CLASS (location_type l)
3848 return symbol_type (token::TOKEN_CLIENT_CLASS, std::move (l));
3855 return symbol_type (token::TOKEN_CLIENT_CLASS, l);
3858#if 201103L <= YY_CPLUSPLUS
3861 make_POOL_ID (location_type l)
3863 return symbol_type (token::TOKEN_POOL_ID, std::move (l));
3873#if 201103L <= YY_CPLUSPLUS
3876 make_RESERVATIONS (location_type l)
3878 return symbol_type (token::TOKEN_RESERVATIONS, std::move (l));
3885 return symbol_type (token::TOKEN_RESERVATIONS, l);
3888#if 201103L <= YY_CPLUSPLUS
3891 make_DUID (location_type l)
3893 return symbol_type (token::TOKEN_DUID, std::move (l));
3903#if 201103L <= YY_CPLUSPLUS
3906 make_HW_ADDRESS (location_type l)
3908 return symbol_type (token::TOKEN_HW_ADDRESS, std::move (l));
3918#if 201103L <= YY_CPLUSPLUS
3921 make_CIRCUIT_ID (location_type l)
3923 return symbol_type (token::TOKEN_CIRCUIT_ID, std::move (l));
3933#if 201103L <= YY_CPLUSPLUS
3936 make_CLIENT_ID (location_type l)
3938 return symbol_type (token::TOKEN_CLIENT_ID, std::move (l));
3948#if 201103L <= YY_CPLUSPLUS
3951 make_HOSTNAME (location_type l)
3953 return symbol_type (token::TOKEN_HOSTNAME, std::move (l));
3963#if 201103L <= YY_CPLUSPLUS
3966 make_FLEX_ID (location_type l)
3968 return symbol_type (token::TOKEN_FLEX_ID, std::move (l));
3978#if 201103L <= YY_CPLUSPLUS
3981 make_RELAY (location_type l)
3983 return symbol_type (token::TOKEN_RELAY, std::move (l));
3993#if 201103L <= YY_CPLUSPLUS
3996 make_IP_ADDRESS (location_type l)
3998 return symbol_type (token::TOKEN_IP_ADDRESS, std::move (l));
4008#if 201103L <= YY_CPLUSPLUS
4011 make_IP_ADDRESSES (location_type l)
4013 return symbol_type (token::TOKEN_IP_ADDRESSES, std::move (l));
4020 return symbol_type (token::TOKEN_IP_ADDRESSES, l);
4023#if 201103L <= YY_CPLUSPLUS
4026 make_HOOKS_LIBRARIES (location_type l)
4028 return symbol_type (token::TOKEN_HOOKS_LIBRARIES, std::move (l));
4035 return symbol_type (token::TOKEN_HOOKS_LIBRARIES, l);
4038#if 201103L <= YY_CPLUSPLUS
4041 make_LIBRARY (location_type l)
4043 return symbol_type (token::TOKEN_LIBRARY, std::move (l));
4053#if 201103L <= YY_CPLUSPLUS
4056 make_PARAMETERS (location_type l)
4058 return symbol_type (token::TOKEN_PARAMETERS, std::move (l));
4068#if 201103L <= YY_CPLUSPLUS
4071 make_EXPIRED_LEASES_PROCESSING (location_type l)
4073 return symbol_type (token::TOKEN_EXPIRED_LEASES_PROCESSING, std::move (l));
4080 return symbol_type (token::TOKEN_EXPIRED_LEASES_PROCESSING, l);
4083#if 201103L <= YY_CPLUSPLUS
4086 make_RECLAIM_TIMER_WAIT_TIME (location_type l)
4088 return symbol_type (token::TOKEN_RECLAIM_TIMER_WAIT_TIME, std::move (l));
4095 return symbol_type (token::TOKEN_RECLAIM_TIMER_WAIT_TIME, l);
4098#if 201103L <= YY_CPLUSPLUS
4101 make_FLUSH_RECLAIMED_TIMER_WAIT_TIME (location_type l)
4103 return symbol_type (token::TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME, std::move (l));
4110 return symbol_type (token::TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME, l);
4113#if 201103L <= YY_CPLUSPLUS
4116 make_HOLD_RECLAIMED_TIME (location_type l)
4118 return symbol_type (token::TOKEN_HOLD_RECLAIMED_TIME, std::move (l));
4125 return symbol_type (token::TOKEN_HOLD_RECLAIMED_TIME, l);
4128#if 201103L <= YY_CPLUSPLUS
4131 make_MAX_RECLAIM_LEASES (location_type l)
4133 return symbol_type (token::TOKEN_MAX_RECLAIM_LEASES, std::move (l));
4140 return symbol_type (token::TOKEN_MAX_RECLAIM_LEASES, l);
4143#if 201103L <= YY_CPLUSPLUS
4146 make_MAX_RECLAIM_TIME (location_type l)
4148 return symbol_type (token::TOKEN_MAX_RECLAIM_TIME, std::move (l));
4155 return symbol_type (token::TOKEN_MAX_RECLAIM_TIME, l);
4158#if 201103L <= YY_CPLUSPLUS
4161 make_UNWARNED_RECLAIM_CYCLES (location_type l)
4163 return symbol_type (token::TOKEN_UNWARNED_RECLAIM_CYCLES, std::move (l));
4170 return symbol_type (token::TOKEN_UNWARNED_RECLAIM_CYCLES, l);
4173#if 201103L <= YY_CPLUSPLUS
4176 make_DHCP4O6_PORT (location_type l)
4178 return symbol_type (token::TOKEN_DHCP4O6_PORT, std::move (l));
4185 return symbol_type (token::TOKEN_DHCP4O6_PORT, l);
4188#if 201103L <= YY_CPLUSPLUS
4191 make_DHCP_MULTI_THREADING (location_type l)
4193 return symbol_type (token::TOKEN_DHCP_MULTI_THREADING, std::move (l));
4200 return symbol_type (token::TOKEN_DHCP_MULTI_THREADING, l);
4203#if 201103L <= YY_CPLUSPLUS
4206 make_ENABLE_MULTI_THREADING (location_type l)
4208 return symbol_type (token::TOKEN_ENABLE_MULTI_THREADING, std::move (l));
4215 return symbol_type (token::TOKEN_ENABLE_MULTI_THREADING, l);
4218#if 201103L <= YY_CPLUSPLUS
4221 make_THREAD_POOL_SIZE (location_type l)
4223 return symbol_type (token::TOKEN_THREAD_POOL_SIZE, std::move (l));
4230 return symbol_type (token::TOKEN_THREAD_POOL_SIZE, l);
4233#if 201103L <= YY_CPLUSPLUS
4236 make_PACKET_QUEUE_SIZE (location_type l)
4238 return symbol_type (token::TOKEN_PACKET_QUEUE_SIZE, std::move (l));
4245 return symbol_type (token::TOKEN_PACKET_QUEUE_SIZE, l);
4248#if 201103L <= YY_CPLUSPLUS
4251 make_CONTROL_SOCKET (location_type l)
4253 return symbol_type (token::TOKEN_CONTROL_SOCKET, std::move (l));
4260 return symbol_type (token::TOKEN_CONTROL_SOCKET, l);
4263#if 201103L <= YY_CPLUSPLUS
4266 make_SOCKET_TYPE (location_type l)
4268 return symbol_type (token::TOKEN_SOCKET_TYPE, std::move (l));
4278#if 201103L <= YY_CPLUSPLUS
4281 make_SOCKET_NAME (location_type l)
4283 return symbol_type (token::TOKEN_SOCKET_NAME, std::move (l));
4293#if 201103L <= YY_CPLUSPLUS
4296 make_DHCP_QUEUE_CONTROL (location_type l)
4298 return symbol_type (token::TOKEN_DHCP_QUEUE_CONTROL, std::move (l));
4305 return symbol_type (token::TOKEN_DHCP_QUEUE_CONTROL, l);
4308#if 201103L <= YY_CPLUSPLUS
4311 make_ENABLE_QUEUE (location_type l)
4313 return symbol_type (token::TOKEN_ENABLE_QUEUE, std::move (l));
4320 return symbol_type (token::TOKEN_ENABLE_QUEUE, l);
4323#if 201103L <= YY_CPLUSPLUS
4326 make_QUEUE_TYPE (location_type l)
4328 return symbol_type (token::TOKEN_QUEUE_TYPE, std::move (l));
4338#if 201103L <= YY_CPLUSPLUS
4341 make_CAPACITY (location_type l)
4343 return symbol_type (token::TOKEN_CAPACITY, std::move (l));
4353#if 201103L <= YY_CPLUSPLUS
4356 make_DHCP_DDNS (location_type l)
4358 return symbol_type (token::TOKEN_DHCP_DDNS, std::move (l));
4368#if 201103L <= YY_CPLUSPLUS
4371 make_ENABLE_UPDATES (location_type l)
4373 return symbol_type (token::TOKEN_ENABLE_UPDATES, std::move (l));
4380 return symbol_type (token::TOKEN_ENABLE_UPDATES, l);
4383#if 201103L <= YY_CPLUSPLUS
4386 make_QUALIFYING_SUFFIX (location_type l)
4388 return symbol_type (token::TOKEN_QUALIFYING_SUFFIX, std::move (l));
4395 return symbol_type (token::TOKEN_QUALIFYING_SUFFIX, l);
4398#if 201103L <= YY_CPLUSPLUS
4401 make_SERVER_IP (location_type l)
4403 return symbol_type (token::TOKEN_SERVER_IP, std::move (l));
4413#if 201103L <= YY_CPLUSPLUS
4416 make_SERVER_PORT (location_type l)
4418 return symbol_type (token::TOKEN_SERVER_PORT, std::move (l));
4428#if 201103L <= YY_CPLUSPLUS
4431 make_SENDER_IP (location_type l)
4433 return symbol_type (token::TOKEN_SENDER_IP, std::move (l));
4443#if 201103L <= YY_CPLUSPLUS
4446 make_SENDER_PORT (location_type l)
4448 return symbol_type (token::TOKEN_SENDER_PORT, std::move (l));
4458#if 201103L <= YY_CPLUSPLUS
4461 make_MAX_QUEUE_SIZE (location_type l)
4463 return symbol_type (token::TOKEN_MAX_QUEUE_SIZE, std::move (l));
4470 return symbol_type (token::TOKEN_MAX_QUEUE_SIZE, l);
4473#if 201103L <= YY_CPLUSPLUS
4476 make_NCR_PROTOCOL (location_type l)
4478 return symbol_type (token::TOKEN_NCR_PROTOCOL, std::move (l));
4485 return symbol_type (token::TOKEN_NCR_PROTOCOL, l);
4488#if 201103L <= YY_CPLUSPLUS
4491 make_NCR_FORMAT (location_type l)
4493 return symbol_type (token::TOKEN_NCR_FORMAT, std::move (l));
4503#if 201103L <= YY_CPLUSPLUS
4506 make_OVERRIDE_NO_UPDATE (location_type l)
4508 return symbol_type (token::TOKEN_OVERRIDE_NO_UPDATE, std::move (l));
4515 return symbol_type (token::TOKEN_OVERRIDE_NO_UPDATE, l);
4518#if 201103L <= YY_CPLUSPLUS
4521 make_OVERRIDE_CLIENT_UPDATE (location_type l)
4523 return symbol_type (token::TOKEN_OVERRIDE_CLIENT_UPDATE, std::move (l));
4530 return symbol_type (token::TOKEN_OVERRIDE_CLIENT_UPDATE, l);
4533#if 201103L <= YY_CPLUSPLUS
4536 make_REPLACE_CLIENT_NAME (location_type l)
4538 return symbol_type (token::TOKEN_REPLACE_CLIENT_NAME, std::move (l));
4545 return symbol_type (token::TOKEN_REPLACE_CLIENT_NAME, l);
4548#if 201103L <= YY_CPLUSPLUS
4551 make_GENERATED_PREFIX (location_type l)
4553 return symbol_type (token::TOKEN_GENERATED_PREFIX, std::move (l));
4560 return symbol_type (token::TOKEN_GENERATED_PREFIX, l);
4563#if 201103L <= YY_CPLUSPLUS
4566 make_TCP (location_type l)
4568 return symbol_type (token::TOKEN_TCP, std::move (l));
4578#if 201103L <= YY_CPLUSPLUS
4581 make_JSON (location_type l)
4583 return symbol_type (token::TOKEN_JSON, std::move (l));
4593#if 201103L <= YY_CPLUSPLUS
4596 make_WHEN_PRESENT (location_type l)
4598 return symbol_type (token::TOKEN_WHEN_PRESENT, std::move (l));
4605 return symbol_type (token::TOKEN_WHEN_PRESENT, l);
4608#if 201103L <= YY_CPLUSPLUS
4611 make_NEVER (location_type l)
4613 return symbol_type (token::TOKEN_NEVER, std::move (l));
4623#if 201103L <= YY_CPLUSPLUS
4626 make_ALWAYS (location_type l)
4628 return symbol_type (token::TOKEN_ALWAYS, std::move (l));
4638#if 201103L <= YY_CPLUSPLUS
4641 make_WHEN_NOT_PRESENT (location_type l)
4643 return symbol_type (token::TOKEN_WHEN_NOT_PRESENT, std::move (l));
4650 return symbol_type (token::TOKEN_WHEN_NOT_PRESENT, l);
4653#if 201103L <= YY_CPLUSPLUS
4656 make_HOSTNAME_CHAR_SET (location_type l)
4658 return symbol_type (token::TOKEN_HOSTNAME_CHAR_SET, std::move (l));
4665 return symbol_type (token::TOKEN_HOSTNAME_CHAR_SET, l);
4668#if 201103L <= YY_CPLUSPLUS
4671 make_HOSTNAME_CHAR_REPLACEMENT (location_type l)
4673 return symbol_type (token::TOKEN_HOSTNAME_CHAR_REPLACEMENT, std::move (l));
4680 return symbol_type (token::TOKEN_HOSTNAME_CHAR_REPLACEMENT, l);
4683#if 201103L <= YY_CPLUSPLUS
4686 make_EARLY_GLOBAL_RESERVATIONS_LOOKUP (location_type l)
4688 return symbol_type (token::TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP, std::move (l));
4695 return symbol_type (token::TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP, l);
4698#if 201103L <= YY_CPLUSPLUS
4701 make_IP_RESERVATIONS_UNIQUE (location_type l)
4703 return symbol_type (token::TOKEN_IP_RESERVATIONS_UNIQUE, std::move (l));
4710 return symbol_type (token::TOKEN_IP_RESERVATIONS_UNIQUE, l);
4713#if 201103L <= YY_CPLUSPLUS
4716 make_RESERVATIONS_LOOKUP_FIRST (location_type l)
4718 return symbol_type (token::TOKEN_RESERVATIONS_LOOKUP_FIRST, std::move (l));
4725 return symbol_type (token::TOKEN_RESERVATIONS_LOOKUP_FIRST, l);
4728#if 201103L <= YY_CPLUSPLUS
4731 make_LOGGERS (location_type l)
4733 return symbol_type (token::TOKEN_LOGGERS, std::move (l));
4743#if 201103L <= YY_CPLUSPLUS
4746 make_OUTPUT_OPTIONS (location_type l)
4748 return symbol_type (token::TOKEN_OUTPUT_OPTIONS, std::move (l));
4755 return symbol_type (token::TOKEN_OUTPUT_OPTIONS, l);
4758#if 201103L <= YY_CPLUSPLUS
4761 make_OUTPUT (location_type l)
4763 return symbol_type (token::TOKEN_OUTPUT, std::move (l));
4773#if 201103L <= YY_CPLUSPLUS
4776 make_DEBUGLEVEL (location_type l)
4778 return symbol_type (token::TOKEN_DEBUGLEVEL, std::move (l));
4788#if 201103L <= YY_CPLUSPLUS
4791 make_SEVERITY (location_type l)
4793 return symbol_type (token::TOKEN_SEVERITY, std::move (l));
4803#if 201103L <= YY_CPLUSPLUS
4806 make_FLUSH (location_type l)
4808 return symbol_type (token::TOKEN_FLUSH, std::move (l));
4818#if 201103L <= YY_CPLUSPLUS
4821 make_MAXSIZE (location_type l)
4823 return symbol_type (token::TOKEN_MAXSIZE, std::move (l));
4833#if 201103L <= YY_CPLUSPLUS
4836 make_MAXVER (location_type l)
4838 return symbol_type (token::TOKEN_MAXVER, std::move (l));
4848#if 201103L <= YY_CPLUSPLUS
4851 make_PATTERN (location_type l)
4853 return symbol_type (token::TOKEN_PATTERN, std::move (l));
4863#if 201103L <= YY_CPLUSPLUS
4866 make_COMPATIBILITY (location_type l)
4868 return symbol_type (token::TOKEN_COMPATIBILITY, std::move (l));
4875 return symbol_type (token::TOKEN_COMPATIBILITY, l);
4878#if 201103L <= YY_CPLUSPLUS
4881 make_LENIENT_OPTION_PARSING (location_type l)
4883 return symbol_type (token::TOKEN_LENIENT_OPTION_PARSING, std::move (l));
4890 return symbol_type (token::TOKEN_LENIENT_OPTION_PARSING, l);
4893#if 201103L <= YY_CPLUSPLUS
4896 make_IGNORE_DHCP_SERVER_ID (location_type l)
4898 return symbol_type (token::TOKEN_IGNORE_DHCP_SERVER_ID, std::move (l));
4905 return symbol_type (token::TOKEN_IGNORE_DHCP_SERVER_ID, l);
4908#if 201103L <= YY_CPLUSPLUS
4911 make_IGNORE_RAI_LINK_SEL (location_type l)
4913 return symbol_type (token::TOKEN_IGNORE_RAI_LINK_SEL, std::move (l));
4920 return symbol_type (token::TOKEN_IGNORE_RAI_LINK_SEL, l);
4923#if 201103L <= YY_CPLUSPLUS
4926 make_EXCLUDE_FIRST_LAST_24 (location_type l)
4928 return symbol_type (token::TOKEN_EXCLUDE_FIRST_LAST_24, std::move (l));
4935 return symbol_type (token::TOKEN_EXCLUDE_FIRST_LAST_24, l);
4938#if 201103L <= YY_CPLUSPLUS
4941 make_TOPLEVEL_JSON (location_type l)
4943 return symbol_type (token::TOKEN_TOPLEVEL_JSON, std::move (l));
4950 return symbol_type (token::TOKEN_TOPLEVEL_JSON, l);
4953#if 201103L <= YY_CPLUSPLUS
4956 make_TOPLEVEL_DHCP4 (location_type l)
4958 return symbol_type (token::TOKEN_TOPLEVEL_DHCP4, std::move (l));
4965 return symbol_type (token::TOKEN_TOPLEVEL_DHCP4, l);
4968#if 201103L <= YY_CPLUSPLUS
4971 make_SUB_DHCP4 (location_type l)
4973 return symbol_type (token::TOKEN_SUB_DHCP4, std::move (l));
4983#if 201103L <= YY_CPLUSPLUS
4986 make_SUB_INTERFACES4 (location_type l)
4988 return symbol_type (token::TOKEN_SUB_INTERFACES4, std::move (l));
4995 return symbol_type (token::TOKEN_SUB_INTERFACES4, l);
4998#if 201103L <= YY_CPLUSPLUS
5001 make_SUB_SUBNET4 (location_type l)
5003 return symbol_type (token::TOKEN_SUB_SUBNET4, std::move (l));
5013#if 201103L <= YY_CPLUSPLUS
5016 make_SUB_POOL4 (location_type l)
5018 return symbol_type (token::TOKEN_SUB_POOL4, std::move (l));
5028#if 201103L <= YY_CPLUSPLUS
5031 make_SUB_RESERVATION (location_type l)
5033 return symbol_type (token::TOKEN_SUB_RESERVATION, std::move (l));
5040 return symbol_type (token::TOKEN_SUB_RESERVATION, l);
5043#if 201103L <= YY_CPLUSPLUS
5046 make_SUB_OPTION_DEFS (location_type l)
5048 return symbol_type (token::TOKEN_SUB_OPTION_DEFS, std::move (l));
5055 return symbol_type (token::TOKEN_SUB_OPTION_DEFS, l);
5058#if 201103L <= YY_CPLUSPLUS
5061 make_SUB_OPTION_DEF (location_type l)
5063 return symbol_type (token::TOKEN_SUB_OPTION_DEF, std::move (l));
5070 return symbol_type (token::TOKEN_SUB_OPTION_DEF, l);
5073#if 201103L <= YY_CPLUSPLUS
5076 make_SUB_OPTION_DATA (location_type l)
5078 return symbol_type (token::TOKEN_SUB_OPTION_DATA, std::move (l));
5085 return symbol_type (token::TOKEN_SUB_OPTION_DATA, l);
5088#if 201103L <= YY_CPLUSPLUS
5091 make_SUB_HOOKS_LIBRARY (location_type l)
5093 return symbol_type (token::TOKEN_SUB_HOOKS_LIBRARY, std::move (l));
5100 return symbol_type (token::TOKEN_SUB_HOOKS_LIBRARY, l);
5103#if 201103L <= YY_CPLUSPLUS
5106 make_SUB_DHCP_DDNS (location_type l)
5108 return symbol_type (token::TOKEN_SUB_DHCP_DDNS, std::move (l));
5115 return symbol_type (token::TOKEN_SUB_DHCP_DDNS, l);
5118#if 201103L <= YY_CPLUSPLUS
5121 make_SUB_CONFIG_CONTROL (location_type l)
5123 return symbol_type (token::TOKEN_SUB_CONFIG_CONTROL, std::move (l));
5130 return symbol_type (token::TOKEN_SUB_CONFIG_CONTROL, l);
5133#if 201103L <= YY_CPLUSPLUS
5136 make_STRING (std::string v, location_type l)
5138 return symbol_type (token::TOKEN_STRING, std::move (v), std::move (l));
5148#if 201103L <= YY_CPLUSPLUS
5151 make_INTEGER (int64_t v, location_type l)
5153 return symbol_type (token::TOKEN_INTEGER, std::move (v), std::move (l));
5163#if 201103L <= YY_CPLUSPLUS
5166 make_FLOAT (
double v, location_type l)
5168 return symbol_type (token::TOKEN_FLOAT, std::move (v), std::move (l));
5178#if 201103L <= YY_CPLUSPLUS
5181 make_BOOLEAN (
bool v, location_type l)
5183 return symbol_type (token::TOKEN_BOOLEAN, std::move (v), std::move (l));
5214#if YY_CPLUSPLUS < 201103L
5223 typedef short state_type;
5226 int yy_syntax_error_arguments_ (
const context& yyctx,
5227 symbol_kind_type yyarg[],
int yyargn)
const;
5231 virtual std::string yysyntax_error_ (
const context& yyctx)
const;
5235 static state_type yy_lr_goto_state_ (state_type yystate,
int yysym);
5239 static bool yy_pact_value_is_default_ (
int yyvalue)
YY_NOEXCEPT;
5243 static bool yy_table_value_is_error_ (
int yyvalue)
YY_NOEXCEPT;
5245 static const short yypact_ninf_;
5246 static const signed char yytable_ninf_;
5251 static symbol_kind_type yytranslate_ (
int t)
YY_NOEXCEPT;
5254 static std::string yytnamerr_ (
const char *yystr);
5257 static const char*
const yytname_[];
5263 static const short yypact_[];
5268 static const short yydefact_[];
5271 static const short yypgoto_[];
5274 static const short yydefgoto_[];
5279 static const short yytable_[];
5281 static const short yycheck_[];
5285 static const short yystos_[];
5288 static const short yyr1_[];
5291 static const signed char yyr2_[];
5296 static const short yyrline_[];
5298 virtual void yy_reduce_print_ (
int r)
const;
5300 virtual void yy_stack_print_ ()
const;
5305 std::ostream* yycdebug_;
5310 template <
typename Base>
5311 void yy_print_ (std::ostream& yyo,
const basic_symbol<Base>& yysym)
const;
5318 template <
typename Base>
5319 void yy_destroy_ (
const char* yymsg, basic_symbol<Base>& yysym)
const;
5329 typedef state_type kind_type;
5341 void move (by_state& that);
5349 enum { empty_state = 0 };
5357 struct stack_symbol_type : basic_symbol<by_state>
5360 typedef basic_symbol<by_state> super_type;
5362 stack_symbol_type ();
5364 stack_symbol_type (
YY_RVREF (stack_symbol_type) that);
5366 stack_symbol_type (state_type s,
YY_MOVE_REF (symbol_type) sym);
5367#if YY_CPLUSPLUS < 201103L
5370 stack_symbol_type& operator= (stack_symbol_type& that);
5374 stack_symbol_type& operator= (
const stack_symbol_type& that);
5379 template <
typename T,
typename S = std::vector<T> >
5384 typedef typename S::iterator iterator;
5385 typedef typename S::const_iterator const_iterator;
5386 typedef typename S::size_type size_type;
5387 typedef typename std::ptrdiff_t index_type;
5393#if 201103L <= YY_CPLUSPLUS
5395 stack (
const stack&) =
delete;
5397 stack& operator= (
const stack&) =
delete;
5404 operator[] (index_type i)
const
5406 return seq_[size_type (size () - 1 - i)];
5413 operator[] (index_type i)
5415 return seq_[size_type (size () - 1 - i)];
5424 seq_.push_back (T ());
5425 operator[] (0).move (t);
5447 return index_type (seq_.size ());
5454 return seq_.begin ();
5474 operator[] (index_type i)
const
5476 return stack_[range_ - i];
5480 const stack& stack_;
5485#if YY_CPLUSPLUS < 201103L
5487 stack (
const stack&);
5489 stack& operator= (
const stack&);
5497 typedef stack<stack_symbol_type> stack_type;
5500 stack_type yystack_;
5507 void yypush_ (
const char* m,
YY_MOVE_REF (stack_symbol_type) sym);
5515 void yypush_ (
const char* m, state_type s,
YY_MOVE_REF (symbol_type) sym);
5544 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5545 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5546 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5547 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5548 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5549 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5550 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5551 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5552 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5553 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5554 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5555 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5556 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5557 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5558 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5559 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5560 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5561 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5562 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5563 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5564 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5565 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5566 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5567 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5568 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5569 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
5570 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
5571 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
5572 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
5573 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5574 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
5575 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
5576 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
5577 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
5578 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
5579 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
5580 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
5581 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
5582 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
5583 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
5584 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
5585 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
5586 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
5587 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
5588 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
5589 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
5590 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
5591 215, 216, 217, 218, 219, 220, 221, 222, 223, 224
5594 const int code_max = 479;
5598 else if (t <= code_max)
5605 template <
typename Base>
5611 switch (this->kind ())
5651 template <
typename Base>
5655 return this->kind ();
5659 template <
typename Base>
5666 template <
typename Base>
5670 super_type::move (s);
5671 switch (this->kind ())
5715#if 201103L <= YY_CPLUSPLUS
5718 : kind_ (that.kind_)
5726 : kind_ (that.kind_)
5731 : kind_ (yytranslate_ (t))
5763 return this->kind ();
5767#line 14 "dhcp4_parser.yy"
5769#line 5770 "dhcp4_parser.h"
#define YY_MOVE_REF(Type)
#define YY_ATTRIBUTE_PURE
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.
const T & as() const YY_NOEXCEPT
Const accessor to a built T (for printer).
void swap(self_type &that) YY_NOEXCEPT
Swap the content with that, of same type.
void move(self_type &that)
Move the content of that to this.
T & emplace(const T &t)
Instantiate a T in here from t.
void destroy()
Destroy the stored T.
value_type() YY_NOEXCEPT
Empty construction.
void copy(const self_type &that)
Copy the content of that to this.
T & emplace()
Instantiate an empty T in here.
value_type(YY_RVREF(T) t)
Construct and fill.
T & build(const T &t)
Instantiate a T in here from t.
T & as() YY_NOEXCEPT
Accessor to a built T.
value_type self_type
Type of *this.
char yyraw_[size]
A buffer large enough to store any of the semantic values.
T & build()
Instantiate an empty T in here.
long double yyalign_me_
Strongest alignment constraints.
~value_type() YY_NOEXCEPT
Destruction, allowed only if empty.
static symbol_type make_SAME_AS_INBOUND(const location_type &l)
static symbol_type make_SOCKET_NAME(const location_type &l)
static symbol_type make_PERSIST(const location_type &l)
static symbol_type make_FLUSH_RECLAIMED_TIMER_WAIT_TIME(const location_type &l)
static symbol_type make_SUBNET_4O6_INTERFACE_ID(const location_type &l)
static symbol_type make_SUB_INTERFACES4(const location_type &l)
static symbol_type make_RETRY_ON_STARTUP(const location_type &l)
static symbol_type make_END(const location_type &l)
static symbol_type make_STATISTIC_DEFAULT_SAMPLE_COUNT(const location_type &l)
static symbol_type make_IP_RESERVATIONS_UNIQUE(const location_type &l)
static symbol_type make_CONTROL_SOCKET(const location_type &l)
static symbol_type make_THREAD_POOL_SIZE(const location_type &l)
static symbol_type make_GENERATED_PREFIX(const location_type &l)
static symbol_type make_SUB_OPTION_DATA(const location_type &l)
static symbol_type make_NAME(const location_type &l)
static symbol_type make_MATCH_CLIENT_ID(const location_type &l)
static symbol_type make_MAX_RECLAIM_LEASES(const location_type &l)
static symbol_type make_STORE_EXTENDED_INFO(const location_type &l)
static symbol_type make_OVERRIDE_CLIENT_UPDATE(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_MAX_RETRIES(const location_type &l)
static symbol_type make_LFC_INTERVAL(const location_type &l)
static symbol_type make_HOLD_RECLAIMED_TIME(const location_type &l)
static symbol_type make_MEMFILE(const location_type &l)
static symbol_type make_CONNECT_TIMEOUT(const location_type &l)
static symbol_type make_OPTION_DEF(const location_type &l)
static symbol_type make_NULL_TYPE(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_REQUIRE_ALL(const location_type &l)
static symbol_type make_OUTPUT_OPTIONS(const location_type &l)
static symbol_type make_ALL(const location_type &l)
static symbol_type make_SENDER_PORT(const location_type &l)
static symbol_type make_CACHE_MAX_AGE(const location_type &l)
static symbol_type make_NCR_PROTOCOL(const location_type &l)
static symbol_type make_NO_CHECK_WITH_DHCID(const location_type &l)
static symbol_type make_CALCULATE_TEE_TIMES(const location_type &l)
static symbol_type make_RE_DETECT(const location_type &l)
static symbol_type make_RELAY(const location_type &l)
static symbol_type make_POOL_ID(const location_type &l)
static symbol_type make_MAX_VALID_LIFETIME(const location_type &l)
static symbol_type make_SERVER_HOSTNAME(const location_type &l)
static symbol_type make_IGNORE_DHCP_SERVER_ID(const location_type &l)
static symbol_type make_KEY_FILE(const location_type &l)
static symbol_type make_TEST(const location_type &l)
static symbol_type make_RECONNECT_WAIT_TIME(const location_type &l)
static symbol_type make_DHCP_MULTI_THREADING(const location_type &l)
static symbol_type make_ARRAY(const location_type &l)
static symbol_type make_SOCKET_TYPE(const location_type &l)
static symbol_type make_CHECK_EXISTS_WITH_DHCID(const location_type &l)
static symbol_type make_SPACE(const location_type &l)
static symbol_type make_HW_ADDRESS(const location_type &l)
static symbol_type make_USE_ROUTING(const location_type &l)
static symbol_type make_MAX_RECLAIM_TIME(const location_type &l)
static symbol_type make_HOSTNAME_CHAR_REPLACEMENT(const location_type &l)
static symbol_type make_VALID_LIFETIME(const location_type &l)
static symbol_type make_MAXVER(const location_type &l)
static symbol_type make_BOOLEAN(const bool &v, const location_type &l)
static symbol_type make_DDNS_TTL_PERCENT(const location_type &l)
static symbol_type make_INTERFACE(const location_type &l)
static symbol_type make_REBIND_TIMER(const location_type &l)
static symbol_type make_BOOT_FILE_NAME(const location_type &l)
static symbol_type make_SEVERITY(const location_type &l)
static symbol_type make_RESERVATIONS_IN_SUBNET(const location_type &l)
static symbol_type make_IP_ADDRESSES(const location_type &l)
static symbol_type make_DDNS_UPDATE_ON_RENEW(const location_type &l)
static symbol_type make_INTERFACES_CONFIG(const location_type &l)
static symbol_type make_UDP(const location_type &l)
static symbol_type make_TCP(const location_type &l)
static symbol_type make_SUBNET4(const location_type &l)
static symbol_type make_COLON(const location_type &l)
static symbol_type make_SERVE_RETRY_CONTINUE(const location_type &l)
static symbol_type make_HOSTS_DATABASES(const location_type &l)
token_kind_type token_type
Backward compatibility alias (Bison 3.6).
static symbol_type make_SUB_DHCP_DDNS(const location_type &l)
static symbol_type make_DDNS_SEND_UPDATES(const location_type &l)
static symbol_type make_OVERRIDE_NO_UPDATE(const location_type &l)
static symbol_type make_LENIENT_OPTION_PARSING(const location_type &l)
static symbol_type make_MIN_VALID_LIFETIME(const location_type &l)
static symbol_type make_DDNS_QUALIFYING_SUFFIX(const location_type &l)
static symbol_type make_DECLINE_PROBATION_PERIOD(const location_type &l)
static symbol_type make_IP_ADDRESS(const location_type &l)
static symbol_type make_SUB_HOOKS_LIBRARY(const location_type &l)
static symbol_type make_ENABLE_QUEUE(const location_type &l)
static symbol_type make_SUBNET(const location_type &l)
static symbol_type make_FLOAT(const double &v, const location_type &l)
static symbol_type make_HOSTNAME(const location_type &l)
static symbol_type make_DDNS_REPLACE_CLIENT_NAME(const location_type &l)
static symbol_type make_EXCLUDE_FIRST_LAST_24(const location_type &l)
static symbol_type make_SUB_RESERVATION(const location_type &l)
static symbol_type make_SUB_OPTION_DEFS(const location_type &l)
static symbol_type make_OPTION_DATA(const location_type &l)
static symbol_type make_TEMPLATE_TEST(const location_type &l)
static symbol_type make_EARLY_GLOBAL_RESERVATIONS_LOOKUP(const location_type &l)
static symbol_type make_POSTGRESQL(const location_type &l)
static symbol_type make_LOGGERS(const location_type &l)
static symbol_type make_MYSQL(const location_type &l)
static symbol_type make_UNWARNED_RECLAIM_CYCLES(const location_type &l)
static symbol_type make_LEASE_CHECKS(const location_type &l)
static symbol_type make_USER(const location_type &l)
static symbol_type make_GLOBAL(const location_type &l)
token::token_kind_type token_kind_type
Token kind, as returned by yylex.
static symbol_type make_SERVER_IP(const location_type &l)
static symbol_type make_IGNORE_RAI_LINK_SEL(const location_type &l)
static symbol_type make_OUT_OF_POOL(const location_type &l)
static symbol_type make_HOSTS_DATABASE(const location_type &l)
static symbol_type make_QUEUE_TYPE(const location_type &l)
static symbol_type make_T1_PERCENT(const location_type &l)
static symbol_type make_RECLAIM_TIMER_WAIT_TIME(const location_type &l)
static symbol_type make_STOP_RETRY_EXIT(const location_type &l)
static symbol_type make_DDNS_OVERRIDE_NO_UPDATE(const location_type &l)
static symbol_type make_ALWAYS_SEND(const location_type &l)
static symbol_type make_PARSER4_UNDEF(const location_type &l)
static symbol_type make_CERT_FILE(const location_type &l)
static symbol_type make_ECHO_CLIENT_ID(const location_type &l)
static symbol_type make_CHECK_WITH_DHCID(const location_type &l)
static symbol_type make_CIPHER_LIST(const location_type &l)
static symbol_type make_POOL(const location_type &l)
static symbol_type make_DATA(const location_type &l)
location location_type
Symbol locations.
static symbol_type make_ENABLE_MULTI_THREADING(const location_type &l)
static symbol_type make_CSV_FORMAT(const location_type &l)
static symbol_type make_SERVER_PORT(const location_type &l)
static symbol_type make_SUB_SUBNET4(const location_type &l)
static symbol_type make_WHEN_NOT_PRESENT(const location_type &l)
static symbol_type make_READ_TIMEOUT(const location_type &l)
static symbol_type make_LIBRARY(const location_type &l)
static symbol_type make_ON_FAIL(const location_type &l)
static symbol_type make_EXTENDED_INFO_CHECKS(const location_type &l)
static symbol_type make_JSON(const location_type &l)
static symbol_type make_LCURLY_BRACKET(const location_type &l)
static symbol_type make_RECORD_TYPES(const location_type &l)
static symbol_type make_INTEGER(const int64_t &v, const location_type &l)
static symbol_type make_DUID(const location_type &l)
static symbol_type make_PARAMETERS(const location_type &l)
static symbol_type make_SUBNET_4O6_INTERFACE(const location_type &l)
static symbol_type make_DHCP4(const location_type &l)
static symbol_type make_CAPACITY(const location_type &l)
static symbol_type make_STRING(const std::string &v, const location_type &l)
value_type semantic_type
Backward compatibility (Bison 3.8).
static symbol_type make_SUB_OPTION_DEF(const location_type &l)
static symbol_type make_PARSER4_error(const location_type &l)
static symbol_type make_TYPE(const location_type &l)
static symbol_type make_ONLY_IF_REQUIRED(const location_type &l)
static symbol_type make_PASSWORD(const location_type &l)
static symbol_type make_CONFIG_DATABASES(const location_type &l)
static symbol_type make_AUTHORITATIVE(const location_type &l)
static symbol_type make_TCP_USER_TIMEOUT(const location_type &l)
static symbol_type make_HOST_RESERVATION_IDENTIFIERS(const location_type &l)
static symbol_type make_RESERVATION_MODE(const location_type &l)
static symbol_type make_MAX_ROW_ERRORS(const location_type &l)
static symbol_type make_INTERFACES(const location_type &l)
static symbol_type make_T2_PERCENT(const location_type &l)
static symbol_type make_READONLY(const location_type &l)
static symbol_type make_DDNS_USE_CONFLICT_RESOLUTION(const location_type &l)
static symbol_type make_LSQUARE_BRACKET(const location_type &l)
static symbol_type make_ENABLE_UPDATES(const location_type &l)
static symbol_type make_SERVER_TAG(const location_type &l)
static symbol_type make_DEBUGLEVEL(const location_type &l)
symbol_kind::symbol_kind_type symbol_kind_type
(Internal) symbol kind.
static symbol_type make_DHCP_QUEUE_CONTROL(const location_type &l)
static symbol_type make_MAXSIZE(const location_type &l)
static symbol_type make_PORT(const location_type &l)
static symbol_type make_FLEX_ID(const location_type &l)
static symbol_type make_CLIENT_CLASS(const location_type &l)
static symbol_type make_NEXT_SERVER(const location_type &l)
static symbol_type make_SANITY_CHECKS(const location_type &l)
static symbol_type make_EXPIRED_LEASES_PROCESSING(const location_type &l)
static symbol_type make_RAW(const location_type &l)
static symbol_type make_OUTBOUND_INTERFACE(const location_type &l)
static const symbol_kind_type YYNTOKENS
The number of tokens.
static symbol_type make_REPLACE_CLIENT_NAME(const location_type &l)
static symbol_type make_RESERVATIONS_OUT_OF_POOL(const location_type &l)
static symbol_type make_ID(const location_type &l)
static symbol_type make_PATTERN(const location_type &l)
static symbol_type make_SUB_POOL4(const location_type &l)
static symbol_type make_NEVER(const location_type &l)
static symbol_type make_TOPLEVEL_JSON(const location_type &l)
static symbol_type make_RESERVATIONS_GLOBAL(const location_type &l)
static symbol_type make_RCURLY_BRACKET(const location_type &l)
static symbol_type make_COMMENT(const location_type &l)
static symbol_type make_RESERVATIONS(const location_type &l)
static symbol_type make_HOOKS_LIBRARIES(const location_type &l)
static symbol_type make_HOSTNAME_CHAR_SET(const location_type &l)
static symbol_type make_TRUST_ANCHOR(const location_type &l)
static symbol_type make_MAX_QUEUE_SIZE(const location_type &l)
static symbol_type make_SERVE_RETRY_EXIT(const location_type &l)
static symbol_type make_ALLOCATOR(const location_type &l)
static symbol_type make_COMPATIBILITY(const location_type &l)
static symbol_type make_POOLS(const location_type &l)
static symbol_type make_DHCP_DDNS(const location_type &l)
static symbol_type make_ALWAYS(const location_type &l)
static symbol_type make_CLIENT_ID(const location_type &l)
static symbol_type make_OFFER_LFT(const location_type &l)
static symbol_type make_SUB_CONFIG_CONTROL(const location_type &l)
static symbol_type make_RESERVATIONS_LOOKUP_FIRST(const location_type &l)
static symbol_type make_TOPLEVEL_DHCP4(const location_type &l)
static symbol_type make_MAX_RECONNECT_TRIES(const location_type &l)
static symbol_type make_FLUSH(const location_type &l)
static symbol_type make_HOST(const location_type &l)
static symbol_type make_WHEN_PRESENT(const location_type &l)
static symbol_type make_SENDER_IP(const location_type &l)
static symbol_type make_DHCP_SOCKET_TYPE(const location_type &l)
static symbol_type make_CONFIG_CONTROL(const location_type &l)
static symbol_type make_CONFIG_FETCH_WAIT_TIME(const location_type &l)
static symbol_type make_DHCP4O6_PORT(const location_type &l)
static symbol_type make_NO_CHECK_WITHOUT_DHCID(const location_type &l)
static symbol_type make_QUALIFYING_SUFFIX(const location_type &l)
static symbol_type make_CODE(const location_type &l)
static symbol_type make_SHARED_NETWORKS(const location_type &l)
static symbol_type make_DDNS_GENERATED_PREFIX(const location_type &l)
static symbol_type make_USER_CONTEXT(const location_type &l)
static symbol_type make_NCR_FORMAT(const location_type &l)
static symbol_type make_DISABLED(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_WRITE_TIMEOUT(const location_type &l)
static symbol_type make_REQUIRE_CLIENT_CLASSES(const location_type &l)
static symbol_type make_COMMA(const location_type &l)
static symbol_type make_DDNS_CONFLICT_RESOLUTION_MODE(const location_type &l)
static symbol_type make_SUB_DHCP4(const location_type &l)
static symbol_type make_SUBNET_4O6_SUBNET(const location_type &l)
static symbol_type make_OUTPUT(const location_type &l)
static symbol_type make_NEVER_SEND(const location_type &l)
static symbol_type make_RSQUARE_BRACKET(const location_type &l)
static symbol_type make_RENEW_TIMER(const location_type &l)
static symbol_type make_DDNS_OVERRIDE_CLIENT_UPDATE(const location_type &l)
static symbol_type make_CLIENT_CLASSES(const location_type &l)
static symbol_type make_ENCAPSULATE(const location_type &l)
static symbol_type make_STATISTIC_DEFAULT_SAMPLE_AGE(const location_type &l)
static symbol_type make_CIRCUIT_ID(const location_type &l)
static symbol_type make_CACHE_THRESHOLD(const location_type &l)
static symbol_type make_PARKED_PACKET_LIMIT(const location_type &l)
static symbol_type make_PACKET_QUEUE_SIZE(const location_type &l)
static symbol_type make_SERVICE_SOCKETS_RETRY_WAIT_TIME(const location_type &l)
static symbol_type make_LEASE_DATABASE(const location_type &l)
Evaluation context, an interface to the expression evaluation.
Forward declaration of the ParserContext class.
boost::shared_ptr< Element > ElementPtr
Defines the logger used by the top-level component of kea-lfc.
~basic_symbol()
Destroy the symbol.
location_type location
The location.
Base super_type
Alias to Base.
basic_symbol(typename Base::kind_type t, const std::string &v, const location_type &l)
value_type value
The semantic value.
bool empty() const YY_NOEXCEPT
Whether empty.
basic_symbol(typename Base::kind_type t, const ElementPtr &v, const location_type &l)
basic_symbol(typename Base::kind_type t, const location_type &l)
Constructors for typed symbols.
void move(basic_symbol &s)
Destructive move, s is emptied into this.
basic_symbol(typename Base::kind_type t, const int64_t &v, const location_type &l)
basic_symbol() YY_NOEXCEPT
Default constructor.
symbol_kind_type type_get() const YY_NOEXCEPT
Backward compatibility (Bison 3.6).
basic_symbol(typename Base::kind_type t, const bool &v, const location_type &l)
basic_symbol(typename Base::kind_type t, const double &v, const location_type &l)
std::string name() const YY_NOEXCEPT
The user-facing name of this symbol.
void clear() YY_NOEXCEPT
Destroy contents, and record that is empty.
Type access provider for token (enum) based symbols.
void move(by_kind &that)
Steal the symbol kind from that.
symbol_kind_type kind() const YY_NOEXCEPT
The (internal) type number (corresponding to type).
symbol_kind_type kind_
The symbol kind.
void clear() YY_NOEXCEPT
Record that this symbol is empty.
token_kind_type kind_type
The symbol kind as needed by the constructor.
by_kind() YY_NOEXCEPT
Default constructor.
symbol_kind_type type_get() const YY_NOEXCEPT
Backward compatibility (Bison 3.6).
@ S_ddns_conflict_resolution_mode_value
@ S_ddns_replace_client_name_value
@ YYNTOKENS
Number of tokens.
@ S_outbound_interface_value
"External" symbols: returned by the scanner.
basic_symbol< by_kind > super_type
Superclass.
symbol_type() YY_NOEXCEPT
Empty symbol.
Syntax errors thrown from user actions.
~syntax_error() YY_NOEXCEPT YY_NOTHROW
syntax_error(const syntax_error &s)
syntax_error(const location_type &l, const std::string &m)
token_kind_type yytokentype
Backward compatibility alias (Bison 3.6).