45 #ifndef YY_PARSER6_DHCP6_PARSER_H_INCLUDED
46 # define YY_PARSER6_DHCP6_PARSER_H_INCLUDED
48 #line 17 "dhcp6_parser.yy"
53 #include <boost/lexical_cast.hpp>
60 #line 61 "dhcp6_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
103 # define YY_CONSTEXPR
105 # include "location.hh"
107 #ifndef PARSER6__ASSERT
109 # define PARSER6__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))
136 #if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
138 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
139 _Pragma ("GCC diagnostic push") \
140 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
141 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
142 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
143 _Pragma ("GCC diagnostic pop")
145 # define YY_INITIAL_VALUE(Value) Value
147 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
148 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
149 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
151 #ifndef YY_INITIAL_VALUE
152 # define YY_INITIAL_VALUE(Value)
155 #if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
156 # define YY_IGNORE_USELESS_CAST_BEGIN \
157 _Pragma ("GCC diagnostic push") \
158 _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
159 # define YY_IGNORE_USELESS_CAST_END \
160 _Pragma ("GCC diagnostic pop")
162 #ifndef YY_IGNORE_USELESS_CAST_BEGIN
163 # define YY_IGNORE_USELESS_CAST_BEGIN
164 # define YY_IGNORE_USELESS_CAST_END
169 # define YY_CAST(Type, Val) static_cast<Type> (Val)
170 # define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
172 # define YY_CAST(Type, Val) ((Type) (Val))
173 # define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
177 # if defined __cplusplus
178 # if 201103L <= __cplusplus
179 # define YY_NULLPTR nullptr
181 # define YY_NULLPTR 0
184 # define YY_NULLPTR ((void*)0)
189 #ifndef PARSER6_DEBUG
192 # define PARSER6_DEBUG 1
194 # define PARSER6_DEBUG 0
197 # define PARSER6_DEBUG 1
201 #line 14 "dhcp6_parser.yy"
202 namespace isc {
namespace dhcp {
203 #line 204 "dhcp6_parser.h"
212 #ifndef PARSER6_STYPE
227 , yytypeid_ (YY_NULLPTR)
231 template <
typename T>
233 : yytypeid_ (&typeid (T))
236 new (yyas_<T> ()) T (
YY_MOVE (t));
239 #if 201103L <= YY_CPLUSPLUS
243 self_type& operator= (
const self_type&) =
delete;
252 # if 201103L <= YY_CPLUSPLUS
253 template <
typename T,
typename... U>
260 yytypeid_ = &
typeid (T);
261 return *
new (yyas_<T> ()) T (std::forward <U>(u)...);
264 template <
typename T>
271 yytypeid_ = &
typeid (T);
272 return *
new (yyas_<T> ()) T ();
276 template <
typename T>
282 yytypeid_ = &
typeid (T);
283 return *
new (yyas_<T> ()) T (t);
289 template <
typename T>
293 return emplace<T> ();
298 template <
typename T>
302 return emplace<T> (t);
306 template <
typename T>
317 template <
typename T>
335 template <
typename T>
341 std::swap (as<T> (), that.as<T> ());
347 template <
typename T>
351 # if 201103L <= YY_CPLUSPLUS
352 emplace<T> (std::move (that.
as<T> ()));
360 # if 201103L <= YY_CPLUSPLUS
361 template <
typename T>
364 move (self_type&& that)
366 emplace<T> (std::move (that.as<T> ()));
372 template <
typename T>
376 emplace<T> (that.
as<T> ());
380 template <
typename T>
385 yytypeid_ = YY_NULLPTR;
389 #if YY_CPLUSPLUS < 201103L
393 self_type& operator= (
const self_type&);
397 template <
typename T>
401 void *yyp = yybuffer_.yyraw;
402 return static_cast<T*
> (yyp);
406 template <
typename T>
410 const void *yyp = yybuffer_.yyraw;
411 return static_cast<const T*
> (yyp);
428 char dummy2[
sizeof (bool)];
431 char dummy3[
sizeof (double)];
434 char dummy4[
sizeof (int64_t)];
437 char dummy5[
sizeof (std::string)];
441 enum { size =
sizeof (union_type) };
453 const std::type_info *yytypeid_;
457 typedef PARSER6_STYPE semantic_type;
459 typedef location location_type;
466 :
std::runtime_error (m)
471 :
std::runtime_error (s.what ())
472 , location (s.location)
477 location_type location;
485 TOKEN_PARSER6_EMPTY = -2,
487 TOKEN_PARSER6_error = 256,
488 TOKEN_PARSER6_UNDEF = 257,
491 TOKEN_LSQUARE_BRACKET = 260,
492 TOKEN_RSQUARE_BRACKET = 261,
493 TOKEN_LCURLY_BRACKET = 262,
494 TOKEN_RCURLY_BRACKET = 263,
495 TOKEN_NULL_TYPE = 264,
497 TOKEN_DATA_DIRECTORY = 266,
498 TOKEN_CONFIG_CONTROL = 267,
499 TOKEN_CONFIG_DATABASES = 268,
500 TOKEN_CONFIG_FETCH_WAIT_TIME = 269,
501 TOKEN_INTERFACES_CONFIG = 270,
502 TOKEN_INTERFACES = 271,
503 TOKEN_RE_DETECT = 272,
504 TOKEN_LEASE_DATABASE = 273,
505 TOKEN_HOSTS_DATABASE = 274,
506 TOKEN_HOSTS_DATABASES = 275,
510 TOKEN_POSTGRESQL = 279,
513 TOKEN_PASSWORD = 282,
517 TOKEN_LFC_INTERVAL = 286,
518 TOKEN_READONLY = 287,
519 TOKEN_CONNECT_TIMEOUT = 288,
520 TOKEN_CONTACT_POINTS = 289,
521 TOKEN_MAX_RECONNECT_TRIES = 290,
522 TOKEN_RECONNECT_WAIT_TIME = 291,
524 TOKEN_STOP_RETRY_EXIT = 293,
525 TOKEN_SERVE_RETRY_EXIT = 294,
526 TOKEN_SERVE_RETRY_CONTINUE = 295,
527 TOKEN_KEYSPACE = 296,
528 TOKEN_CONSISTENCY = 297,
529 TOKEN_SERIAL_CONSISTENCY = 298,
530 TOKEN_REQUEST_TIMEOUT = 299,
531 TOKEN_TCP_KEEPALIVE = 300,
532 TOKEN_TCP_NODELAY = 301,
533 TOKEN_MAX_ROW_ERRORS = 302,
534 TOKEN_PREFERRED_LIFETIME = 303,
535 TOKEN_MIN_PREFERRED_LIFETIME = 304,
536 TOKEN_MAX_PREFERRED_LIFETIME = 305,
537 TOKEN_VALID_LIFETIME = 306,
538 TOKEN_MIN_VALID_LIFETIME = 307,
539 TOKEN_MAX_VALID_LIFETIME = 308,
540 TOKEN_RENEW_TIMER = 309,
541 TOKEN_REBIND_TIMER = 310,
542 TOKEN_CALCULATE_TEE_TIMES = 311,
543 TOKEN_T1_PERCENT = 312,
544 TOKEN_T2_PERCENT = 313,
545 TOKEN_CACHE_THRESHOLD = 314,
546 TOKEN_CACHE_MAX_AGE = 315,
547 TOKEN_DECLINE_PROBATION_PERIOD = 316,
548 TOKEN_SERVER_TAG = 317,
549 TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT = 318,
550 TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE = 319,
551 TOKEN_DDNS_SEND_UPDATES = 320,
552 TOKEN_DDNS_OVERRIDE_NO_UPDATE = 321,
553 TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE = 322,
554 TOKEN_DDNS_REPLACE_CLIENT_NAME = 323,
555 TOKEN_DDNS_GENERATED_PREFIX = 324,
556 TOKEN_DDNS_QUALIFYING_SUFFIX = 325,
557 TOKEN_DDNS_UPDATE_ON_RENEW = 326,
558 TOKEN_DDNS_USE_CONFLICT_RESOLUTION = 327,
559 TOKEN_STORE_EXTENDED_INFO = 328,
561 TOKEN_OPTION_DEF = 330,
562 TOKEN_OPTION_DATA = 331,
567 TOKEN_CSV_FORMAT = 336,
568 TOKEN_ALWAYS_SEND = 337,
569 TOKEN_RECORD_TYPES = 338,
570 TOKEN_ENCAPSULATE = 339,
572 TOKEN_SHARED_NETWORKS = 341,
575 TOKEN_PD_POOLS = 344,
577 TOKEN_PREFIX_LEN = 346,
578 TOKEN_EXCLUDED_PREFIX = 347,
579 TOKEN_EXCLUDED_PREFIX_LEN = 348,
580 TOKEN_DELEGATED_LEN = 349,
581 TOKEN_USER_CONTEXT = 350,
584 TOKEN_INTERFACE = 353,
585 TOKEN_INTERFACE_ID = 354,
587 TOKEN_RAPID_COMMIT = 356,
588 TOKEN_RESERVATION_MODE = 357,
589 TOKEN_DISABLED = 358,
590 TOKEN_OUT_OF_POOL = 359,
593 TOKEN_RESERVATIONS_GLOBAL = 362,
594 TOKEN_RESERVATIONS_IN_SUBNET = 363,
595 TOKEN_RESERVATIONS_OUT_OF_POOL = 364,
596 TOKEN_MAC_SOURCES = 365,
597 TOKEN_RELAY_SUPPLIED_OPTIONS = 366,
598 TOKEN_HOST_RESERVATION_IDENTIFIERS = 367,
599 TOKEN_SANITY_CHECKS = 368,
600 TOKEN_LEASE_CHECKS = 369,
601 TOKEN_CLIENT_CLASSES = 370,
602 TOKEN_REQUIRE_CLIENT_CLASSES = 371,
604 TOKEN_ONLY_IF_REQUIRED = 373,
605 TOKEN_CLIENT_CLASS = 374,
606 TOKEN_RESERVATIONS = 375,
607 TOKEN_IP_ADDRESSES = 376,
608 TOKEN_PREFIXES = 377,
610 TOKEN_HW_ADDRESS = 379,
611 TOKEN_HOSTNAME = 380,
614 TOKEN_IP_ADDRESS = 383,
615 TOKEN_HOOKS_LIBRARIES = 384,
617 TOKEN_PARAMETERS = 386,
618 TOKEN_EXPIRED_LEASES_PROCESSING = 387,
619 TOKEN_RECLAIM_TIMER_WAIT_TIME = 388,
620 TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 389,
621 TOKEN_HOLD_RECLAIMED_TIME = 390,
622 TOKEN_MAX_RECLAIM_LEASES = 391,
623 TOKEN_MAX_RECLAIM_TIME = 392,
624 TOKEN_UNWARNED_RECLAIM_CYCLES = 393,
625 TOKEN_SERVER_ID = 394,
629 TOKEN_IDENTIFIER = 398,
632 TOKEN_ENTERPRISE_ID = 401,
633 TOKEN_DHCP4O6_PORT = 402,
634 TOKEN_DHCP_MULTI_THREADING = 403,
635 TOKEN_ENABLE_MULTI_THREADING = 404,
636 TOKEN_THREAD_POOL_SIZE = 405,
637 TOKEN_PACKET_QUEUE_SIZE = 406,
638 TOKEN_CONTROL_SOCKET = 407,
639 TOKEN_SOCKET_TYPE = 408,
640 TOKEN_SOCKET_NAME = 409,
641 TOKEN_DHCP_QUEUE_CONTROL = 410,
642 TOKEN_ENABLE_QUEUE = 411,
643 TOKEN_QUEUE_TYPE = 412,
644 TOKEN_CAPACITY = 413,
645 TOKEN_DHCP_DDNS = 414,
646 TOKEN_ENABLE_UPDATES = 415,
647 TOKEN_QUALIFYING_SUFFIX = 416,
648 TOKEN_SERVER_IP = 417,
649 TOKEN_SERVER_PORT = 418,
650 TOKEN_SENDER_IP = 419,
651 TOKEN_SENDER_PORT = 420,
652 TOKEN_MAX_QUEUE_SIZE = 421,
653 TOKEN_NCR_PROTOCOL = 422,
654 TOKEN_NCR_FORMAT = 423,
655 TOKEN_OVERRIDE_NO_UPDATE = 424,
656 TOKEN_OVERRIDE_CLIENT_UPDATE = 425,
657 TOKEN_REPLACE_CLIENT_NAME = 426,
658 TOKEN_GENERATED_PREFIX = 427,
662 TOKEN_WHEN_PRESENT = 431,
665 TOKEN_WHEN_NOT_PRESENT = 434,
666 TOKEN_HOSTNAME_CHAR_SET = 435,
667 TOKEN_HOSTNAME_CHAR_REPLACEMENT = 436,
668 TOKEN_IP_RESERVATIONS_UNIQUE = 437,
670 TOKEN_OUTPUT_OPTIONS = 439,
672 TOKEN_DEBUGLEVEL = 441,
673 TOKEN_SEVERITY = 442,
678 TOKEN_COMPATIBILITY = 447,
679 TOKEN_LENIENT_OPTION_PARSING = 448,
680 TOKEN_TOPLEVEL_JSON = 449,
681 TOKEN_TOPLEVEL_DHCP6 = 450,
682 TOKEN_SUB_DHCP6 = 451,
683 TOKEN_SUB_INTERFACES6 = 452,
684 TOKEN_SUB_SUBNET6 = 453,
685 TOKEN_SUB_POOL6 = 454,
686 TOKEN_SUB_PD_POOL = 455,
687 TOKEN_SUB_RESERVATION = 456,
688 TOKEN_SUB_OPTION_DEFS = 457,
689 TOKEN_SUB_OPTION_DEF = 458,
690 TOKEN_SUB_OPTION_DATA = 459,
691 TOKEN_SUB_HOOKS_LIBRARY = 460,
692 TOKEN_SUB_DHCP_DDNS = 461,
693 TOKEN_SUB_CONFIG_CONTROL = 462,
721 S_LSQUARE_BRACKET = 5,
722 S_RSQUARE_BRACKET = 6,
723 S_LCURLY_BRACKET = 7,
724 S_RCURLY_BRACKET = 8,
727 S_DATA_DIRECTORY = 11,
728 S_CONFIG_CONTROL = 12,
729 S_CONFIG_DATABASES = 13,
730 S_CONFIG_FETCH_WAIT_TIME = 14,
731 S_INTERFACES_CONFIG = 15,
734 S_LEASE_DATABASE = 18,
735 S_HOSTS_DATABASE = 19,
736 S_HOSTS_DATABASES = 20,
749 S_CONNECT_TIMEOUT = 33,
750 S_CONTACT_POINTS = 34,
751 S_MAX_RECONNECT_TRIES = 35,
752 S_RECONNECT_WAIT_TIME = 36,
754 S_STOP_RETRY_EXIT = 38,
755 S_SERVE_RETRY_EXIT = 39,
756 S_SERVE_RETRY_CONTINUE = 40,
759 S_SERIAL_CONSISTENCY = 43,
760 S_REQUEST_TIMEOUT = 44,
761 S_TCP_KEEPALIVE = 45,
763 S_MAX_ROW_ERRORS = 47,
764 S_PREFERRED_LIFETIME = 48,
765 S_MIN_PREFERRED_LIFETIME = 49,
766 S_MAX_PREFERRED_LIFETIME = 50,
767 S_VALID_LIFETIME = 51,
768 S_MIN_VALID_LIFETIME = 52,
769 S_MAX_VALID_LIFETIME = 53,
772 S_CALCULATE_TEE_TIMES = 56,
775 S_CACHE_THRESHOLD = 59,
776 S_CACHE_MAX_AGE = 60,
777 S_DECLINE_PROBATION_PERIOD = 61,
779 S_STATISTIC_DEFAULT_SAMPLE_COUNT = 63,
780 S_STATISTIC_DEFAULT_SAMPLE_AGE = 64,
781 S_DDNS_SEND_UPDATES = 65,
782 S_DDNS_OVERRIDE_NO_UPDATE = 66,
783 S_DDNS_OVERRIDE_CLIENT_UPDATE = 67,
784 S_DDNS_REPLACE_CLIENT_NAME = 68,
785 S_DDNS_GENERATED_PREFIX = 69,
786 S_DDNS_QUALIFYING_SUFFIX = 70,
787 S_DDNS_UPDATE_ON_RENEW = 71,
788 S_DDNS_USE_CONFLICT_RESOLUTION = 72,
789 S_STORE_EXTENDED_INFO = 73,
802 S_SHARED_NETWORKS = 86,
808 S_EXCLUDED_PREFIX = 92,
809 S_EXCLUDED_PREFIX_LEN = 93,
810 S_DELEGATED_LEN = 94,
817 S_RAPID_COMMIT = 101,
818 S_RESERVATION_MODE = 102,
823 S_RESERVATIONS_GLOBAL = 107,
824 S_RESERVATIONS_IN_SUBNET = 108,
825 S_RESERVATIONS_OUT_OF_POOL = 109,
827 S_RELAY_SUPPLIED_OPTIONS = 111,
828 S_HOST_RESERVATION_IDENTIFIERS = 112,
829 S_SANITY_CHECKS = 113,
830 S_LEASE_CHECKS = 114,
831 S_CLIENT_CLASSES = 115,
832 S_REQUIRE_CLIENT_CLASSES = 116,
834 S_ONLY_IF_REQUIRED = 118,
835 S_CLIENT_CLASS = 119,
836 S_RESERVATIONS = 120,
837 S_IP_ADDRESSES = 121,
845 S_HOOKS_LIBRARIES = 129,
848 S_EXPIRED_LEASES_PROCESSING = 132,
849 S_RECLAIM_TIMER_WAIT_TIME = 133,
850 S_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 134,
851 S_HOLD_RECLAIMED_TIME = 135,
852 S_MAX_RECLAIM_LEASES = 136,
853 S_MAX_RECLAIM_TIME = 137,
854 S_UNWARNED_RECLAIM_CYCLES = 138,
862 S_ENTERPRISE_ID = 146,
863 S_DHCP4O6_PORT = 147,
864 S_DHCP_MULTI_THREADING = 148,
865 S_ENABLE_MULTI_THREADING = 149,
866 S_THREAD_POOL_SIZE = 150,
867 S_PACKET_QUEUE_SIZE = 151,
868 S_CONTROL_SOCKET = 152,
871 S_DHCP_QUEUE_CONTROL = 155,
872 S_ENABLE_QUEUE = 156,
876 S_ENABLE_UPDATES = 160,
877 S_QUALIFYING_SUFFIX = 161,
882 S_MAX_QUEUE_SIZE = 166,
883 S_NCR_PROTOCOL = 167,
885 S_OVERRIDE_NO_UPDATE = 169,
886 S_OVERRIDE_CLIENT_UPDATE = 170,
887 S_REPLACE_CLIENT_NAME = 171,
888 S_GENERATED_PREFIX = 172,
892 S_WHEN_PRESENT = 176,
895 S_WHEN_NOT_PRESENT = 179,
896 S_HOSTNAME_CHAR_SET = 180,
897 S_HOSTNAME_CHAR_REPLACEMENT = 181,
898 S_IP_RESERVATIONS_UNIQUE = 182,
900 S_OUTPUT_OPTIONS = 184,
908 S_COMPATIBILITY = 192,
909 S_LENIENT_OPTION_PARSING = 193,
910 S_TOPLEVEL_JSON = 194,
911 S_TOPLEVEL_DHCP6 = 195,
913 S_SUB_INTERFACES6 = 197,
917 S_SUB_RESERVATION = 201,
918 S_SUB_OPTION_DEFS = 202,
919 S_SUB_OPTION_DEF = 203,
920 S_SUB_OPTION_DATA = 204,
921 S_SUB_HOOKS_LIBRARY = 205,
922 S_SUB_DHCP_DDNS = 206,
923 S_SUB_CONFIG_CONTROL = 207,
950 S_not_empty_map = 234,
951 S_list_generic = 235,
953 S_list_content = 237,
954 S_not_empty_list = 238,
955 S_list_strings = 239,
957 S_list_strings_content = 241,
958 S_not_empty_list_strings = 242,
959 S_unknown_map_entry = 243,
962 S_global_object = 246,
966 S_global_params = 250,
967 S_global_param = 251,
968 S_data_directory = 252,
970 S_preferred_lifetime = 254,
971 S_min_preferred_lifetime = 255,
972 S_max_preferred_lifetime = 256,
973 S_valid_lifetime = 257,
974 S_min_valid_lifetime = 258,
975 S_max_valid_lifetime = 259,
977 S_rebind_timer = 261,
978 S_calculate_tee_times = 262,
981 S_cache_threshold = 265,
982 S_cache_max_age = 266,
983 S_decline_probation_period = 267,
984 S_ddns_send_updates = 268,
985 S_ddns_override_no_update = 269,
986 S_ddns_override_client_update = 270,
987 S_ddns_replace_client_name = 271,
989 S_ddns_replace_client_name_value = 273,
990 S_ddns_generated_prefix = 274,
992 S_ddns_qualifying_suffix = 276,
994 S_ddns_update_on_renew = 278,
995 S_ddns_use_conflict_resolution = 279,
996 S_hostname_char_set = 280,
998 S_hostname_char_replacement = 282,
1000 S_store_extended_info = 284,
1001 S_statistic_default_sample_count = 285,
1002 S_statistic_default_sample_age = 286,
1005 S_ip_reservations_unique = 289,
1006 S_interfaces_config = 290,
1008 S_sub_interfaces6 = 292,
1010 S_interfaces_config_params = 294,
1011 S_interfaces_config_param = 295,
1012 S_interfaces_list = 296,
1015 S_lease_database = 299,
1017 S_hosts_database = 301,
1019 S_hosts_databases = 303,
1021 S_database_list = 305,
1022 S_not_empty_database_list = 306,
1025 S_database_map_params = 309,
1026 S_database_map_param = 310,
1027 S_database_type = 311,
1040 S_lfc_interval = 324,
1042 S_connect_timeout = 326,
1043 S_reconnect_wait_time = 327,
1046 S_on_fail_mode = 330,
1047 S_max_row_errors = 331,
1048 S_request_timeout = 332,
1049 S_tcp_keepalive = 333,
1050 S_tcp_nodelay = 334,
1051 S_contact_points = 335,
1053 S_max_reconnect_tries = 337,
1056 S_consistency = 340,
1058 S_serial_consistency = 342,
1060 S_sanity_checks = 344,
1062 S_sanity_checks_params = 346,
1063 S_sanity_checks_param = 347,
1064 S_lease_checks = 348,
1066 S_mac_sources = 350,
1068 S_mac_sources_list = 352,
1069 S_mac_sources_value = 353,
1072 S_host_reservation_identifiers = 356,
1074 S_host_reservation_identifiers_list = 358,
1075 S_host_reservation_identifier = 359,
1076 S_hw_address_id = 360,
1078 S_relay_supplied_options = 362,
1080 S_dhcp_multi_threading = 364,
1082 S_multi_threading_params = 366,
1083 S_multi_threading_param = 367,
1084 S_enable_multi_threading = 368,
1085 S_thread_pool_size = 369,
1086 S_packet_queue_size = 370,
1087 S_hooks_libraries = 371,
1089 S_hooks_libraries_list = 373,
1090 S_not_empty_hooks_libraries_list = 374,
1091 S_hooks_library = 375,
1093 S_sub_hooks_library = 377,
1095 S_hooks_params = 379,
1096 S_hooks_param = 380,
1101 S_expired_leases_processing = 385,
1103 S_expired_leases_params = 387,
1104 S_expired_leases_param = 388,
1105 S_reclaim_timer_wait_time = 389,
1106 S_flush_reclaimed_timer_wait_time = 390,
1107 S_hold_reclaimed_time = 391,
1108 S_max_reclaim_leases = 392,
1109 S_max_reclaim_time = 393,
1110 S_unwarned_reclaim_cycles = 394,
1111 S_subnet6_list = 395,
1113 S_subnet6_list_content = 397,
1114 S_not_empty_subnet6_list = 398,
1117 S_sub_subnet6 = 401,
1119 S_subnet6_params = 403,
1120 S_subnet6_param = 404,
1125 S_interface_id = 409,
1127 S_client_class = 411,
1129 S_require_client_classes = 413,
1131 S_reservations_global = 415,
1132 S_reservations_in_subnet = 416,
1133 S_reservations_out_of_pool = 417,
1134 S_reservation_mode = 418,
1138 S_rapid_commit = 422,
1139 S_shared_networks = 423,
1141 S_shared_networks_content = 425,
1142 S_shared_networks_list = 426,
1143 S_shared_network = 427,
1145 S_shared_network_params = 429,
1146 S_shared_network_param = 430,
1147 S_option_def_list = 431,
1149 S_sub_option_def_list = 433,
1151 S_option_def_list_content = 435,
1152 S_not_empty_option_def_list = 436,
1153 S_option_def_entry = 437,
1155 S_sub_option_def = 439,
1157 S_option_def_params = 441,
1158 S_not_empty_option_def_params = 442,
1159 S_option_def_param = 443,
1160 S_option_def_name = 444,
1162 S_option_def_code = 446,
1163 S_option_def_type = 447,
1165 S_option_def_record_types = 449,
1169 S_option_def_space = 453,
1170 S_option_def_encapsulate = 454,
1172 S_option_def_array = 456,
1173 S_option_data_list = 457,
1175 S_option_data_list_content = 459,
1176 S_not_empty_option_data_list = 460,
1177 S_option_data_entry = 461,
1179 S_sub_option_data = 463,
1181 S_option_data_params = 465,
1182 S_not_empty_option_data_params = 466,
1183 S_option_data_param = 467,
1184 S_option_data_name = 468,
1185 S_option_data_data = 469,
1187 S_option_data_code = 471,
1188 S_option_data_space = 472,
1189 S_option_data_csv_format = 473,
1190 S_option_data_always_send = 474,
1193 S_pools_list_content = 477,
1194 S_not_empty_pools_list = 478,
1195 S_pool_list_entry = 479,
1199 S_pool_params = 483,
1203 S_user_context = 487,
1207 S_pd_pools_list = 491,
1209 S_pd_pools_list_content = 493,
1210 S_not_empty_pd_pools_list = 494,
1211 S_pd_pool_entry = 495,
1213 S_sub_pd_pool = 497,
1215 S_pd_pool_params = 499,
1216 S_pd_pool_param = 500,
1219 S_pd_prefix_len = 503,
1220 S_excluded_prefix = 504,
1222 S_excluded_prefix_len = 506,
1223 S_pd_delegated_len = 507,
1224 S_reservations = 508,
1226 S_reservations_list = 510,
1227 S_not_empty_reservations_list = 511,
1228 S_reservation = 512,
1230 S_sub_reservation = 514,
1232 S_reservation_params = 516,
1233 S_not_empty_reservation_params = 517,
1234 S_reservation_param = 518,
1235 S_ip_addresses = 519,
1245 S_flex_id_value = 529,
1247 S_reservation_client_classes = 531,
1254 S_client_classes = 538,
1256 S_client_classes_list = 540,
1257 S_client_class_entry = 541,
1259 S_client_class_params = 543,
1260 S_not_empty_client_class_params = 544,
1261 S_client_class_param = 545,
1262 S_client_class_name = 546,
1263 S_client_class_test = 547,
1265 S_only_if_required = 549,
1268 S_server_id_params = 552,
1269 S_server_id_param = 553,
1270 S_server_id_type = 554,
1277 S_enterprise_id = 561,
1278 S_dhcp4o6_port = 562,
1279 S_control_socket = 563,
1281 S_control_socket_params = 565,
1282 S_control_socket_param = 566,
1283 S_socket_type = 567,
1285 S_socket_name = 569,
1287 S_dhcp_queue_control = 571,
1289 S_queue_control_params = 573,
1290 S_queue_control_param = 574,
1291 S_enable_queue = 575,
1295 S_arbitrary_map_entry = 579,
1299 S_sub_dhcp_ddns = 583,
1301 S_dhcp_ddns_params = 585,
1302 S_dhcp_ddns_param = 586,
1303 S_enable_updates = 587,
1304 S_dep_qualifying_suffix = 588,
1308 S_server_port = 592,
1311 S_sender_port = 595,
1312 S_max_queue_size = 596,
1313 S_ncr_protocol = 597,
1315 S_ncr_protocol_value = 599,
1318 S_dep_override_no_update = 602,
1319 S_dep_override_client_update = 603,
1320 S_dep_replace_client_name = 604,
1322 S_dep_generated_prefix = 606,
1324 S_dep_hostname_char_set = 608,
1326 S_dep_hostname_char_replacement = 610,
1328 S_config_control = 612,
1330 S_sub_config_control = 614,
1332 S_config_control_params = 616,
1333 S_config_control_param = 617,
1334 S_config_databases = 618,
1336 S_config_fetch_wait_time = 620,
1339 S_loggers_entries = 623,
1340 S_logger_entry = 624,
1342 S_logger_params = 626,
1343 S_logger_param = 627,
1347 S_output_options_list = 631,
1349 S_output_options_list_content = 633,
1350 S_output_entry = 634,
1352 S_output_params_list = 636,
1353 S_output_params = 637,
1361 S_compatibility = 645,
1363 S_compatibility_params = 647,
1364 S_compatibility_param = 648,
1365 S_lenient_option_parsing = 649
1373 static const symbol_kind_type YYNTOKENS = symbol_kind::YYNTOKENS;
1381 template <
typename Base>
1393 #if 201103L <= YY_CPLUSPLUS
1396 : Base (
std::move (that))
1398 , location (
std::move (that.location))
1400 switch (this->kind ())
1402 case symbol_kind::S_value:
1403 case symbol_kind::S_map_value:
1404 case symbol_kind::S_ddns_replace_client_name_value:
1405 case symbol_kind::S_db_type:
1406 case symbol_kind::S_on_fail_mode:
1407 case symbol_kind::S_hr_mode:
1408 case symbol_kind::S_duid_type:
1409 case symbol_kind::S_ncr_protocol_value:
1410 value.move<
ElementPtr > (std::move (that.value));
1413 case symbol_kind::S_BOOLEAN:
1414 value.move<
bool > (std::move (that.value));
1417 case symbol_kind::S_FLOAT:
1418 value.move<
double > (std::move (that.value));
1421 case symbol_kind::S_INTEGER:
1422 value.move< int64_t > (std::move (that.value));
1425 case symbol_kind::S_STRING:
1426 value.move< std::string > (std::move (that.value));
1437 basic_symbol (
const basic_symbol& that);
1440 #if 201103L <= YY_CPLUSPLUS
1441 basic_symbol (
typename Base::kind_type t, location_type&& l)
1443 , location (
std::move (l))
1452 #if 201103L <= YY_CPLUSPLUS
1455 , value (
std::move (v))
1456 , location (
std::move (l))
1466 #if 201103L <= YY_CPLUSPLUS
1467 basic_symbol (
typename Base::kind_type t,
bool&& v, location_type&& l)
1469 , value (
std::move (v))
1470 , location (
std::move (l))
1473 basic_symbol (
typename Base::kind_type t,
const bool& v,
const location_type& l)
1480 #if 201103L <= YY_CPLUSPLUS
1481 basic_symbol (
typename Base::kind_type t,
double&& v, location_type&& l)
1483 , value (
std::move (v))
1484 , location (
std::move (l))
1487 basic_symbol (
typename Base::kind_type t,
const double& v,
const location_type& l)
1494 #if 201103L <= YY_CPLUSPLUS
1495 basic_symbol (
typename Base::kind_type t, int64_t&& v, location_type&& l)
1497 , value (
std::move (v))
1498 , location (
std::move (l))
1501 basic_symbol (
typename Base::kind_type t,
const int64_t& v,
const location_type& l)
1508 #if 201103L <= YY_CPLUSPLUS
1509 basic_symbol (
typename Base::kind_type t, std::string&& v, location_type&& l)
1511 , value (
std::move (v))
1512 , location (
std::move (l))
1515 basic_symbol (
typename Base::kind_type t,
const std::string& v,
const location_type& l)
1532 symbol_kind_type yykind = this->kind ();
1544 case symbol_kind::S_value:
1545 case symbol_kind::S_map_value:
1546 case symbol_kind::S_ddns_replace_client_name_value:
1547 case symbol_kind::S_db_type:
1548 case symbol_kind::S_on_fail_mode:
1549 case symbol_kind::S_hr_mode:
1550 case symbol_kind::S_duid_type:
1551 case symbol_kind::S_ncr_protocol_value:
1552 value.template destroy< ElementPtr > ();
1555 case symbol_kind::S_BOOLEAN:
1556 value.template destroy< bool > ();
1559 case symbol_kind::S_FLOAT:
1560 value.template destroy< double > ();
1563 case symbol_kind::S_INTEGER:
1564 value.template destroy< int64_t > ();
1567 case symbol_kind::S_STRING:
1568 value.template destroy< std::string > ();
1594 semantic_type value;
1597 location_type location;
1600 #if YY_CPLUSPLUS < 201103L
1612 #if 201103L <= YY_CPLUSPLUS
1637 symbol_kind_type type_get () const YY_NOEXCEPT;
1641 symbol_kind_type kind_;
1657 #if 201103L <= YY_CPLUSPLUS
1659 : super_type(token_type (tok),
std::move (l))
1662 : super_type(token_type (tok), l)
1666 || (token::TOKEN_PARSER6_error <= tok && tok <= token::TOKEN_SUB_CONFIG_CONTROL));
1668 #if 201103L <= YY_CPLUSPLUS
1670 : super_type(token_type (tok),
std::move (v),
std::move (l))
1673 : super_type(token_type (tok), v, l)
1678 #if 201103L <= YY_CPLUSPLUS
1680 : super_type(token_type (tok),
std::move (v),
std::move (l))
1683 : super_type(token_type (tok), v, l)
1688 #if 201103L <= YY_CPLUSPLUS
1690 : super_type(token_type (tok),
std::move (v),
std::move (l))
1693 : super_type(token_type (tok), v, l)
1698 #if 201103L <= YY_CPLUSPLUS
1699 symbol_type (
int tok, std::string v, location_type l)
1700 : super_type(token_type (tok),
std::move (v),
std::move (l))
1703 : super_type(token_type (tok), v, l)
1714 #if 201103L <= YY_CPLUSPLUS
1727 virtual int parse ();
1733 void set_debug_stream (
std::ostream &);
1740 void set_debug_level (debug_level_type l);
1746 virtual void error (
const location_type& loc,
const std::string& msg);
1753 static std::string symbol_name (symbol_kind_type yysymbol);
1756 #if 201103L <= YY_CPLUSPLUS
1759 make_END (location_type l)
1761 return symbol_type (token::TOKEN_END, std::move (l));
1771 #if 201103L <= YY_CPLUSPLUS
1774 make_PARSER6_error (location_type l)
1776 return symbol_type (token::TOKEN_PARSER6_error, std::move (l));
1783 return symbol_type (token::TOKEN_PARSER6_error, l);
1786 #if 201103L <= YY_CPLUSPLUS
1789 make_PARSER6_UNDEF (location_type l)
1791 return symbol_type (token::TOKEN_PARSER6_UNDEF, std::move (l));
1798 return symbol_type (token::TOKEN_PARSER6_UNDEF, l);
1801 #if 201103L <= YY_CPLUSPLUS
1804 make_COMMA (location_type l)
1806 return symbol_type (token::TOKEN_COMMA, std::move (l));
1816 #if 201103L <= YY_CPLUSPLUS
1819 make_COLON (location_type l)
1821 return symbol_type (token::TOKEN_COLON, std::move (l));
1831 #if 201103L <= YY_CPLUSPLUS
1834 make_LSQUARE_BRACKET (location_type l)
1836 return symbol_type (token::TOKEN_LSQUARE_BRACKET, std::move (l));
1843 return symbol_type (token::TOKEN_LSQUARE_BRACKET, l);
1846 #if 201103L <= YY_CPLUSPLUS
1849 make_RSQUARE_BRACKET (location_type l)
1851 return symbol_type (token::TOKEN_RSQUARE_BRACKET, std::move (l));
1858 return symbol_type (token::TOKEN_RSQUARE_BRACKET, l);
1861 #if 201103L <= YY_CPLUSPLUS
1864 make_LCURLY_BRACKET (location_type l)
1866 return symbol_type (token::TOKEN_LCURLY_BRACKET, std::move (l));
1873 return symbol_type (token::TOKEN_LCURLY_BRACKET, l);
1876 #if 201103L <= YY_CPLUSPLUS
1879 make_RCURLY_BRACKET (location_type l)
1881 return symbol_type (token::TOKEN_RCURLY_BRACKET, std::move (l));
1888 return symbol_type (token::TOKEN_RCURLY_BRACKET, l);
1891 #if 201103L <= YY_CPLUSPLUS
1894 make_NULL_TYPE (location_type l)
1896 return symbol_type (token::TOKEN_NULL_TYPE, std::move (l));
1906 #if 201103L <= YY_CPLUSPLUS
1909 make_DHCP6 (location_type l)
1911 return symbol_type (token::TOKEN_DHCP6, std::move (l));
1921 #if 201103L <= YY_CPLUSPLUS
1924 make_DATA_DIRECTORY (location_type l)
1926 return symbol_type (token::TOKEN_DATA_DIRECTORY, std::move (l));
1933 return symbol_type (token::TOKEN_DATA_DIRECTORY, l);
1936 #if 201103L <= YY_CPLUSPLUS
1939 make_CONFIG_CONTROL (location_type l)
1941 return symbol_type (token::TOKEN_CONFIG_CONTROL, std::move (l));
1948 return symbol_type (token::TOKEN_CONFIG_CONTROL, l);
1951 #if 201103L <= YY_CPLUSPLUS
1954 make_CONFIG_DATABASES (location_type l)
1956 return symbol_type (token::TOKEN_CONFIG_DATABASES, std::move (l));
1963 return symbol_type (token::TOKEN_CONFIG_DATABASES, l);
1966 #if 201103L <= YY_CPLUSPLUS
1969 make_CONFIG_FETCH_WAIT_TIME (location_type l)
1971 return symbol_type (token::TOKEN_CONFIG_FETCH_WAIT_TIME, std::move (l));
1978 return symbol_type (token::TOKEN_CONFIG_FETCH_WAIT_TIME, l);
1981 #if 201103L <= YY_CPLUSPLUS
1984 make_INTERFACES_CONFIG (location_type l)
1986 return symbol_type (token::TOKEN_INTERFACES_CONFIG, std::move (l));
1993 return symbol_type (token::TOKEN_INTERFACES_CONFIG, l);
1996 #if 201103L <= YY_CPLUSPLUS
1999 make_INTERFACES (location_type l)
2001 return symbol_type (token::TOKEN_INTERFACES, std::move (l));
2011 #if 201103L <= YY_CPLUSPLUS
2014 make_RE_DETECT (location_type l)
2016 return symbol_type (token::TOKEN_RE_DETECT, std::move (l));
2026 #if 201103L <= YY_CPLUSPLUS
2029 make_LEASE_DATABASE (location_type l)
2031 return symbol_type (token::TOKEN_LEASE_DATABASE, std::move (l));
2038 return symbol_type (token::TOKEN_LEASE_DATABASE, l);
2041 #if 201103L <= YY_CPLUSPLUS
2044 make_HOSTS_DATABASE (location_type l)
2046 return symbol_type (token::TOKEN_HOSTS_DATABASE, std::move (l));
2053 return symbol_type (token::TOKEN_HOSTS_DATABASE, l);
2056 #if 201103L <= YY_CPLUSPLUS
2059 make_HOSTS_DATABASES (location_type l)
2061 return symbol_type (token::TOKEN_HOSTS_DATABASES, std::move (l));
2068 return symbol_type (token::TOKEN_HOSTS_DATABASES, l);
2071 #if 201103L <= YY_CPLUSPLUS
2074 make_TYPE (location_type l)
2076 return symbol_type (token::TOKEN_TYPE, std::move (l));
2086 #if 201103L <= YY_CPLUSPLUS
2089 make_MEMFILE (location_type l)
2091 return symbol_type (token::TOKEN_MEMFILE, std::move (l));
2101 #if 201103L <= YY_CPLUSPLUS
2104 make_MYSQL (location_type l)
2106 return symbol_type (token::TOKEN_MYSQL, std::move (l));
2116 #if 201103L <= YY_CPLUSPLUS
2119 make_POSTGRESQL (location_type l)
2121 return symbol_type (token::TOKEN_POSTGRESQL, std::move (l));
2131 #if 201103L <= YY_CPLUSPLUS
2134 make_CQL (location_type l)
2136 return symbol_type (token::TOKEN_CQL, std::move (l));
2146 #if 201103L <= YY_CPLUSPLUS
2149 make_USER (location_type l)
2151 return symbol_type (token::TOKEN_USER, std::move (l));
2161 #if 201103L <= YY_CPLUSPLUS
2164 make_PASSWORD (location_type l)
2166 return symbol_type (token::TOKEN_PASSWORD, std::move (l));
2176 #if 201103L <= YY_CPLUSPLUS
2179 make_HOST (location_type l)
2181 return symbol_type (token::TOKEN_HOST, std::move (l));
2191 #if 201103L <= YY_CPLUSPLUS
2194 make_PORT (location_type l)
2196 return symbol_type (token::TOKEN_PORT, std::move (l));
2206 #if 201103L <= YY_CPLUSPLUS
2209 make_PERSIST (location_type l)
2211 return symbol_type (token::TOKEN_PERSIST, std::move (l));
2221 #if 201103L <= YY_CPLUSPLUS
2224 make_LFC_INTERVAL (location_type l)
2226 return symbol_type (token::TOKEN_LFC_INTERVAL, std::move (l));
2233 return symbol_type (token::TOKEN_LFC_INTERVAL, l);
2236 #if 201103L <= YY_CPLUSPLUS
2239 make_READONLY (location_type l)
2241 return symbol_type (token::TOKEN_READONLY, std::move (l));
2251 #if 201103L <= YY_CPLUSPLUS
2254 make_CONNECT_TIMEOUT (location_type l)
2256 return symbol_type (token::TOKEN_CONNECT_TIMEOUT, std::move (l));
2263 return symbol_type (token::TOKEN_CONNECT_TIMEOUT, l);
2266 #if 201103L <= YY_CPLUSPLUS
2269 make_CONTACT_POINTS (location_type l)
2271 return symbol_type (token::TOKEN_CONTACT_POINTS, std::move (l));
2278 return symbol_type (token::TOKEN_CONTACT_POINTS, l);
2281 #if 201103L <= YY_CPLUSPLUS
2284 make_MAX_RECONNECT_TRIES (location_type l)
2286 return symbol_type (token::TOKEN_MAX_RECONNECT_TRIES, std::move (l));
2293 return symbol_type (token::TOKEN_MAX_RECONNECT_TRIES, l);
2296 #if 201103L <= YY_CPLUSPLUS
2299 make_RECONNECT_WAIT_TIME (location_type l)
2301 return symbol_type (token::TOKEN_RECONNECT_WAIT_TIME, std::move (l));
2308 return symbol_type (token::TOKEN_RECONNECT_WAIT_TIME, l);
2311 #if 201103L <= YY_CPLUSPLUS
2314 make_ON_FAIL (location_type l)
2316 return symbol_type (token::TOKEN_ON_FAIL, std::move (l));
2326 #if 201103L <= YY_CPLUSPLUS
2329 make_STOP_RETRY_EXIT (location_type l)
2331 return symbol_type (token::TOKEN_STOP_RETRY_EXIT, std::move (l));
2338 return symbol_type (token::TOKEN_STOP_RETRY_EXIT, l);
2341 #if 201103L <= YY_CPLUSPLUS
2344 make_SERVE_RETRY_EXIT (location_type l)
2346 return symbol_type (token::TOKEN_SERVE_RETRY_EXIT, std::move (l));
2353 return symbol_type (token::TOKEN_SERVE_RETRY_EXIT, l);
2356 #if 201103L <= YY_CPLUSPLUS
2359 make_SERVE_RETRY_CONTINUE (location_type l)
2361 return symbol_type (token::TOKEN_SERVE_RETRY_CONTINUE, std::move (l));
2368 return symbol_type (token::TOKEN_SERVE_RETRY_CONTINUE, l);
2371 #if 201103L <= YY_CPLUSPLUS
2374 make_KEYSPACE (location_type l)
2376 return symbol_type (token::TOKEN_KEYSPACE, std::move (l));
2386 #if 201103L <= YY_CPLUSPLUS
2389 make_CONSISTENCY (location_type l)
2391 return symbol_type (token::TOKEN_CONSISTENCY, std::move (l));
2401 #if 201103L <= YY_CPLUSPLUS
2404 make_SERIAL_CONSISTENCY (location_type l)
2406 return symbol_type (token::TOKEN_SERIAL_CONSISTENCY, std::move (l));
2413 return symbol_type (token::TOKEN_SERIAL_CONSISTENCY, l);
2416 #if 201103L <= YY_CPLUSPLUS
2419 make_REQUEST_TIMEOUT (location_type l)
2421 return symbol_type (token::TOKEN_REQUEST_TIMEOUT, std::move (l));
2428 return symbol_type (token::TOKEN_REQUEST_TIMEOUT, l);
2431 #if 201103L <= YY_CPLUSPLUS
2434 make_TCP_KEEPALIVE (location_type l)
2436 return symbol_type (token::TOKEN_TCP_KEEPALIVE, std::move (l));
2443 return symbol_type (token::TOKEN_TCP_KEEPALIVE, l);
2446 #if 201103L <= YY_CPLUSPLUS
2449 make_TCP_NODELAY (location_type l)
2451 return symbol_type (token::TOKEN_TCP_NODELAY, std::move (l));
2461 #if 201103L <= YY_CPLUSPLUS
2464 make_MAX_ROW_ERRORS (location_type l)
2466 return symbol_type (token::TOKEN_MAX_ROW_ERRORS, std::move (l));
2473 return symbol_type (token::TOKEN_MAX_ROW_ERRORS, l);
2476 #if 201103L <= YY_CPLUSPLUS
2479 make_PREFERRED_LIFETIME (location_type l)
2481 return symbol_type (token::TOKEN_PREFERRED_LIFETIME, std::move (l));
2488 return symbol_type (token::TOKEN_PREFERRED_LIFETIME, l);
2491 #if 201103L <= YY_CPLUSPLUS
2494 make_MIN_PREFERRED_LIFETIME (location_type l)
2496 return symbol_type (token::TOKEN_MIN_PREFERRED_LIFETIME, std::move (l));
2503 return symbol_type (token::TOKEN_MIN_PREFERRED_LIFETIME, l);
2506 #if 201103L <= YY_CPLUSPLUS
2509 make_MAX_PREFERRED_LIFETIME (location_type l)
2511 return symbol_type (token::TOKEN_MAX_PREFERRED_LIFETIME, std::move (l));
2518 return symbol_type (token::TOKEN_MAX_PREFERRED_LIFETIME, l);
2521 #if 201103L <= YY_CPLUSPLUS
2524 make_VALID_LIFETIME (location_type l)
2526 return symbol_type (token::TOKEN_VALID_LIFETIME, std::move (l));
2533 return symbol_type (token::TOKEN_VALID_LIFETIME, l);
2536 #if 201103L <= YY_CPLUSPLUS
2539 make_MIN_VALID_LIFETIME (location_type l)
2541 return symbol_type (token::TOKEN_MIN_VALID_LIFETIME, std::move (l));
2548 return symbol_type (token::TOKEN_MIN_VALID_LIFETIME, l);
2551 #if 201103L <= YY_CPLUSPLUS
2554 make_MAX_VALID_LIFETIME (location_type l)
2556 return symbol_type (token::TOKEN_MAX_VALID_LIFETIME, std::move (l));
2563 return symbol_type (token::TOKEN_MAX_VALID_LIFETIME, l);
2566 #if 201103L <= YY_CPLUSPLUS
2569 make_RENEW_TIMER (location_type l)
2571 return symbol_type (token::TOKEN_RENEW_TIMER, std::move (l));
2581 #if 201103L <= YY_CPLUSPLUS
2584 make_REBIND_TIMER (location_type l)
2586 return symbol_type (token::TOKEN_REBIND_TIMER, std::move (l));
2593 return symbol_type (token::TOKEN_REBIND_TIMER, l);
2596 #if 201103L <= YY_CPLUSPLUS
2599 make_CALCULATE_TEE_TIMES (location_type l)
2601 return symbol_type (token::TOKEN_CALCULATE_TEE_TIMES, std::move (l));
2608 return symbol_type (token::TOKEN_CALCULATE_TEE_TIMES, l);
2611 #if 201103L <= YY_CPLUSPLUS
2614 make_T1_PERCENT (location_type l)
2616 return symbol_type (token::TOKEN_T1_PERCENT, std::move (l));
2626 #if 201103L <= YY_CPLUSPLUS
2629 make_T2_PERCENT (location_type l)
2631 return symbol_type (token::TOKEN_T2_PERCENT, std::move (l));
2641 #if 201103L <= YY_CPLUSPLUS
2644 make_CACHE_THRESHOLD (location_type l)
2646 return symbol_type (token::TOKEN_CACHE_THRESHOLD, std::move (l));
2653 return symbol_type (token::TOKEN_CACHE_THRESHOLD, l);
2656 #if 201103L <= YY_CPLUSPLUS
2659 make_CACHE_MAX_AGE (location_type l)
2661 return symbol_type (token::TOKEN_CACHE_MAX_AGE, std::move (l));
2668 return symbol_type (token::TOKEN_CACHE_MAX_AGE, l);
2671 #if 201103L <= YY_CPLUSPLUS
2674 make_DECLINE_PROBATION_PERIOD (location_type l)
2676 return symbol_type (token::TOKEN_DECLINE_PROBATION_PERIOD, std::move (l));
2683 return symbol_type (token::TOKEN_DECLINE_PROBATION_PERIOD, l);
2686 #if 201103L <= YY_CPLUSPLUS
2689 make_SERVER_TAG (location_type l)
2691 return symbol_type (token::TOKEN_SERVER_TAG, std::move (l));
2701 #if 201103L <= YY_CPLUSPLUS
2704 make_STATISTIC_DEFAULT_SAMPLE_COUNT (location_type l)
2706 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT, std::move (l));
2713 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT, l);
2716 #if 201103L <= YY_CPLUSPLUS
2719 make_STATISTIC_DEFAULT_SAMPLE_AGE (location_type l)
2721 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE, std::move (l));
2728 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE, l);
2731 #if 201103L <= YY_CPLUSPLUS
2734 make_DDNS_SEND_UPDATES (location_type l)
2736 return symbol_type (token::TOKEN_DDNS_SEND_UPDATES, std::move (l));
2743 return symbol_type (token::TOKEN_DDNS_SEND_UPDATES, l);
2746 #if 201103L <= YY_CPLUSPLUS
2749 make_DDNS_OVERRIDE_NO_UPDATE (location_type l)
2751 return symbol_type (token::TOKEN_DDNS_OVERRIDE_NO_UPDATE, std::move (l));
2758 return symbol_type (token::TOKEN_DDNS_OVERRIDE_NO_UPDATE, l);
2761 #if 201103L <= YY_CPLUSPLUS
2764 make_DDNS_OVERRIDE_CLIENT_UPDATE (location_type l)
2766 return symbol_type (token::TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE, std::move (l));
2773 return symbol_type (token::TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE, l);
2776 #if 201103L <= YY_CPLUSPLUS
2779 make_DDNS_REPLACE_CLIENT_NAME (location_type l)
2781 return symbol_type (token::TOKEN_DDNS_REPLACE_CLIENT_NAME, std::move (l));
2788 return symbol_type (token::TOKEN_DDNS_REPLACE_CLIENT_NAME, l);
2791 #if 201103L <= YY_CPLUSPLUS
2794 make_DDNS_GENERATED_PREFIX (location_type l)
2796 return symbol_type (token::TOKEN_DDNS_GENERATED_PREFIX, std::move (l));
2803 return symbol_type (token::TOKEN_DDNS_GENERATED_PREFIX, l);
2806 #if 201103L <= YY_CPLUSPLUS
2809 make_DDNS_QUALIFYING_SUFFIX (location_type l)
2811 return symbol_type (token::TOKEN_DDNS_QUALIFYING_SUFFIX, std::move (l));
2818 return symbol_type (token::TOKEN_DDNS_QUALIFYING_SUFFIX, l);
2821 #if 201103L <= YY_CPLUSPLUS
2824 make_DDNS_UPDATE_ON_RENEW (location_type l)
2826 return symbol_type (token::TOKEN_DDNS_UPDATE_ON_RENEW, std::move (l));
2833 return symbol_type (token::TOKEN_DDNS_UPDATE_ON_RENEW, l);
2836 #if 201103L <= YY_CPLUSPLUS
2839 make_DDNS_USE_CONFLICT_RESOLUTION (location_type l)
2841 return symbol_type (token::TOKEN_DDNS_USE_CONFLICT_RESOLUTION, std::move (l));
2848 return symbol_type (token::TOKEN_DDNS_USE_CONFLICT_RESOLUTION, l);
2851 #if 201103L <= YY_CPLUSPLUS
2854 make_STORE_EXTENDED_INFO (location_type l)
2856 return symbol_type (token::TOKEN_STORE_EXTENDED_INFO, std::move (l));
2863 return symbol_type (token::TOKEN_STORE_EXTENDED_INFO, l);
2866 #if 201103L <= YY_CPLUSPLUS
2869 make_SUBNET6 (location_type l)
2871 return symbol_type (token::TOKEN_SUBNET6, std::move (l));
2881 #if 201103L <= YY_CPLUSPLUS
2884 make_OPTION_DEF (location_type l)
2886 return symbol_type (token::TOKEN_OPTION_DEF, std::move (l));
2896 #if 201103L <= YY_CPLUSPLUS
2899 make_OPTION_DATA (location_type l)
2901 return symbol_type (token::TOKEN_OPTION_DATA, std::move (l));
2911 #if 201103L <= YY_CPLUSPLUS
2914 make_NAME (location_type l)
2916 return symbol_type (token::TOKEN_NAME, std::move (l));
2926 #if 201103L <= YY_CPLUSPLUS
2929 make_DATA (location_type l)
2931 return symbol_type (token::TOKEN_DATA, std::move (l));
2941 #if 201103L <= YY_CPLUSPLUS
2944 make_CODE (location_type l)
2946 return symbol_type (token::TOKEN_CODE, std::move (l));
2956 #if 201103L <= YY_CPLUSPLUS
2959 make_SPACE (location_type l)
2961 return symbol_type (token::TOKEN_SPACE, std::move (l));
2971 #if 201103L <= YY_CPLUSPLUS
2974 make_CSV_FORMAT (location_type l)
2976 return symbol_type (token::TOKEN_CSV_FORMAT, std::move (l));
2986 #if 201103L <= YY_CPLUSPLUS
2989 make_ALWAYS_SEND (location_type l)
2991 return symbol_type (token::TOKEN_ALWAYS_SEND, std::move (l));
3001 #if 201103L <= YY_CPLUSPLUS
3004 make_RECORD_TYPES (location_type l)
3006 return symbol_type (token::TOKEN_RECORD_TYPES, std::move (l));
3013 return symbol_type (token::TOKEN_RECORD_TYPES, l);
3016 #if 201103L <= YY_CPLUSPLUS
3019 make_ENCAPSULATE (location_type l)
3021 return symbol_type (token::TOKEN_ENCAPSULATE, std::move (l));
3031 #if 201103L <= YY_CPLUSPLUS
3034 make_ARRAY (location_type l)
3036 return symbol_type (token::TOKEN_ARRAY, std::move (l));
3046 #if 201103L <= YY_CPLUSPLUS
3049 make_SHARED_NETWORKS (location_type l)
3051 return symbol_type (token::TOKEN_SHARED_NETWORKS, std::move (l));
3058 return symbol_type (token::TOKEN_SHARED_NETWORKS, l);
3061 #if 201103L <= YY_CPLUSPLUS
3064 make_POOLS (location_type l)
3066 return symbol_type (token::TOKEN_POOLS, std::move (l));
3076 #if 201103L <= YY_CPLUSPLUS
3079 make_POOL (location_type l)
3081 return symbol_type (token::TOKEN_POOL, std::move (l));
3091 #if 201103L <= YY_CPLUSPLUS
3094 make_PD_POOLS (location_type l)
3096 return symbol_type (token::TOKEN_PD_POOLS, std::move (l));
3106 #if 201103L <= YY_CPLUSPLUS
3109 make_PREFIX (location_type l)
3111 return symbol_type (token::TOKEN_PREFIX, std::move (l));
3121 #if 201103L <= YY_CPLUSPLUS
3124 make_PREFIX_LEN (location_type l)
3126 return symbol_type (token::TOKEN_PREFIX_LEN, std::move (l));
3136 #if 201103L <= YY_CPLUSPLUS
3139 make_EXCLUDED_PREFIX (location_type l)
3141 return symbol_type (token::TOKEN_EXCLUDED_PREFIX, std::move (l));
3148 return symbol_type (token::TOKEN_EXCLUDED_PREFIX, l);
3151 #if 201103L <= YY_CPLUSPLUS
3154 make_EXCLUDED_PREFIX_LEN (location_type l)
3156 return symbol_type (token::TOKEN_EXCLUDED_PREFIX_LEN, std::move (l));
3163 return symbol_type (token::TOKEN_EXCLUDED_PREFIX_LEN, l);
3166 #if 201103L <= YY_CPLUSPLUS
3169 make_DELEGATED_LEN (location_type l)
3171 return symbol_type (token::TOKEN_DELEGATED_LEN, std::move (l));
3178 return symbol_type (token::TOKEN_DELEGATED_LEN, l);
3181 #if 201103L <= YY_CPLUSPLUS
3184 make_USER_CONTEXT (location_type l)
3186 return symbol_type (token::TOKEN_USER_CONTEXT, std::move (l));
3193 return symbol_type (token::TOKEN_USER_CONTEXT, l);
3196 #if 201103L <= YY_CPLUSPLUS
3199 make_COMMENT (location_type l)
3201 return symbol_type (token::TOKEN_COMMENT, std::move (l));
3211 #if 201103L <= YY_CPLUSPLUS
3214 make_SUBNET (location_type l)
3216 return symbol_type (token::TOKEN_SUBNET, std::move (l));
3226 #if 201103L <= YY_CPLUSPLUS
3229 make_INTERFACE (location_type l)
3231 return symbol_type (token::TOKEN_INTERFACE, std::move (l));
3241 #if 201103L <= YY_CPLUSPLUS
3244 make_INTERFACE_ID (location_type l)
3246 return symbol_type (token::TOKEN_INTERFACE_ID, std::move (l));
3253 return symbol_type (token::TOKEN_INTERFACE_ID, l);
3256 #if 201103L <= YY_CPLUSPLUS
3259 make_ID (location_type l)
3261 return symbol_type (token::TOKEN_ID, std::move (l));
3271 #if 201103L <= YY_CPLUSPLUS
3274 make_RAPID_COMMIT (location_type l)
3276 return symbol_type (token::TOKEN_RAPID_COMMIT, std::move (l));
3283 return symbol_type (token::TOKEN_RAPID_COMMIT, l);
3286 #if 201103L <= YY_CPLUSPLUS
3289 make_RESERVATION_MODE (location_type l)
3291 return symbol_type (token::TOKEN_RESERVATION_MODE, std::move (l));
3298 return symbol_type (token::TOKEN_RESERVATION_MODE, l);
3301 #if 201103L <= YY_CPLUSPLUS
3304 make_DISABLED (location_type l)
3306 return symbol_type (token::TOKEN_DISABLED, std::move (l));
3316 #if 201103L <= YY_CPLUSPLUS
3319 make_OUT_OF_POOL (location_type l)
3321 return symbol_type (token::TOKEN_OUT_OF_POOL, std::move (l));
3331 #if 201103L <= YY_CPLUSPLUS
3334 make_GLOBAL (location_type l)
3336 return symbol_type (token::TOKEN_GLOBAL, std::move (l));
3346 #if 201103L <= YY_CPLUSPLUS
3349 make_ALL (location_type l)
3351 return symbol_type (token::TOKEN_ALL, std::move (l));
3361 #if 201103L <= YY_CPLUSPLUS
3364 make_RESERVATIONS_GLOBAL (location_type l)
3366 return symbol_type (token::TOKEN_RESERVATIONS_GLOBAL, std::move (l));
3373 return symbol_type (token::TOKEN_RESERVATIONS_GLOBAL, l);
3376 #if 201103L <= YY_CPLUSPLUS
3379 make_RESERVATIONS_IN_SUBNET (location_type l)
3381 return symbol_type (token::TOKEN_RESERVATIONS_IN_SUBNET, std::move (l));
3388 return symbol_type (token::TOKEN_RESERVATIONS_IN_SUBNET, l);
3391 #if 201103L <= YY_CPLUSPLUS
3394 make_RESERVATIONS_OUT_OF_POOL (location_type l)
3396 return symbol_type (token::TOKEN_RESERVATIONS_OUT_OF_POOL, std::move (l));
3403 return symbol_type (token::TOKEN_RESERVATIONS_OUT_OF_POOL, l);
3406 #if 201103L <= YY_CPLUSPLUS
3409 make_MAC_SOURCES (location_type l)
3411 return symbol_type (token::TOKEN_MAC_SOURCES, std::move (l));
3421 #if 201103L <= YY_CPLUSPLUS
3424 make_RELAY_SUPPLIED_OPTIONS (location_type l)
3426 return symbol_type (token::TOKEN_RELAY_SUPPLIED_OPTIONS, std::move (l));
3433 return symbol_type (token::TOKEN_RELAY_SUPPLIED_OPTIONS, l);
3436 #if 201103L <= YY_CPLUSPLUS
3439 make_HOST_RESERVATION_IDENTIFIERS (location_type l)
3441 return symbol_type (token::TOKEN_HOST_RESERVATION_IDENTIFIERS, std::move (l));
3448 return symbol_type (token::TOKEN_HOST_RESERVATION_IDENTIFIERS, l);
3451 #if 201103L <= YY_CPLUSPLUS
3454 make_SANITY_CHECKS (location_type l)
3456 return symbol_type (token::TOKEN_SANITY_CHECKS, std::move (l));
3463 return symbol_type (token::TOKEN_SANITY_CHECKS, l);
3466 #if 201103L <= YY_CPLUSPLUS
3469 make_LEASE_CHECKS (location_type l)
3471 return symbol_type (token::TOKEN_LEASE_CHECKS, std::move (l));
3478 return symbol_type (token::TOKEN_LEASE_CHECKS, l);
3481 #if 201103L <= YY_CPLUSPLUS
3484 make_CLIENT_CLASSES (location_type l)
3486 return symbol_type (token::TOKEN_CLIENT_CLASSES, std::move (l));
3493 return symbol_type (token::TOKEN_CLIENT_CLASSES, l);
3496 #if 201103L <= YY_CPLUSPLUS
3499 make_REQUIRE_CLIENT_CLASSES (location_type l)
3501 return symbol_type (token::TOKEN_REQUIRE_CLIENT_CLASSES, std::move (l));
3508 return symbol_type (token::TOKEN_REQUIRE_CLIENT_CLASSES, l);
3511 #if 201103L <= YY_CPLUSPLUS
3514 make_TEST (location_type l)
3516 return symbol_type (token::TOKEN_TEST, std::move (l));
3526 #if 201103L <= YY_CPLUSPLUS
3529 make_ONLY_IF_REQUIRED (location_type l)
3531 return symbol_type (token::TOKEN_ONLY_IF_REQUIRED, std::move (l));
3538 return symbol_type (token::TOKEN_ONLY_IF_REQUIRED, l);
3541 #if 201103L <= YY_CPLUSPLUS
3544 make_CLIENT_CLASS (location_type l)
3546 return symbol_type (token::TOKEN_CLIENT_CLASS, std::move (l));
3553 return symbol_type (token::TOKEN_CLIENT_CLASS, l);
3556 #if 201103L <= YY_CPLUSPLUS
3559 make_RESERVATIONS (location_type l)
3561 return symbol_type (token::TOKEN_RESERVATIONS, std::move (l));
3568 return symbol_type (token::TOKEN_RESERVATIONS, l);
3571 #if 201103L <= YY_CPLUSPLUS
3574 make_IP_ADDRESSES (location_type l)
3576 return symbol_type (token::TOKEN_IP_ADDRESSES, std::move (l));
3583 return symbol_type (token::TOKEN_IP_ADDRESSES, l);
3586 #if 201103L <= YY_CPLUSPLUS
3589 make_PREFIXES (location_type l)
3591 return symbol_type (token::TOKEN_PREFIXES, std::move (l));
3601 #if 201103L <= YY_CPLUSPLUS
3604 make_DUID (location_type l)
3606 return symbol_type (token::TOKEN_DUID, std::move (l));
3616 #if 201103L <= YY_CPLUSPLUS
3619 make_HW_ADDRESS (location_type l)
3621 return symbol_type (token::TOKEN_HW_ADDRESS, std::move (l));
3631 #if 201103L <= YY_CPLUSPLUS
3634 make_HOSTNAME (location_type l)
3636 return symbol_type (token::TOKEN_HOSTNAME, std::move (l));
3646 #if 201103L <= YY_CPLUSPLUS
3649 make_FLEX_ID (location_type l)
3651 return symbol_type (token::TOKEN_FLEX_ID, std::move (l));
3661 #if 201103L <= YY_CPLUSPLUS
3664 make_RELAY (location_type l)
3666 return symbol_type (token::TOKEN_RELAY, std::move (l));
3676 #if 201103L <= YY_CPLUSPLUS
3679 make_IP_ADDRESS (location_type l)
3681 return symbol_type (token::TOKEN_IP_ADDRESS, std::move (l));
3691 #if 201103L <= YY_CPLUSPLUS
3694 make_HOOKS_LIBRARIES (location_type l)
3696 return symbol_type (token::TOKEN_HOOKS_LIBRARIES, std::move (l));
3703 return symbol_type (token::TOKEN_HOOKS_LIBRARIES, l);
3706 #if 201103L <= YY_CPLUSPLUS
3709 make_LIBRARY (location_type l)
3711 return symbol_type (token::TOKEN_LIBRARY, std::move (l));
3721 #if 201103L <= YY_CPLUSPLUS
3724 make_PARAMETERS (location_type l)
3726 return symbol_type (token::TOKEN_PARAMETERS, std::move (l));
3736 #if 201103L <= YY_CPLUSPLUS
3739 make_EXPIRED_LEASES_PROCESSING (location_type l)
3741 return symbol_type (token::TOKEN_EXPIRED_LEASES_PROCESSING, std::move (l));
3748 return symbol_type (token::TOKEN_EXPIRED_LEASES_PROCESSING, l);
3751 #if 201103L <= YY_CPLUSPLUS
3754 make_RECLAIM_TIMER_WAIT_TIME (location_type l)
3756 return symbol_type (token::TOKEN_RECLAIM_TIMER_WAIT_TIME, std::move (l));
3763 return symbol_type (token::TOKEN_RECLAIM_TIMER_WAIT_TIME, l);
3766 #if 201103L <= YY_CPLUSPLUS
3769 make_FLUSH_RECLAIMED_TIMER_WAIT_TIME (location_type l)
3771 return symbol_type (token::TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME, std::move (l));
3778 return symbol_type (token::TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME, l);
3781 #if 201103L <= YY_CPLUSPLUS
3784 make_HOLD_RECLAIMED_TIME (location_type l)
3786 return symbol_type (token::TOKEN_HOLD_RECLAIMED_TIME, std::move (l));
3793 return symbol_type (token::TOKEN_HOLD_RECLAIMED_TIME, l);
3796 #if 201103L <= YY_CPLUSPLUS
3799 make_MAX_RECLAIM_LEASES (location_type l)
3801 return symbol_type (token::TOKEN_MAX_RECLAIM_LEASES, std::move (l));
3808 return symbol_type (token::TOKEN_MAX_RECLAIM_LEASES, l);
3811 #if 201103L <= YY_CPLUSPLUS
3814 make_MAX_RECLAIM_TIME (location_type l)
3816 return symbol_type (token::TOKEN_MAX_RECLAIM_TIME, std::move (l));
3823 return symbol_type (token::TOKEN_MAX_RECLAIM_TIME, l);
3826 #if 201103L <= YY_CPLUSPLUS
3829 make_UNWARNED_RECLAIM_CYCLES (location_type l)
3831 return symbol_type (token::TOKEN_UNWARNED_RECLAIM_CYCLES, std::move (l));
3838 return symbol_type (token::TOKEN_UNWARNED_RECLAIM_CYCLES, l);
3841 #if 201103L <= YY_CPLUSPLUS
3844 make_SERVER_ID (location_type l)
3846 return symbol_type (token::TOKEN_SERVER_ID, std::move (l));
3856 #if 201103L <= YY_CPLUSPLUS
3859 make_LLT (location_type l)
3861 return symbol_type (token::TOKEN_LLT, std::move (l));
3871 #if 201103L <= YY_CPLUSPLUS
3874 make_EN (location_type l)
3876 return symbol_type (token::TOKEN_EN, std::move (l));
3886 #if 201103L <= YY_CPLUSPLUS
3889 make_LL (location_type l)
3891 return symbol_type (token::TOKEN_LL, std::move (l));
3901 #if 201103L <= YY_CPLUSPLUS
3904 make_IDENTIFIER (location_type l)
3906 return symbol_type (token::TOKEN_IDENTIFIER, std::move (l));
3916 #if 201103L <= YY_CPLUSPLUS
3919 make_HTYPE (location_type l)
3921 return symbol_type (token::TOKEN_HTYPE, std::move (l));
3931 #if 201103L <= YY_CPLUSPLUS
3934 make_TIME (location_type l)
3936 return symbol_type (token::TOKEN_TIME, std::move (l));
3946 #if 201103L <= YY_CPLUSPLUS
3949 make_ENTERPRISE_ID (location_type l)
3951 return symbol_type (token::TOKEN_ENTERPRISE_ID, std::move (l));
3958 return symbol_type (token::TOKEN_ENTERPRISE_ID, l);
3961 #if 201103L <= YY_CPLUSPLUS
3964 make_DHCP4O6_PORT (location_type l)
3966 return symbol_type (token::TOKEN_DHCP4O6_PORT, std::move (l));
3973 return symbol_type (token::TOKEN_DHCP4O6_PORT, l);
3976 #if 201103L <= YY_CPLUSPLUS
3979 make_DHCP_MULTI_THREADING (location_type l)
3981 return symbol_type (token::TOKEN_DHCP_MULTI_THREADING, std::move (l));
3988 return symbol_type (token::TOKEN_DHCP_MULTI_THREADING, l);
3991 #if 201103L <= YY_CPLUSPLUS
3994 make_ENABLE_MULTI_THREADING (location_type l)
3996 return symbol_type (token::TOKEN_ENABLE_MULTI_THREADING, std::move (l));
4003 return symbol_type (token::TOKEN_ENABLE_MULTI_THREADING, l);
4006 #if 201103L <= YY_CPLUSPLUS
4009 make_THREAD_POOL_SIZE (location_type l)
4011 return symbol_type (token::TOKEN_THREAD_POOL_SIZE, std::move (l));
4018 return symbol_type (token::TOKEN_THREAD_POOL_SIZE, l);
4021 #if 201103L <= YY_CPLUSPLUS
4024 make_PACKET_QUEUE_SIZE (location_type l)
4026 return symbol_type (token::TOKEN_PACKET_QUEUE_SIZE, std::move (l));
4033 return symbol_type (token::TOKEN_PACKET_QUEUE_SIZE, l);
4036 #if 201103L <= YY_CPLUSPLUS
4039 make_CONTROL_SOCKET (location_type l)
4041 return symbol_type (token::TOKEN_CONTROL_SOCKET, std::move (l));
4048 return symbol_type (token::TOKEN_CONTROL_SOCKET, l);
4051 #if 201103L <= YY_CPLUSPLUS
4054 make_SOCKET_TYPE (location_type l)
4056 return symbol_type (token::TOKEN_SOCKET_TYPE, std::move (l));
4066 #if 201103L <= YY_CPLUSPLUS
4069 make_SOCKET_NAME (location_type l)
4071 return symbol_type (token::TOKEN_SOCKET_NAME, std::move (l));
4081 #if 201103L <= YY_CPLUSPLUS
4084 make_DHCP_QUEUE_CONTROL (location_type l)
4086 return symbol_type (token::TOKEN_DHCP_QUEUE_CONTROL, std::move (l));
4093 return symbol_type (token::TOKEN_DHCP_QUEUE_CONTROL, l);
4096 #if 201103L <= YY_CPLUSPLUS
4099 make_ENABLE_QUEUE (location_type l)
4101 return symbol_type (token::TOKEN_ENABLE_QUEUE, std::move (l));
4108 return symbol_type (token::TOKEN_ENABLE_QUEUE, l);
4111 #if 201103L <= YY_CPLUSPLUS
4114 make_QUEUE_TYPE (location_type l)
4116 return symbol_type (token::TOKEN_QUEUE_TYPE, std::move (l));
4126 #if 201103L <= YY_CPLUSPLUS
4129 make_CAPACITY (location_type l)
4131 return symbol_type (token::TOKEN_CAPACITY, std::move (l));
4141 #if 201103L <= YY_CPLUSPLUS
4144 make_DHCP_DDNS (location_type l)
4146 return symbol_type (token::TOKEN_DHCP_DDNS, std::move (l));
4156 #if 201103L <= YY_CPLUSPLUS
4159 make_ENABLE_UPDATES (location_type l)
4161 return symbol_type (token::TOKEN_ENABLE_UPDATES, std::move (l));
4168 return symbol_type (token::TOKEN_ENABLE_UPDATES, l);
4171 #if 201103L <= YY_CPLUSPLUS
4174 make_QUALIFYING_SUFFIX (location_type l)
4176 return symbol_type (token::TOKEN_QUALIFYING_SUFFIX, std::move (l));
4183 return symbol_type (token::TOKEN_QUALIFYING_SUFFIX, l);
4186 #if 201103L <= YY_CPLUSPLUS
4189 make_SERVER_IP (location_type l)
4191 return symbol_type (token::TOKEN_SERVER_IP, std::move (l));
4201 #if 201103L <= YY_CPLUSPLUS
4204 make_SERVER_PORT (location_type l)
4206 return symbol_type (token::TOKEN_SERVER_PORT, std::move (l));
4216 #if 201103L <= YY_CPLUSPLUS
4219 make_SENDER_IP (location_type l)
4221 return symbol_type (token::TOKEN_SENDER_IP, std::move (l));
4231 #if 201103L <= YY_CPLUSPLUS
4234 make_SENDER_PORT (location_type l)
4236 return symbol_type (token::TOKEN_SENDER_PORT, std::move (l));
4246 #if 201103L <= YY_CPLUSPLUS
4249 make_MAX_QUEUE_SIZE (location_type l)
4251 return symbol_type (token::TOKEN_MAX_QUEUE_SIZE, std::move (l));
4258 return symbol_type (token::TOKEN_MAX_QUEUE_SIZE, l);
4261 #if 201103L <= YY_CPLUSPLUS
4264 make_NCR_PROTOCOL (location_type l)
4266 return symbol_type (token::TOKEN_NCR_PROTOCOL, std::move (l));
4273 return symbol_type (token::TOKEN_NCR_PROTOCOL, l);
4276 #if 201103L <= YY_CPLUSPLUS
4279 make_NCR_FORMAT (location_type l)
4281 return symbol_type (token::TOKEN_NCR_FORMAT, std::move (l));
4291 #if 201103L <= YY_CPLUSPLUS
4294 make_OVERRIDE_NO_UPDATE (location_type l)
4296 return symbol_type (token::TOKEN_OVERRIDE_NO_UPDATE, std::move (l));
4303 return symbol_type (token::TOKEN_OVERRIDE_NO_UPDATE, l);
4306 #if 201103L <= YY_CPLUSPLUS
4309 make_OVERRIDE_CLIENT_UPDATE (location_type l)
4311 return symbol_type (token::TOKEN_OVERRIDE_CLIENT_UPDATE, std::move (l));
4318 return symbol_type (token::TOKEN_OVERRIDE_CLIENT_UPDATE, l);
4321 #if 201103L <= YY_CPLUSPLUS
4324 make_REPLACE_CLIENT_NAME (location_type l)
4326 return symbol_type (token::TOKEN_REPLACE_CLIENT_NAME, std::move (l));
4333 return symbol_type (token::TOKEN_REPLACE_CLIENT_NAME, l);
4336 #if 201103L <= YY_CPLUSPLUS
4339 make_GENERATED_PREFIX (location_type l)
4341 return symbol_type (token::TOKEN_GENERATED_PREFIX, std::move (l));
4348 return symbol_type (token::TOKEN_GENERATED_PREFIX, l);
4351 #if 201103L <= YY_CPLUSPLUS
4354 make_UDP (location_type l)
4356 return symbol_type (token::TOKEN_UDP, std::move (l));
4366 #if 201103L <= YY_CPLUSPLUS
4369 make_TCP (location_type l)
4371 return symbol_type (token::TOKEN_TCP, std::move (l));
4381 #if 201103L <= YY_CPLUSPLUS
4384 make_JSON (location_type l)
4386 return symbol_type (token::TOKEN_JSON, std::move (l));
4396 #if 201103L <= YY_CPLUSPLUS
4399 make_WHEN_PRESENT (location_type l)
4401 return symbol_type (token::TOKEN_WHEN_PRESENT, std::move (l));
4408 return symbol_type (token::TOKEN_WHEN_PRESENT, l);
4411 #if 201103L <= YY_CPLUSPLUS
4414 make_NEVER (location_type l)
4416 return symbol_type (token::TOKEN_NEVER, std::move (l));
4426 #if 201103L <= YY_CPLUSPLUS
4429 make_ALWAYS (location_type l)
4431 return symbol_type (token::TOKEN_ALWAYS, std::move (l));
4441 #if 201103L <= YY_CPLUSPLUS
4444 make_WHEN_NOT_PRESENT (location_type l)
4446 return symbol_type (token::TOKEN_WHEN_NOT_PRESENT, std::move (l));
4453 return symbol_type (token::TOKEN_WHEN_NOT_PRESENT, l);
4456 #if 201103L <= YY_CPLUSPLUS
4459 make_HOSTNAME_CHAR_SET (location_type l)
4461 return symbol_type (token::TOKEN_HOSTNAME_CHAR_SET, std::move (l));
4468 return symbol_type (token::TOKEN_HOSTNAME_CHAR_SET, l);
4471 #if 201103L <= YY_CPLUSPLUS
4474 make_HOSTNAME_CHAR_REPLACEMENT (location_type l)
4476 return symbol_type (token::TOKEN_HOSTNAME_CHAR_REPLACEMENT, std::move (l));
4483 return symbol_type (token::TOKEN_HOSTNAME_CHAR_REPLACEMENT, l);
4486 #if 201103L <= YY_CPLUSPLUS
4489 make_IP_RESERVATIONS_UNIQUE (location_type l)
4491 return symbol_type (token::TOKEN_IP_RESERVATIONS_UNIQUE, std::move (l));
4498 return symbol_type (token::TOKEN_IP_RESERVATIONS_UNIQUE, l);
4501 #if 201103L <= YY_CPLUSPLUS
4504 make_LOGGERS (location_type l)
4506 return symbol_type (token::TOKEN_LOGGERS, std::move (l));
4516 #if 201103L <= YY_CPLUSPLUS
4519 make_OUTPUT_OPTIONS (location_type l)
4521 return symbol_type (token::TOKEN_OUTPUT_OPTIONS, std::move (l));
4528 return symbol_type (token::TOKEN_OUTPUT_OPTIONS, l);
4531 #if 201103L <= YY_CPLUSPLUS
4534 make_OUTPUT (location_type l)
4536 return symbol_type (token::TOKEN_OUTPUT, std::move (l));
4546 #if 201103L <= YY_CPLUSPLUS
4549 make_DEBUGLEVEL (location_type l)
4551 return symbol_type (token::TOKEN_DEBUGLEVEL, std::move (l));
4561 #if 201103L <= YY_CPLUSPLUS
4564 make_SEVERITY (location_type l)
4566 return symbol_type (token::TOKEN_SEVERITY, std::move (l));
4576 #if 201103L <= YY_CPLUSPLUS
4579 make_FLUSH (location_type l)
4581 return symbol_type (token::TOKEN_FLUSH, std::move (l));
4591 #if 201103L <= YY_CPLUSPLUS
4594 make_MAXSIZE (location_type l)
4596 return symbol_type (token::TOKEN_MAXSIZE, std::move (l));
4606 #if 201103L <= YY_CPLUSPLUS
4609 make_MAXVER (location_type l)
4611 return symbol_type (token::TOKEN_MAXVER, std::move (l));
4621 #if 201103L <= YY_CPLUSPLUS
4624 make_PATTERN (location_type l)
4626 return symbol_type (token::TOKEN_PATTERN, std::move (l));
4636 #if 201103L <= YY_CPLUSPLUS
4639 make_COMPATIBILITY (location_type l)
4641 return symbol_type (token::TOKEN_COMPATIBILITY, std::move (l));
4648 return symbol_type (token::TOKEN_COMPATIBILITY, l);
4651 #if 201103L <= YY_CPLUSPLUS
4654 make_LENIENT_OPTION_PARSING (location_type l)
4656 return symbol_type (token::TOKEN_LENIENT_OPTION_PARSING, std::move (l));
4663 return symbol_type (token::TOKEN_LENIENT_OPTION_PARSING, l);
4666 #if 201103L <= YY_CPLUSPLUS
4669 make_TOPLEVEL_JSON (location_type l)
4671 return symbol_type (token::TOKEN_TOPLEVEL_JSON, std::move (l));
4678 return symbol_type (token::TOKEN_TOPLEVEL_JSON, l);
4681 #if 201103L <= YY_CPLUSPLUS
4684 make_TOPLEVEL_DHCP6 (location_type l)
4686 return symbol_type (token::TOKEN_TOPLEVEL_DHCP6, std::move (l));
4693 return symbol_type (token::TOKEN_TOPLEVEL_DHCP6, l);
4696 #if 201103L <= YY_CPLUSPLUS
4699 make_SUB_DHCP6 (location_type l)
4701 return symbol_type (token::TOKEN_SUB_DHCP6, std::move (l));
4711 #if 201103L <= YY_CPLUSPLUS
4714 make_SUB_INTERFACES6 (location_type l)
4716 return symbol_type (token::TOKEN_SUB_INTERFACES6, std::move (l));
4723 return symbol_type (token::TOKEN_SUB_INTERFACES6, l);
4726 #if 201103L <= YY_CPLUSPLUS
4729 make_SUB_SUBNET6 (location_type l)
4731 return symbol_type (token::TOKEN_SUB_SUBNET6, std::move (l));
4741 #if 201103L <= YY_CPLUSPLUS
4744 make_SUB_POOL6 (location_type l)
4746 return symbol_type (token::TOKEN_SUB_POOL6, std::move (l));
4756 #if 201103L <= YY_CPLUSPLUS
4759 make_SUB_PD_POOL (location_type l)
4761 return symbol_type (token::TOKEN_SUB_PD_POOL, std::move (l));
4771 #if 201103L <= YY_CPLUSPLUS
4774 make_SUB_RESERVATION (location_type l)
4776 return symbol_type (token::TOKEN_SUB_RESERVATION, std::move (l));
4783 return symbol_type (token::TOKEN_SUB_RESERVATION, l);
4786 #if 201103L <= YY_CPLUSPLUS
4789 make_SUB_OPTION_DEFS (location_type l)
4791 return symbol_type (token::TOKEN_SUB_OPTION_DEFS, std::move (l));
4798 return symbol_type (token::TOKEN_SUB_OPTION_DEFS, l);
4801 #if 201103L <= YY_CPLUSPLUS
4804 make_SUB_OPTION_DEF (location_type l)
4806 return symbol_type (token::TOKEN_SUB_OPTION_DEF, std::move (l));
4813 return symbol_type (token::TOKEN_SUB_OPTION_DEF, l);
4816 #if 201103L <= YY_CPLUSPLUS
4819 make_SUB_OPTION_DATA (location_type l)
4821 return symbol_type (token::TOKEN_SUB_OPTION_DATA, std::move (l));
4828 return symbol_type (token::TOKEN_SUB_OPTION_DATA, l);
4831 #if 201103L <= YY_CPLUSPLUS
4834 make_SUB_HOOKS_LIBRARY (location_type l)
4836 return symbol_type (token::TOKEN_SUB_HOOKS_LIBRARY, std::move (l));
4843 return symbol_type (token::TOKEN_SUB_HOOKS_LIBRARY, l);
4846 #if 201103L <= YY_CPLUSPLUS
4849 make_SUB_DHCP_DDNS (location_type l)
4851 return symbol_type (token::TOKEN_SUB_DHCP_DDNS, std::move (l));
4858 return symbol_type (token::TOKEN_SUB_DHCP_DDNS, l);
4861 #if 201103L <= YY_CPLUSPLUS
4864 make_SUB_CONFIG_CONTROL (location_type l)
4866 return symbol_type (token::TOKEN_SUB_CONFIG_CONTROL, std::move (l));
4873 return symbol_type (token::TOKEN_SUB_CONFIG_CONTROL, l);
4876 #if 201103L <= YY_CPLUSPLUS
4879 make_STRING (std::string v, location_type l)
4881 return symbol_type (token::TOKEN_STRING, std::move (v), std::move (l));
4891 #if 201103L <= YY_CPLUSPLUS
4894 make_INTEGER (int64_t v, location_type l)
4896 return symbol_type (token::TOKEN_INTEGER, std::move (v), std::move (l));
4906 #if 201103L <= YY_CPLUSPLUS
4909 make_FLOAT (
double v, location_type l)
4911 return symbol_type (token::TOKEN_FLOAT, std::move (v), std::move (l));
4921 #if 201103L <= YY_CPLUSPLUS
4924 make_BOOLEAN (
bool v, location_type l)
4926 return symbol_type (token::TOKEN_BOOLEAN, std::move (v), std::move (l));
4949 int expected_tokens (symbol_kind_type yyarg[],
int yyargn)
const;
4957 #if YY_CPLUSPLUS < 201103L
4966 typedef short state_type;
4969 int yy_syntax_error_arguments_ (
const context& yyctx,
4970 symbol_kind_type yyarg[],
int yyargn)
const;
4974 virtual std::string yysyntax_error_ (
const context& yyctx)
const;
4978 static state_type yy_lr_goto_state_ (state_type yystate,
int yysym);
4982 static bool yy_pact_value_is_default_ (
int yyvalue);
4986 static bool yy_table_value_is_error_ (
int yyvalue);
4988 static const short yypact_ninf_;
4989 static const signed char yytable_ninf_;
4994 static symbol_kind_type yytranslate_ (
int t);
4997 static std::string yytnamerr_ (
const char *yystr);
5000 static const char*
const yytname_[];
5006 static const short yypact_[];
5011 static const short yydefact_[];
5014 static const short yypgoto_[];
5017 static const short yydefgoto_[];
5022 static const short yytable_[];
5024 static const short yycheck_[];
5028 static const short yystos_[];
5031 static const short yyr1_[];
5034 static const signed char yyr2_[];
5039 static const short yyrline_[];
5041 virtual void yy_reduce_print_ (
int r)
const;
5043 virtual void yy_stack_print_ ()
const;
5048 std::ostream* yycdebug_;
5053 template <
typename Base>
5054 void yy_print_ (std::ostream& yyo,
const basic_symbol<Base>& yysym)
const;
5061 template <
typename Base>
5062 void yy_destroy_ (
const char* yymsg, basic_symbol<Base>& yysym)
const;
5072 typedef state_type kind_type;
5078 by_state (const by_state& that) YY_NOEXCEPT;
5081 void clear () YY_NOEXCEPT;
5084 void move (by_state& that);
5088 symbol_kind_type kind () const YY_NOEXCEPT;
5092 enum { empty_state = 0 };
5100 struct stack_symbol_type : basic_symbol<by_state>
5103 typedef basic_symbol<by_state> super_type;
5105 stack_symbol_type ();
5107 stack_symbol_type (
YY_RVREF (stack_symbol_type) that);
5109 stack_symbol_type (state_type s,
YY_MOVE_REF (symbol_type) sym);
5110 #if YY_CPLUSPLUS < 201103L
5111 stack_symbol_type& operator= (stack_symbol_type& that);
5117 stack_symbol_type& operator= (
const stack_symbol_type& that);
5122 template <
typename T,
typename S = std::vector<T> >
5127 typedef typename S::iterator iterator;
5128 typedef typename S::const_iterator const_iterator;
5129 typedef typename S::size_type size_type;
5130 typedef typename std::ptrdiff_t index_type;
5132 stack (size_type n = 200)
5136 #if 201103L <= YY_CPLUSPLUS
5137 stack (
const stack&) =
delete;
5140 stack& operator= (
const stack&) =
delete;
5147 operator[] (index_type i)
const
5149 return seq_[size_type (size () - 1 - i)];
5156 operator[] (index_type i)
5158 return seq_[size_type (size () - 1 - i)];
5167 seq_.push_back (T ());
5168 operator[] (0).move (t);
5190 return index_type (seq_.size ());
5197 return seq_.begin ();
5211 slice (
const stack& stack, index_type range)
5217 operator[] (index_type i)
const
5219 return stack_[range_ - i];
5223 const stack& stack_;
5228 #if YY_CPLUSPLUS < 201103L
5229 stack (
const stack&);
5232 stack& operator= (
const stack&);
5240 typedef stack<stack_symbol_type> stack_type;
5243 stack_type yystack_;
5250 void yypush_ (
const char* m,
YY_MOVE_REF (stack_symbol_type) sym);
5258 void yypush_ (
const char* m, state_type s,
YY_MOVE_REF (symbol_type) sym);
5261 void yypop_ (
int n = 1);
5279 Dhcp6Parser::yytranslate_ (
int t)
5287 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5288 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5289 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5290 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5291 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5292 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5293 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5294 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5295 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5296 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5297 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5298 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5299 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5300 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5301 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5302 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5303 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5304 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5305 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5306 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5307 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5308 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5309 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5310 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5311 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
5312 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
5313 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
5314 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
5315 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
5316 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
5317 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
5318 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
5319 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
5320 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
5321 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
5322 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
5323 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
5324 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
5325 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
5326 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
5327 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
5328 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
5329 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
5330 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
5331 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
5332 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
5333 205, 206, 207, 208, 209, 210, 211
5336 const int code_max = 466;
5339 return symbol_kind::S_YYEOF;
5340 else if (t <= code_max)
5341 return YY_CAST (symbol_kind_type, translate_table[t]);
5343 return symbol_kind::S_YYUNDEF;
5347 template <
typename Base>
5351 , location (that.location)
5353 switch (this->kind ())
5390 template <
typename Base>
5394 return this->kind ();
5397 template <
typename Base>
5404 template <
typename Base>
5408 super_type::move (s);
5409 switch (this->kind ())
5451 #if 201103L <= YY_CPLUSPLUS
5454 : kind_ (that.kind_)
5462 : kind_ (that.kind_)
5467 : kind_ (yytranslate_ (t))
5496 return this->kind ();
5499 #line 14 "dhcp6_parser.yy"
5501 #line 5502 "dhcp6_parser.h"
5506 #endif // !YY_PARSER6_DHCP6_PARSER_H_INCLUDED
static symbol_type make_USER(const location_type &l)
symbol_kind_type kind_
The symbol kind.
static symbol_type make_READONLY(const location_type &l)
static symbol_type make_STRING(const std::string &v, const location_type &l)
static symbol_type make_STATISTIC_DEFAULT_SAMPLE_COUNT(const location_type &l)
syntax_error(const location_type &l, const std::string &m)
A buffer to store and retrieve objects.
symbol_kind_type type_get() const YY_NOEXCEPT
Backward compatibility (Bison 3.6).
static symbol_type make_SUB_CONFIG_CONTROL(const location_type &l)
static symbol_type make_SUBNET(const location_type &l)
static symbol_type make_CONNECT_TIMEOUT(const location_type &l)
~basic_symbol()
Destroy the symbol.
static symbol_type make_SUB_POOL6(const location_type &l)
static symbol_type make_STORE_EXTENDED_INFO(const location_type &l)
static symbol_type make_DDNS_QUALIFYING_SUFFIX(const location_type &l)
static symbol_type make_MEMFILE(const location_type &l)
static symbol_type make_ALWAYS_SEND(const location_type &l)
void move(basic_symbol &s)
Destructive move, s is emptied into this.
static symbol_type make_DHCP4O6_PORT(const location_type &l)
const T & as() const YY_NOEXCEPT
Const accessor to a built T (for printer).
semantic_type value
The semantic value.
~semantic_type() YY_NOEXCEPT
Destruction, allowed only if empty.
static symbol_type make_SENDER_PORT(const location_type &l)
token_kind_type kind_type
The symbol kind as needed by the constructor.
static symbol_type make_TOPLEVEL_DHCP6(const location_type &l)
static symbol_type make_OVERRIDE_CLIENT_UPDATE(const location_type &l)
static symbol_type make_T1_PERCENT(const location_type &l)
token_kind_type yytokentype
Backward compatibility alias (Bison 3.6).
static symbol_type make_ONLY_IF_REQUIRED(const location_type &l)
T & build()
Instantiate an empty T in here.
static symbol_type make_MAXSIZE(const location_type &l)
static symbol_type make_PASSWORD(const location_type &l)
static symbol_type make_IP_ADDRESS(const location_type &l)
token::yytokentype token_kind_type
Token kind, as returned by yylex.
static symbol_type make_SUB_OPTION_DEFS(const location_type &l)
static symbol_type make_CONFIG_FETCH_WAIT_TIME(const location_type &l)
static symbol_type make_ENABLE_UPDATES(const location_type &l)
static symbol_type make_ALWAYS(const location_type &l)
static symbol_type make_LLT(const location_type &l)
static symbol_type make_RECONNECT_WAIT_TIME(const location_type &l)
T & emplace(const T &t)
Instantiate a T in here from t.
void move(by_kind &that)
Steal the symbol kind from that.
static symbol_type make_FLUSH(const location_type &l)
static symbol_type make_ENTERPRISE_ID(const location_type &l)
static symbol_type make_DDNS_USE_CONFLICT_RESOLUTION(const location_type &l)
static symbol_type make_INTERFACE_ID(const location_type &l)
static symbol_type make_BOOLEAN(const bool &v, const location_type &l)
static symbol_type make_CLIENT_CLASSES(const location_type &l)
static symbol_type make_HOSTS_DATABASES(const location_type &l)
T & emplace()
Instantiate an empty T in here.
static symbol_type make_SUB_SUBNET6(const location_type &l)
std::string name() const YY_NOEXCEPT
The user-facing name of this symbol.
static symbol_type make_REQUEST_TIMEOUT(const location_type &l)
static symbol_type make_RESERVATION_MODE(const location_type &l)
static symbol_type make_CONTACT_POINTS(const location_type &l)
static symbol_type make_SERVER_IP(const location_type &l)
static symbol_type make_NCR_FORMAT(const location_type &l)
static symbol_type make_RELAY_SUPPLIED_OPTIONS(const location_type &l)
basic_symbol(typename Base::kind_type t, const location_type &l)
Constructors for typed symbols.
semantic_type(YY_RVREF(T) t)
Construct and fill.
void clear() YY_NOEXCEPT
Destroy contents, and record that is empty.
basic_symbol(typename Base::kind_type t, const ElementPtr &v, const location_type &l)
void copy(const self_type &that)
Copy the content of that to this.
static symbol_type make_CSV_FORMAT(const location_type &l)
symbol_type()
Empty symbol.
static symbol_type make_NAME(const location_type &l)
location_type location
The location.
static symbol_type make_CLIENT_CLASS(const location_type &l)
static symbol_type make_SUB_INTERFACES6(const location_type &l)
boost::shared_ptr< Element > ElementPtr
static symbol_type make_POSTGRESQL(const location_type &l)
static symbol_type make_STATISTIC_DEFAULT_SAMPLE_AGE(const location_type &l)
static symbol_type make_CQL(const location_type &l)
static symbol_type make_IDENTIFIER(const location_type &l)
Evaluation context, an interface to the expression evaluation.
static symbol_type make_HW_ADDRESS(const location_type &l)
static symbol_type make_SUB_OPTION_DATA(const location_type &l)
static symbol_type make_RESERVATIONS_GLOBAL(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_MAC_SOURCES(const location_type &l)
static symbol_type make_RESERVATIONS(const location_type &l)
static symbol_type make_INTERFACE(const location_type &l)
void destroy()
Destroy the stored T.
static symbol_type make_PD_POOLS(const location_type &l)
static symbol_type make_EN(const location_type &l)
static symbol_type make_HOST_RESERVATION_IDENTIFIERS(const location_type &l)
static symbol_type make_DHCP_QUEUE_CONTROL(const location_type &l)
static symbol_type make_GENERATED_PREFIX(const location_type &l)
static symbol_type make_SUB_DHCP6(const location_type &l)
static symbol_type make_WHEN_NOT_PRESENT(const location_type &l)
static symbol_type make_HOLD_RECLAIMED_TIME(const location_type &l)
static symbol_type make_LSQUARE_BRACKET(const location_type &l)
static symbol_type make_END(const location_type &l)
static symbol_type make_DDNS_SEND_UPDATES(const location_type &l)
static symbol_type make_INTERFACES(const location_type &l)
static symbol_type make_ENCAPSULATE(const location_type &l)
Present a slice of the top of a stack.
static symbol_type make_POOL(const location_type &l)
by_kind()
Default constructor.
void move(self_type &that)
Move the content of that to this.
static symbol_type make_HOSTS_DATABASE(const location_type &l)
static symbol_type make_TCP(const location_type &l)
static symbol_type make_KEYSPACE(const location_type &l)
static symbol_type make_CACHE_MAX_AGE(const location_type &l)
basic_symbol(typename Base::kind_type t, const std::string &v, const location_type &l)
token_kind_type token_type
Backward compatibility alias (Bison 3.6).
static symbol_type make_HOSTNAME(const location_type &l)
syntax_error(const syntax_error &s)
slice(const stack &stack, index_type range)
Base super_type
Alias to Base.
static symbol_type make_TYPE(const location_type &l)
static symbol_type make_SOCKET_TYPE(const location_type &l)
static symbol_type make_LIBRARY(const location_type &l)
static symbol_type make_TCP_NODELAY(const location_type &l)
static symbol_type make_CODE(const location_type &l)
static symbol_type make_INTEGER(const int64_t &v, const location_type &l)
static symbol_type make_ENABLE_QUEUE(const location_type &l)
static symbol_type make_CALCULATE_TEE_TIMES(const location_type &l)
basic_symbol< by_kind > super_type
Superclass.
static symbol_type make_SERVER_TAG(const location_type &l)
static symbol_type make_SPACE(const location_type &l)
static symbol_type make_DHCP_DDNS(const location_type &l)
static symbol_type make_EXCLUDED_PREFIX(const location_type &l)
static symbol_type make_DDNS_OVERRIDE_CLIENT_UPDATE(const location_type &l)
static symbol_type make_QUEUE_TYPE(const location_type &l)
static symbol_type make_COMMENT(const location_type &l)
static symbol_type make_HOSTNAME_CHAR_REPLACEMENT(const location_type &l)
static symbol_type make_DISABLED(const location_type &l)
static symbol_type make_QUALIFYING_SUFFIX(const location_type &l)
T & build(const T &t)
Instantiate a T in here from t.
static symbol_type make_ARRAY(const location_type &l)
static symbol_type make_SHARED_NETWORKS(const location_type &l)
static symbol_type make_OUTPUT(const location_type &l)
static symbol_type make_LENIENT_OPTION_PARSING(const location_type &l)
static symbol_type make_MAX_RECLAIM_LEASES(const location_type &l)
static symbol_type make_CONSISTENCY(const location_type &l)
static symbol_type make_SUB_OPTION_DEF(const location_type &l)
"External" symbols: returned by the scanner.
basic_symbol(typename Base::kind_type t, const bool &v, const location_type &l)
static symbol_type make_FLOAT(const double &v, const location_type &l)
static symbol_type make_PERSIST(const location_type &l)
static symbol_type make_DHCP6(const location_type &l)
static symbol_type make_CAPACITY(const location_type &l)
static symbol_type make_USER_CONTEXT(const location_type &l)
static symbol_type make_MIN_VALID_LIFETIME(const location_type &l)
static symbol_type make_DATA(const location_type &l)
basic_symbol(typename Base::kind_type t, const int64_t &v, const location_type &l)
semantic_type self_type
Type of *this.
static symbol_type make_DECLINE_PROBATION_PERIOD(const location_type &l)
int debug_level_type
Type for debugging levels.
basic_symbol(typename Base::kind_type t, const double &v, const location_type &l)
static symbol_type make_RESERVATIONS_IN_SUBNET(const location_type &l)
static symbol_type make_PREFIX_LEN(const location_type &l)
static symbol_type make_RAPID_COMMIT(const location_type &l)
static symbol_type make_CACHE_THRESHOLD(const location_type &l)
static symbol_type make_IP_ADDRESSES(const location_type &l)
static symbol_type make_OUTPUT_OPTIONS(const location_type &l)
static symbol_type make_PREFIX(const location_type &l)
static symbol_type make_TIME(const location_type &l)
static symbol_type make_DUID(const location_type &l)
Syntax errors thrown from user actions.
static symbol_type make_SUBNET6(const location_type &l)
static symbol_type make_MAX_QUEUE_SIZE(const location_type &l)
static symbol_type make_SUB_HOOKS_LIBRARY(const location_type &l)
static symbol_type make_RENEW_TIMER(const location_type &l)
static symbol_type make_HOSTNAME_CHAR_SET(const location_type &l)
symbol_kind_type type_get() const YY_NOEXCEPT
Backward compatibility (Bison 3.6).
static symbol_type make_DDNS_OVERRIDE_NO_UPDATE(const location_type &l)
static symbol_type make_SOCKET_NAME(const location_type &l)
static symbol_type make_FLEX_ID(const location_type &l)
static symbol_type make_SUB_DHCP_DDNS(const location_type &l)
static symbol_type make_REQUIRE_CLIENT_CLASSES(const location_type &l)
static symbol_type make_PREFERRED_LIFETIME(const location_type &l)
static symbol_type make_HOST(const location_type &l)
static symbol_type make_PATTERN(const location_type &l)
static symbol_type make_ON_FAIL(const location_type &l)
T & as() YY_NOEXCEPT
Accessor to a built T.
Defines the logger used by the top-level component of kea-dhcp-ddns.
static symbol_type make_LFC_INTERVAL(const location_type &l)
symbol_kind_type token() const YY_NOEXCEPT
static symbol_type make_TCP_KEEPALIVE(const location_type &l)
static symbol_type make_VALID_LIFETIME(const location_type &l)
static symbol_type make_ENABLE_MULTI_THREADING(const location_type &l)
static symbol_type make_LEASE_DATABASE(const location_type &l)
static symbol_type make_CONFIG_DATABASES(const location_type &l)
Type access provider for token (enum) based symbols.
static symbol_type make_OVERRIDE_NO_UPDATE(const location_type &l)
static symbol_type make_DEBUGLEVEL(const location_type &l)
static symbol_type make_THREAD_POOL_SIZE(const location_type &l)
static symbol_type make_SERIAL_CONSISTENCY(const location_type &l)
static symbol_type make_DDNS_UPDATE_ON_RENEW(const location_type &l)
static symbol_type make_RESERVATIONS_OUT_OF_POOL(const location_type &l)
static symbol_type make_RCURLY_BRACKET(const location_type &l)
static symbol_type make_MAXVER(const location_type &l)
static symbol_type make_SERVER_PORT(const location_type &l)
static symbol_type make_EXCLUDED_PREFIX_LEN(const location_type &l)
static symbol_type make_HOOKS_LIBRARIES(const location_type &l)
static symbol_type make_MAX_PREFERRED_LIFETIME(const location_type &l)
static symbol_type make_INTERFACES_CONFIG(const location_type &l)
static symbol_type make_MYSQL(const location_type &l)
static symbol_type make_ID(const location_type &l)
static symbol_type make_MIN_PREFERRED_LIFETIME(const location_type &l)
#define YY_ATTRIBUTE_PURE
static symbol_type make_OPTION_DEF(const location_type &l)
static symbol_type make_PARSER6_error(const location_type &l)
static symbol_type make_SERVER_ID(const location_type &l)
static symbol_type make_IP_RESERVATIONS_UNIQUE(const location_type &l)
const location_type & location() const YY_NOEXCEPT
static symbol_type make_RELAY(const location_type &l)
static symbol_type make_TOPLEVEL_JSON(const location_type &l)
const symbol_type & lookahead() const YY_NOEXCEPT
static symbol_type make_UDP(const location_type &l)
static symbol_type make_T2_PERCENT(const location_type &l)
static symbol_type make_PACKET_QUEUE_SIZE(const location_type &l)
static symbol_type make_RECORD_TYPES(const location_type &l)
Forward declaration of the ParserContext class.
static symbol_type make_EXPIRED_LEASES_PROCESSING(const location_type &l)
static symbol_type make_DDNS_REPLACE_CLIENT_NAME(const location_type &l)
#define YY_MOVE_REF(Type)
static symbol_type make_LL(const location_type &l)
static symbol_type make_COMPATIBILITY(const location_type &l)
static symbol_type make_RE_DETECT(const location_type &l)
static symbol_type make_GLOBAL(const location_type &l)
static symbol_type make_SERVE_RETRY_CONTINUE(const location_type &l)
static symbol_type make_MAX_RECLAIM_TIME(const location_type &l)
symbol_kind::symbol_kind_type symbol_kind_type
(Internal) symbol kind.
basic_symbol()
Default constructor.
static symbol_type make_OUT_OF_POOL(const location_type &l)
static symbol_type make_ALL(const location_type &l)
static symbol_type make_SENDER_IP(const location_type &l)
static symbol_type make_SUB_PD_POOL(const location_type &l)
static symbol_type make_NULL_TYPE(const location_type &l)
symbol_kind_type kind() const YY_NOEXCEPT
The (internal) type number (corresponding to type).
#define YY_CAST(Type, Val)
static symbol_type make_UNWARNED_RECLAIM_CYCLES(const location_type &l)
static symbol_type make_JSON(const location_type &l)
static symbol_type make_LOGGERS(const location_type &l)
static symbol_type make_DHCP_MULTI_THREADING(const location_type &l)
static symbol_type make_SERVE_RETRY_EXIT(const location_type &l)
static symbol_type make_CONTROL_SOCKET(const location_type &l)
static symbol_type make_SUB_RESERVATION(const location_type &l)
static symbol_type make_PARAMETERS(const location_type &l)
static symbol_type make_DATA_DIRECTORY(const location_type &l)
static symbol_type make_OPTION_DATA(const location_type &l)
static symbol_type make_DDNS_GENERATED_PREFIX(const location_type &l)
static symbol_type make_LEASE_CHECKS(const location_type &l)
static symbol_type make_PREFIXES(const location_type &l)
static symbol_type make_FLUSH_RECLAIMED_TIMER_WAIT_TIME(const location_type &l)
static symbol_type make_SANITY_CHECKS(const location_type &l)
static symbol_type make_TEST(const location_type &l)
static symbol_type make_STOP_RETRY_EXIT(const location_type &l)
static symbol_type make_POOLS(const location_type &l)
static symbol_type make_HTYPE(const location_type &l)
static symbol_type make_RSQUARE_BRACKET(const location_type &l)
semantic_type() YY_NOEXCEPT
Empty construction.
static symbol_type make_NEVER(const location_type &l)
static symbol_type make_COLON(const location_type &l)
bool empty() const YY_NOEXCEPT
Whether empty.
void swap(self_type &that) YY_NOEXCEPT
Swap the content with that, of same type.
static symbol_type make_PARSER6_UNDEF(const location_type &l)
static symbol_type make_PORT(const location_type &l)
void clear() YY_NOEXCEPT
Record that this symbol is empty.
static symbol_type make_MAX_RECONNECT_TRIES(const location_type &l)
static symbol_type make_LCURLY_BRACKET(const location_type &l)
static symbol_type make_WHEN_PRESENT(const location_type &l)
static symbol_type make_CONFIG_CONTROL(const location_type &l)
static symbol_type make_MAX_VALID_LIFETIME(const location_type &l)
static symbol_type make_DELEGATED_LEN(const location_type &l)
static symbol_type make_NCR_PROTOCOL(const location_type &l)
static symbol_type make_SEVERITY(const location_type &l)
static symbol_type make_REBIND_TIMER(const location_type &l)
static symbol_type make_RECLAIM_TIMER_WAIT_TIME(const location_type &l)
long double yyalign_me
Strongest alignment constraints.
static symbol_type make_REPLACE_CLIENT_NAME(const location_type &l)
static symbol_type make_MAX_ROW_ERRORS(const location_type &l)
static symbol_type make_COMMA(const location_type &l)