220# pragma GCC message "bison: do not #define PARSER6_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);
439 char dummy2[
sizeof (bool)];
442 char dummy3[
sizeof (double)];
445 char dummy4[
sizeof (int64_t)];
448 char dummy5[
sizeof (std::string)];
452 enum { size =
sizeof (union_type) };
464 const std::type_info *yytypeid_;
478 : std::runtime_error (m)
483 : std::runtime_error (s.what ())
497 TOKEN_PARSER6_EMPTY = -2,
499 TOKEN_PARSER6_error = 256,
500 TOKEN_PARSER6_UNDEF = 257,
503 TOKEN_LSQUARE_BRACKET = 260,
504 TOKEN_RSQUARE_BRACKET = 261,
505 TOKEN_LCURLY_BRACKET = 262,
506 TOKEN_RCURLY_BRACKET = 263,
507 TOKEN_NULL_TYPE = 264,
509 TOKEN_DATA_DIRECTORY = 266,
510 TOKEN_CONFIG_CONTROL = 267,
511 TOKEN_CONFIG_DATABASES = 268,
512 TOKEN_CONFIG_FETCH_WAIT_TIME = 269,
513 TOKEN_INTERFACES_CONFIG = 270,
514 TOKEN_INTERFACES = 271,
515 TOKEN_RE_DETECT = 272,
516 TOKEN_SERVICE_SOCKETS_REQUIRE_ALL = 273,
517 TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME = 274,
518 TOKEN_SERVICE_SOCKETS_MAX_RETRIES = 275,
519 TOKEN_LEASE_DATABASE = 276,
520 TOKEN_HOSTS_DATABASE = 277,
521 TOKEN_HOSTS_DATABASES = 278,
525 TOKEN_POSTGRESQL = 282,
527 TOKEN_PASSWORD = 284,
531 TOKEN_LFC_INTERVAL = 288,
532 TOKEN_READONLY = 289,
533 TOKEN_CONNECT_TIMEOUT = 290,
534 TOKEN_READ_TIMEOUT = 291,
535 TOKEN_WRITE_TIMEOUT = 292,
536 TOKEN_TCP_USER_TIMEOUT = 293,
537 TOKEN_MAX_RECONNECT_TRIES = 294,
538 TOKEN_RECONNECT_WAIT_TIME = 295,
540 TOKEN_STOP_RETRY_EXIT = 297,
541 TOKEN_SERVE_RETRY_EXIT = 298,
542 TOKEN_SERVE_RETRY_CONTINUE = 299,
543 TOKEN_RETRY_ON_STARTUP = 300,
544 TOKEN_MAX_ROW_ERRORS = 301,
545 TOKEN_TRUST_ANCHOR = 302,
546 TOKEN_CERT_FILE = 303,
547 TOKEN_KEY_FILE = 304,
548 TOKEN_CIPHER_LIST = 305,
549 TOKEN_PREFERRED_LIFETIME = 306,
550 TOKEN_MIN_PREFERRED_LIFETIME = 307,
551 TOKEN_MAX_PREFERRED_LIFETIME = 308,
552 TOKEN_VALID_LIFETIME = 309,
553 TOKEN_MIN_VALID_LIFETIME = 310,
554 TOKEN_MAX_VALID_LIFETIME = 311,
555 TOKEN_RENEW_TIMER = 312,
556 TOKEN_REBIND_TIMER = 313,
557 TOKEN_CALCULATE_TEE_TIMES = 314,
558 TOKEN_T1_PERCENT = 315,
559 TOKEN_T2_PERCENT = 316,
560 TOKEN_CACHE_THRESHOLD = 317,
561 TOKEN_CACHE_MAX_AGE = 318,
562 TOKEN_DECLINE_PROBATION_PERIOD = 319,
563 TOKEN_SERVER_TAG = 320,
564 TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT = 321,
565 TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE = 322,
566 TOKEN_DDNS_SEND_UPDATES = 323,
567 TOKEN_DDNS_OVERRIDE_NO_UPDATE = 324,
568 TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE = 325,
569 TOKEN_DDNS_REPLACE_CLIENT_NAME = 326,
570 TOKEN_DDNS_GENERATED_PREFIX = 327,
571 TOKEN_DDNS_QUALIFYING_SUFFIX = 328,
572 TOKEN_DDNS_UPDATE_ON_RENEW = 329,
573 TOKEN_DDNS_USE_CONFLICT_RESOLUTION = 330,
574 TOKEN_DDNS_TTL_PERCENT = 331,
575 TOKEN_STORE_EXTENDED_INFO = 332,
577 TOKEN_OPTION_DEF = 334,
578 TOKEN_OPTION_DATA = 335,
583 TOKEN_CSV_FORMAT = 340,
584 TOKEN_ALWAYS_SEND = 341,
585 TOKEN_NEVER_SEND = 342,
586 TOKEN_RECORD_TYPES = 343,
587 TOKEN_ENCAPSULATE = 344,
589 TOKEN_PARKED_PACKET_LIMIT = 346,
590 TOKEN_ALLOCATOR = 347,
591 TOKEN_PD_ALLOCATOR = 348,
592 TOKEN_DDNS_CONFLICT_RESOLUTION_MODE = 349,
593 TOKEN_CHECK_WITH_DHCID = 350,
594 TOKEN_NO_CHECK_WITH_DHCID = 351,
595 TOKEN_CHECK_EXISTS_WITH_DHCID = 352,
596 TOKEN_NO_CHECK_WITHOUT_DHCID = 353,
597 TOKEN_SHARED_NETWORKS = 354,
600 TOKEN_PD_POOLS = 357,
602 TOKEN_PREFIX_LEN = 359,
603 TOKEN_EXCLUDED_PREFIX = 360,
604 TOKEN_EXCLUDED_PREFIX_LEN = 361,
605 TOKEN_DELEGATED_LEN = 362,
606 TOKEN_USER_CONTEXT = 363,
609 TOKEN_INTERFACE = 366,
610 TOKEN_INTERFACE_ID = 367,
612 TOKEN_RAPID_COMMIT = 369,
613 TOKEN_RESERVATIONS_GLOBAL = 370,
614 TOKEN_RESERVATIONS_IN_SUBNET = 371,
615 TOKEN_RESERVATIONS_OUT_OF_POOL = 372,
616 TOKEN_MAC_SOURCES = 373,
617 TOKEN_RELAY_SUPPLIED_OPTIONS = 374,
618 TOKEN_HOST_RESERVATION_IDENTIFIERS = 375,
619 TOKEN_SANITY_CHECKS = 376,
620 TOKEN_LEASE_CHECKS = 377,
621 TOKEN_EXTENDED_INFO_CHECKS = 378,
622 TOKEN_CLIENT_CLASSES = 379,
623 TOKEN_REQUIRE_CLIENT_CLASSES = 380,
625 TOKEN_TEMPLATE_TEST = 382,
626 TOKEN_ONLY_IF_REQUIRED = 383,
627 TOKEN_CLIENT_CLASS = 384,
629 TOKEN_RESERVATIONS = 386,
630 TOKEN_IP_ADDRESSES = 387,
631 TOKEN_PREFIXES = 388,
633 TOKEN_HW_ADDRESS = 390,
634 TOKEN_HOSTNAME = 391,
637 TOKEN_HOOKS_LIBRARIES = 394,
639 TOKEN_PARAMETERS = 396,
640 TOKEN_EXPIRED_LEASES_PROCESSING = 397,
641 TOKEN_RECLAIM_TIMER_WAIT_TIME = 398,
642 TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 399,
643 TOKEN_HOLD_RECLAIMED_TIME = 400,
644 TOKEN_MAX_RECLAIM_LEASES = 401,
645 TOKEN_MAX_RECLAIM_TIME = 402,
646 TOKEN_UNWARNED_RECLAIM_CYCLES = 403,
647 TOKEN_SERVER_ID = 404,
651 TOKEN_IDENTIFIER = 408,
654 TOKEN_ENTERPRISE_ID = 411,
655 TOKEN_DHCP4O6_PORT = 412,
656 TOKEN_DHCP_MULTI_THREADING = 413,
657 TOKEN_ENABLE_MULTI_THREADING = 414,
658 TOKEN_THREAD_POOL_SIZE = 415,
659 TOKEN_PACKET_QUEUE_SIZE = 416,
660 TOKEN_CONTROL_SOCKET = 417,
661 TOKEN_SOCKET_TYPE = 418,
662 TOKEN_SOCKET_NAME = 419,
663 TOKEN_DHCP_QUEUE_CONTROL = 420,
664 TOKEN_ENABLE_QUEUE = 421,
665 TOKEN_QUEUE_TYPE = 422,
666 TOKEN_CAPACITY = 423,
667 TOKEN_DHCP_DDNS = 424,
668 TOKEN_ENABLE_UPDATES = 425,
669 TOKEN_SERVER_IP = 426,
670 TOKEN_SERVER_PORT = 427,
671 TOKEN_SENDER_IP = 428,
672 TOKEN_SENDER_PORT = 429,
673 TOKEN_MAX_QUEUE_SIZE = 430,
674 TOKEN_NCR_PROTOCOL = 431,
675 TOKEN_NCR_FORMAT = 432,
679 TOKEN_WHEN_PRESENT = 436,
682 TOKEN_WHEN_NOT_PRESENT = 439,
683 TOKEN_HOSTNAME_CHAR_SET = 440,
684 TOKEN_HOSTNAME_CHAR_REPLACEMENT = 441,
685 TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP = 442,
686 TOKEN_IP_RESERVATIONS_UNIQUE = 443,
687 TOKEN_RESERVATIONS_LOOKUP_FIRST = 444,
689 TOKEN_OUTPUT_OPTIONS = 446,
691 TOKEN_DEBUGLEVEL = 448,
692 TOKEN_SEVERITY = 449,
697 TOKEN_COMPATIBILITY = 454,
698 TOKEN_LENIENT_OPTION_PARSING = 455,
699 TOKEN_TOPLEVEL_JSON = 456,
700 TOKEN_TOPLEVEL_DHCP6 = 457,
701 TOKEN_SUB_DHCP6 = 458,
702 TOKEN_SUB_INTERFACES6 = 459,
703 TOKEN_SUB_SUBNET6 = 460,
704 TOKEN_SUB_POOL6 = 461,
705 TOKEN_SUB_PD_POOL = 462,
706 TOKEN_SUB_RESERVATION = 463,
707 TOKEN_SUB_OPTION_DEFS = 464,
708 TOKEN_SUB_OPTION_DEF = 465,
709 TOKEN_SUB_OPTION_DATA = 466,
710 TOKEN_SUB_HOOKS_LIBRARY = 467,
711 TOKEN_SUB_DHCP_DDNS = 468,
712 TOKEN_SUB_CONFIG_CONTROL = 469,
740 S_LSQUARE_BRACKET = 5,
741 S_RSQUARE_BRACKET = 6,
742 S_LCURLY_BRACKET = 7,
743 S_RCURLY_BRACKET = 8,
746 S_DATA_DIRECTORY = 11,
747 S_CONFIG_CONTROL = 12,
748 S_CONFIG_DATABASES = 13,
749 S_CONFIG_FETCH_WAIT_TIME = 14,
750 S_INTERFACES_CONFIG = 15,
753 S_SERVICE_SOCKETS_REQUIRE_ALL = 18,
754 S_SERVICE_SOCKETS_RETRY_WAIT_TIME = 19,
755 S_SERVICE_SOCKETS_MAX_RETRIES = 20,
756 S_LEASE_DATABASE = 21,
757 S_HOSTS_DATABASE = 22,
758 S_HOSTS_DATABASES = 23,
770 S_CONNECT_TIMEOUT = 35,
772 S_WRITE_TIMEOUT = 37,
773 S_TCP_USER_TIMEOUT = 38,
774 S_MAX_RECONNECT_TRIES = 39,
775 S_RECONNECT_WAIT_TIME = 40,
777 S_STOP_RETRY_EXIT = 42,
778 S_SERVE_RETRY_EXIT = 43,
779 S_SERVE_RETRY_CONTINUE = 44,
780 S_RETRY_ON_STARTUP = 45,
781 S_MAX_ROW_ERRORS = 46,
786 S_PREFERRED_LIFETIME = 51,
787 S_MIN_PREFERRED_LIFETIME = 52,
788 S_MAX_PREFERRED_LIFETIME = 53,
789 S_VALID_LIFETIME = 54,
790 S_MIN_VALID_LIFETIME = 55,
791 S_MAX_VALID_LIFETIME = 56,
794 S_CALCULATE_TEE_TIMES = 59,
797 S_CACHE_THRESHOLD = 62,
798 S_CACHE_MAX_AGE = 63,
799 S_DECLINE_PROBATION_PERIOD = 64,
801 S_STATISTIC_DEFAULT_SAMPLE_COUNT = 66,
802 S_STATISTIC_DEFAULT_SAMPLE_AGE = 67,
803 S_DDNS_SEND_UPDATES = 68,
804 S_DDNS_OVERRIDE_NO_UPDATE = 69,
805 S_DDNS_OVERRIDE_CLIENT_UPDATE = 70,
806 S_DDNS_REPLACE_CLIENT_NAME = 71,
807 S_DDNS_GENERATED_PREFIX = 72,
808 S_DDNS_QUALIFYING_SUFFIX = 73,
809 S_DDNS_UPDATE_ON_RENEW = 74,
810 S_DDNS_USE_CONFLICT_RESOLUTION = 75,
811 S_DDNS_TTL_PERCENT = 76,
812 S_STORE_EXTENDED_INFO = 77,
826 S_PARKED_PACKET_LIMIT = 91,
829 S_DDNS_CONFLICT_RESOLUTION_MODE = 94,
830 S_CHECK_WITH_DHCID = 95,
831 S_NO_CHECK_WITH_DHCID = 96,
832 S_CHECK_EXISTS_WITH_DHCID = 97,
833 S_NO_CHECK_WITHOUT_DHCID = 98,
834 S_SHARED_NETWORKS = 99,
840 S_EXCLUDED_PREFIX = 105,
841 S_EXCLUDED_PREFIX_LEN = 106,
842 S_DELEGATED_LEN = 107,
843 S_USER_CONTEXT = 108,
847 S_INTERFACE_ID = 112,
849 S_RAPID_COMMIT = 114,
850 S_RESERVATIONS_GLOBAL = 115,
851 S_RESERVATIONS_IN_SUBNET = 116,
852 S_RESERVATIONS_OUT_OF_POOL = 117,
854 S_RELAY_SUPPLIED_OPTIONS = 119,
855 S_HOST_RESERVATION_IDENTIFIERS = 120,
856 S_SANITY_CHECKS = 121,
857 S_LEASE_CHECKS = 122,
858 S_EXTENDED_INFO_CHECKS = 123,
859 S_CLIENT_CLASSES = 124,
860 S_REQUIRE_CLIENT_CLASSES = 125,
862 S_TEMPLATE_TEST = 127,
863 S_ONLY_IF_REQUIRED = 128,
864 S_CLIENT_CLASS = 129,
866 S_RESERVATIONS = 131,
867 S_IP_ADDRESSES = 132,
874 S_HOOKS_LIBRARIES = 139,
877 S_EXPIRED_LEASES_PROCESSING = 142,
878 S_RECLAIM_TIMER_WAIT_TIME = 143,
879 S_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 144,
880 S_HOLD_RECLAIMED_TIME = 145,
881 S_MAX_RECLAIM_LEASES = 146,
882 S_MAX_RECLAIM_TIME = 147,
883 S_UNWARNED_RECLAIM_CYCLES = 148,
891 S_ENTERPRISE_ID = 156,
892 S_DHCP4O6_PORT = 157,
893 S_DHCP_MULTI_THREADING = 158,
894 S_ENABLE_MULTI_THREADING = 159,
895 S_THREAD_POOL_SIZE = 160,
896 S_PACKET_QUEUE_SIZE = 161,
897 S_CONTROL_SOCKET = 162,
900 S_DHCP_QUEUE_CONTROL = 165,
901 S_ENABLE_QUEUE = 166,
905 S_ENABLE_UPDATES = 170,
910 S_MAX_QUEUE_SIZE = 175,
911 S_NCR_PROTOCOL = 176,
916 S_WHEN_PRESENT = 181,
919 S_WHEN_NOT_PRESENT = 184,
920 S_HOSTNAME_CHAR_SET = 185,
921 S_HOSTNAME_CHAR_REPLACEMENT = 186,
922 S_EARLY_GLOBAL_RESERVATIONS_LOOKUP = 187,
923 S_IP_RESERVATIONS_UNIQUE = 188,
924 S_RESERVATIONS_LOOKUP_FIRST = 189,
926 S_OUTPUT_OPTIONS = 191,
934 S_COMPATIBILITY = 199,
935 S_LENIENT_OPTION_PARSING = 200,
936 S_TOPLEVEL_JSON = 201,
937 S_TOPLEVEL_DHCP6 = 202,
939 S_SUB_INTERFACES6 = 204,
943 S_SUB_RESERVATION = 208,
944 S_SUB_OPTION_DEFS = 209,
945 S_SUB_OPTION_DEF = 210,
946 S_SUB_OPTION_DATA = 211,
947 S_SUB_HOOKS_LIBRARY = 212,
948 S_SUB_DHCP_DDNS = 213,
949 S_SUB_CONFIG_CONTROL = 214,
976 S_not_empty_map = 241,
977 S_list_generic = 242,
979 S_list_content = 244,
980 S_not_empty_list = 245,
981 S_list_strings = 246,
983 S_list_strings_content = 248,
984 S_not_empty_list_strings = 249,
985 S_unknown_map_entry = 250,
988 S_global_object = 253,
990 S_global_object_comma = 255,
993 S_global_params = 258,
994 S_global_param = 259,
995 S_data_directory = 260,
997 S_preferred_lifetime = 262,
998 S_min_preferred_lifetime = 263,
999 S_max_preferred_lifetime = 264,
1000 S_valid_lifetime = 265,
1001 S_min_valid_lifetime = 266,
1002 S_max_valid_lifetime = 267,
1003 S_renew_timer = 268,
1004 S_rebind_timer = 269,
1005 S_calculate_tee_times = 270,
1008 S_cache_threshold = 273,
1009 S_cache_max_age = 274,
1010 S_decline_probation_period = 275,
1011 S_ddns_send_updates = 276,
1012 S_ddns_override_no_update = 277,
1013 S_ddns_override_client_update = 278,
1014 S_ddns_replace_client_name = 279,
1016 S_ddns_replace_client_name_value = 281,
1017 S_ddns_generated_prefix = 282,
1019 S_ddns_qualifying_suffix = 284,
1021 S_ddns_update_on_renew = 286,
1022 S_ddns_use_conflict_resolution = 287,
1023 S_ddns_conflict_resolution_mode = 288,
1025 S_ddns_conflict_resolution_mode_value = 290,
1026 S_ddns_ttl_percent = 291,
1027 S_hostname_char_set = 292,
1029 S_hostname_char_replacement = 294,
1031 S_store_extended_info = 296,
1032 S_statistic_default_sample_count = 297,
1033 S_statistic_default_sample_age = 298,
1036 S_parked_packet_limit = 301,
1039 S_pd_allocator = 304,
1041 S_early_global_reservations_lookup = 306,
1042 S_ip_reservations_unique = 307,
1043 S_reservations_lookup_first = 308,
1044 S_interfaces_config = 309,
1046 S_sub_interfaces6 = 311,
1048 S_interfaces_config_params = 313,
1049 S_interfaces_config_param = 314,
1050 S_interfaces_list = 315,
1053 S_service_sockets_require_all = 318,
1054 S_service_sockets_retry_wait_time = 319,
1055 S_service_sockets_max_retries = 320,
1056 S_lease_database = 321,
1058 S_hosts_database = 323,
1060 S_hosts_databases = 325,
1062 S_database_list = 327,
1063 S_not_empty_database_list = 328,
1066 S_database_map_params = 331,
1067 S_database_map_param = 332,
1068 S_database_type = 333,
1081 S_lfc_interval = 346,
1083 S_connect_timeout = 348,
1084 S_read_timeout = 349,
1085 S_write_timeout = 350,
1086 S_tcp_user_timeout = 351,
1087 S_reconnect_wait_time = 352,
1090 S_on_fail_mode = 355,
1091 S_retry_on_startup = 356,
1092 S_max_row_errors = 357,
1093 S_max_reconnect_tries = 358,
1094 S_trust_anchor = 359,
1100 S_cipher_list = 365,
1102 S_sanity_checks = 367,
1104 S_sanity_checks_params = 369,
1105 S_sanity_checks_param = 370,
1106 S_lease_checks = 371,
1108 S_extended_info_checks = 373,
1110 S_mac_sources = 375,
1112 S_mac_sources_list = 377,
1113 S_mac_sources_value = 378,
1116 S_host_reservation_identifiers = 381,
1118 S_host_reservation_identifiers_list = 383,
1119 S_host_reservation_identifier = 384,
1120 S_hw_address_id = 385,
1122 S_relay_supplied_options = 387,
1124 S_dhcp_multi_threading = 389,
1126 S_multi_threading_params = 391,
1127 S_multi_threading_param = 392,
1128 S_enable_multi_threading = 393,
1129 S_thread_pool_size = 394,
1130 S_packet_queue_size = 395,
1131 S_hooks_libraries = 396,
1133 S_hooks_libraries_list = 398,
1134 S_not_empty_hooks_libraries_list = 399,
1135 S_hooks_library = 400,
1137 S_sub_hooks_library = 402,
1139 S_hooks_params = 404,
1140 S_hooks_param = 405,
1145 S_expired_leases_processing = 410,
1147 S_expired_leases_params = 412,
1148 S_expired_leases_param = 413,
1149 S_reclaim_timer_wait_time = 414,
1150 S_flush_reclaimed_timer_wait_time = 415,
1151 S_hold_reclaimed_time = 416,
1152 S_max_reclaim_leases = 417,
1153 S_max_reclaim_time = 418,
1154 S_unwarned_reclaim_cycles = 419,
1155 S_subnet6_list = 420,
1157 S_subnet6_list_content = 422,
1158 S_not_empty_subnet6_list = 423,
1161 S_sub_subnet6 = 426,
1163 S_subnet6_params = 428,
1164 S_subnet6_param = 429,
1169 S_interface_id = 434,
1171 S_client_class = 436,
1173 S_require_client_classes = 438,
1175 S_reservations_global = 440,
1176 S_reservations_in_subnet = 441,
1177 S_reservations_out_of_pool = 442,
1179 S_rapid_commit = 444,
1180 S_shared_networks = 445,
1182 S_shared_networks_content = 447,
1183 S_shared_networks_list = 448,
1184 S_shared_network = 449,
1186 S_shared_network_params = 451,
1187 S_shared_network_param = 452,
1188 S_option_def_list = 453,
1190 S_sub_option_def_list = 455,
1192 S_option_def_list_content = 457,
1193 S_not_empty_option_def_list = 458,
1194 S_option_def_entry = 459,
1196 S_sub_option_def = 461,
1198 S_option_def_params = 463,
1199 S_not_empty_option_def_params = 464,
1200 S_option_def_param = 465,
1201 S_option_def_name = 466,
1203 S_option_def_code = 468,
1204 S_option_def_type = 469,
1206 S_option_def_record_types = 471,
1210 S_option_def_space = 475,
1211 S_option_def_encapsulate = 476,
1213 S_option_def_array = 478,
1214 S_option_data_list = 479,
1216 S_option_data_list_content = 481,
1217 S_not_empty_option_data_list = 482,
1218 S_option_data_entry = 483,
1220 S_sub_option_data = 485,
1222 S_option_data_params = 487,
1223 S_not_empty_option_data_params = 488,
1224 S_option_data_param = 489,
1225 S_option_data_name = 490,
1226 S_option_data_data = 491,
1228 S_option_data_code = 493,
1229 S_option_data_space = 494,
1230 S_option_data_csv_format = 495,
1231 S_option_data_always_send = 496,
1232 S_option_data_never_send = 497,
1235 S_pools_list_content = 500,
1236 S_not_empty_pools_list = 501,
1237 S_pool_list_entry = 502,
1241 S_pool_params = 506,
1246 S_user_context = 511,
1250 S_pd_pools_list = 515,
1252 S_pd_pools_list_content = 517,
1253 S_not_empty_pd_pools_list = 518,
1254 S_pd_pool_entry = 519,
1256 S_sub_pd_pool = 521,
1258 S_pd_pool_params = 523,
1259 S_pd_pool_param = 524,
1262 S_pd_prefix_len = 527,
1263 S_excluded_prefix = 528,
1265 S_excluded_prefix_len = 530,
1266 S_pd_delegated_len = 531,
1267 S_reservations = 532,
1269 S_reservations_list = 534,
1270 S_not_empty_reservations_list = 535,
1271 S_reservation = 536,
1273 S_sub_reservation = 538,
1275 S_reservation_params = 540,
1276 S_not_empty_reservation_params = 541,
1277 S_reservation_param = 542,
1278 S_ip_addresses = 543,
1288 S_flex_id_value = 553,
1290 S_reservation_client_classes = 555,
1295 S_client_classes = 560,
1297 S_client_classes_list = 562,
1298 S_client_class_entry = 563,
1300 S_client_class_params = 565,
1301 S_not_empty_client_class_params = 566,
1302 S_client_class_param = 567,
1303 S_client_class_name = 568,
1304 S_client_class_test = 569,
1306 S_client_class_template_test = 571,
1308 S_only_if_required = 573,
1311 S_server_id_params = 576,
1312 S_server_id_param = 577,
1313 S_server_id_type = 578,
1320 S_enterprise_id = 585,
1321 S_dhcp4o6_port = 586,
1322 S_control_socket = 587,
1324 S_control_socket_params = 589,
1325 S_control_socket_param = 590,
1326 S_socket_type = 591,
1328 S_socket_name = 593,
1330 S_dhcp_queue_control = 595,
1332 S_queue_control_params = 597,
1333 S_queue_control_param = 598,
1334 S_enable_queue = 599,
1338 S_arbitrary_map_entry = 603,
1342 S_sub_dhcp_ddns = 607,
1344 S_dhcp_ddns_params = 609,
1345 S_dhcp_ddns_param = 610,
1346 S_enable_updates = 611,
1349 S_server_port = 614,
1352 S_sender_port = 617,
1353 S_max_queue_size = 618,
1354 S_ncr_protocol = 619,
1356 S_ncr_protocol_value = 621,
1359 S_config_control = 624,
1361 S_sub_config_control = 626,
1363 S_config_control_params = 628,
1364 S_config_control_param = 629,
1365 S_config_databases = 630,
1367 S_config_fetch_wait_time = 632,
1370 S_loggers_entries = 635,
1371 S_logger_entry = 636,
1373 S_logger_params = 638,
1374 S_logger_param = 639,
1378 S_output_options_list = 643,
1380 S_output_options_list_content = 645,
1381 S_output_entry = 646,
1383 S_output_params_list = 648,
1384 S_output_params = 649,
1392 S_compatibility = 657,
1394 S_compatibility_params = 659,
1395 S_compatibility_param = 660,
1396 S_lenient_option_parsing = 661
1412 template <
typename Base>
1424#if 201103L <= YY_CPLUSPLUS
1427 : Base (std::move (that))
1429 , location (std::move (that.location))
1431 switch (this->kind ())
1433 case symbol_kind::S_value:
1434 case symbol_kind::S_map_value:
1435 case symbol_kind::S_ddns_replace_client_name_value:
1436 case symbol_kind::S_ddns_conflict_resolution_mode_value:
1437 case symbol_kind::S_db_type:
1438 case symbol_kind::S_on_fail_mode:
1439 case symbol_kind::S_duid_type:
1440 case symbol_kind::S_ncr_protocol_value:
1441 value.move<
ElementPtr > (std::move (that.value));
1444 case symbol_kind::S_BOOLEAN:
1445 value.move<
bool > (std::move (that.value));
1448 case symbol_kind::S_FLOAT:
1449 value.move<
double > (std::move (that.value));
1452 case symbol_kind::S_INTEGER:
1453 value.move< int64_t > (std::move (that.value));
1456 case symbol_kind::S_STRING:
1457 value.move< std::string > (std::move (that.value));
1468 basic_symbol (
const basic_symbol& that);
1471#if 201103L <= YY_CPLUSPLUS
1472 basic_symbol (
typename Base::kind_type t, location_type&& l)
1474 , location (std::move (l))
1483#if 201103L <= YY_CPLUSPLUS
1486 , value (std::move (v))
1487 , location (std::move (l))
1497#if 201103L <= YY_CPLUSPLUS
1500 , value (std::move (v))
1501 , location (std::move (l))
1511#if 201103L <= YY_CPLUSPLUS
1514 , value (std::move (v))
1515 , location (std::move (l))
1525#if 201103L <= YY_CPLUSPLUS
1528 , value (std::move (v))
1529 , location (std::move (l))
1539#if 201103L <= YY_CPLUSPLUS
1542 , value (std::move (v))
1543 , location (std::move (l))
1566 basic_symbol<Base>& yysym = *
this;
1577 case symbol_kind::S_value:
1578 case symbol_kind::S_map_value:
1579 case symbol_kind::S_ddns_replace_client_name_value:
1580 case symbol_kind::S_ddns_conflict_resolution_mode_value:
1581 case symbol_kind::S_db_type:
1582 case symbol_kind::S_on_fail_mode:
1583 case symbol_kind::S_duid_type:
1584 case symbol_kind::S_ncr_protocol_value:
1585 value.template destroy< ElementPtr > ();
1588 case symbol_kind::S_BOOLEAN:
1589 value.template destroy< bool > ();
1592 case symbol_kind::S_FLOAT:
1593 value.template destroy< double > ();
1596 case symbol_kind::S_INTEGER:
1597 value.template destroy< int64_t > ();
1600 case symbol_kind::S_STRING:
1601 value.template destroy< std::string > ();
1633#if YY_CPLUSPLUS < 201103L
1648#if 201103L <= YY_CPLUSPLUS
1692#if 201103L <= YY_CPLUSPLUS
1700#if !defined _MSC_VER || defined __clang__
1702 || (token::TOKEN_PARSER6_error <= tok && tok <= token::TOKEN_SUB_CONFIG_CONTROL));
1705#if 201103L <= YY_CPLUSPLUS
1713#if !defined _MSC_VER || defined __clang__
1717#if 201103L <= YY_CPLUSPLUS
1725#if !defined _MSC_VER || defined __clang__
1729#if 201103L <= YY_CPLUSPLUS
1737#if !defined _MSC_VER || defined __clang__
1741#if 201103L <= YY_CPLUSPLUS
1749#if !defined _MSC_VER || defined __clang__
1759#if 201103L <= YY_CPLUSPLUS
1772 virtual int parse ();
1778 void set_debug_stream (std::ostream &);
1781 typedef
int debug_level_type;
1785 void set_debug_level (debug_level_type l);
1791 virtual void error (
const location_type& loc,
const std::string& msg);
1794 void error (
const syntax_error& err);
1798 static std::string symbol_name (symbol_kind_type yysymbol);
1801#if 201103L <= YY_CPLUSPLUS
1804 make_END (location_type l)
1806 return symbol_type (token::TOKEN_END, std::move (l));
1816#if 201103L <= YY_CPLUSPLUS
1819 make_PARSER6_error (location_type l)
1821 return symbol_type (token::TOKEN_PARSER6_error, std::move (l));
1828 return symbol_type (token::TOKEN_PARSER6_error, l);
1831#if 201103L <= YY_CPLUSPLUS
1834 make_PARSER6_UNDEF (location_type l)
1836 return symbol_type (token::TOKEN_PARSER6_UNDEF, std::move (l));
1843 return symbol_type (token::TOKEN_PARSER6_UNDEF, l);
1846#if 201103L <= YY_CPLUSPLUS
1849 make_COMMA (location_type l)
1851 return symbol_type (token::TOKEN_COMMA, std::move (l));
1861#if 201103L <= YY_CPLUSPLUS
1864 make_COLON (location_type l)
1866 return symbol_type (token::TOKEN_COLON, std::move (l));
1876#if 201103L <= YY_CPLUSPLUS
1879 make_LSQUARE_BRACKET (location_type l)
1881 return symbol_type (token::TOKEN_LSQUARE_BRACKET, std::move (l));
1888 return symbol_type (token::TOKEN_LSQUARE_BRACKET, l);
1891#if 201103L <= YY_CPLUSPLUS
1894 make_RSQUARE_BRACKET (location_type l)
1896 return symbol_type (token::TOKEN_RSQUARE_BRACKET, std::move (l));
1903 return symbol_type (token::TOKEN_RSQUARE_BRACKET, l);
1906#if 201103L <= YY_CPLUSPLUS
1909 make_LCURLY_BRACKET (location_type l)
1911 return symbol_type (token::TOKEN_LCURLY_BRACKET, std::move (l));
1918 return symbol_type (token::TOKEN_LCURLY_BRACKET, l);
1921#if 201103L <= YY_CPLUSPLUS
1924 make_RCURLY_BRACKET (location_type l)
1926 return symbol_type (token::TOKEN_RCURLY_BRACKET, std::move (l));
1933 return symbol_type (token::TOKEN_RCURLY_BRACKET, l);
1936#if 201103L <= YY_CPLUSPLUS
1939 make_NULL_TYPE (location_type l)
1941 return symbol_type (token::TOKEN_NULL_TYPE, std::move (l));
1951#if 201103L <= YY_CPLUSPLUS
1954 make_DHCP6 (location_type l)
1956 return symbol_type (token::TOKEN_DHCP6, std::move (l));
1966#if 201103L <= YY_CPLUSPLUS
1969 make_DATA_DIRECTORY (location_type l)
1971 return symbol_type (token::TOKEN_DATA_DIRECTORY, std::move (l));
1978 return symbol_type (token::TOKEN_DATA_DIRECTORY, l);
1981#if 201103L <= YY_CPLUSPLUS
1984 make_CONFIG_CONTROL (location_type l)
1986 return symbol_type (token::TOKEN_CONFIG_CONTROL, std::move (l));
1993 return symbol_type (token::TOKEN_CONFIG_CONTROL, l);
1996#if 201103L <= YY_CPLUSPLUS
1999 make_CONFIG_DATABASES (location_type l)
2001 return symbol_type (token::TOKEN_CONFIG_DATABASES, std::move (l));
2008 return symbol_type (token::TOKEN_CONFIG_DATABASES, l);
2011#if 201103L <= YY_CPLUSPLUS
2014 make_CONFIG_FETCH_WAIT_TIME (location_type l)
2016 return symbol_type (token::TOKEN_CONFIG_FETCH_WAIT_TIME, std::move (l));
2023 return symbol_type (token::TOKEN_CONFIG_FETCH_WAIT_TIME, l);
2026#if 201103L <= YY_CPLUSPLUS
2029 make_INTERFACES_CONFIG (location_type l)
2031 return symbol_type (token::TOKEN_INTERFACES_CONFIG, std::move (l));
2038 return symbol_type (token::TOKEN_INTERFACES_CONFIG, l);
2041#if 201103L <= YY_CPLUSPLUS
2044 make_INTERFACES (location_type l)
2046 return symbol_type (token::TOKEN_INTERFACES, std::move (l));
2056#if 201103L <= YY_CPLUSPLUS
2059 make_RE_DETECT (location_type l)
2061 return symbol_type (token::TOKEN_RE_DETECT, std::move (l));
2071#if 201103L <= YY_CPLUSPLUS
2074 make_SERVICE_SOCKETS_REQUIRE_ALL (location_type l)
2076 return symbol_type (token::TOKEN_SERVICE_SOCKETS_REQUIRE_ALL, std::move (l));
2083 return symbol_type (token::TOKEN_SERVICE_SOCKETS_REQUIRE_ALL, l);
2086#if 201103L <= YY_CPLUSPLUS
2089 make_SERVICE_SOCKETS_RETRY_WAIT_TIME (location_type l)
2091 return symbol_type (token::TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME, std::move (l));
2098 return symbol_type (token::TOKEN_SERVICE_SOCKETS_RETRY_WAIT_TIME, l);
2101#if 201103L <= YY_CPLUSPLUS
2104 make_SERVICE_SOCKETS_MAX_RETRIES (location_type l)
2106 return symbol_type (token::TOKEN_SERVICE_SOCKETS_MAX_RETRIES, std::move (l));
2113 return symbol_type (token::TOKEN_SERVICE_SOCKETS_MAX_RETRIES, l);
2116#if 201103L <= YY_CPLUSPLUS
2119 make_LEASE_DATABASE (location_type l)
2121 return symbol_type (token::TOKEN_LEASE_DATABASE, std::move (l));
2128 return symbol_type (token::TOKEN_LEASE_DATABASE, l);
2131#if 201103L <= YY_CPLUSPLUS
2134 make_HOSTS_DATABASE (location_type l)
2136 return symbol_type (token::TOKEN_HOSTS_DATABASE, std::move (l));
2143 return symbol_type (token::TOKEN_HOSTS_DATABASE, l);
2146#if 201103L <= YY_CPLUSPLUS
2149 make_HOSTS_DATABASES (location_type l)
2151 return symbol_type (token::TOKEN_HOSTS_DATABASES, std::move (l));
2158 return symbol_type (token::TOKEN_HOSTS_DATABASES, l);
2161#if 201103L <= YY_CPLUSPLUS
2164 make_TYPE (location_type l)
2166 return symbol_type (token::TOKEN_TYPE, std::move (l));
2176#if 201103L <= YY_CPLUSPLUS
2179 make_MEMFILE (location_type l)
2181 return symbol_type (token::TOKEN_MEMFILE, std::move (l));
2191#if 201103L <= YY_CPLUSPLUS
2194 make_MYSQL (location_type l)
2196 return symbol_type (token::TOKEN_MYSQL, std::move (l));
2206#if 201103L <= YY_CPLUSPLUS
2209 make_POSTGRESQL (location_type l)
2211 return symbol_type (token::TOKEN_POSTGRESQL, std::move (l));
2221#if 201103L <= YY_CPLUSPLUS
2224 make_USER (location_type l)
2226 return symbol_type (token::TOKEN_USER, std::move (l));
2236#if 201103L <= YY_CPLUSPLUS
2239 make_PASSWORD (location_type l)
2241 return symbol_type (token::TOKEN_PASSWORD, std::move (l));
2251#if 201103L <= YY_CPLUSPLUS
2254 make_HOST (location_type l)
2256 return symbol_type (token::TOKEN_HOST, std::move (l));
2266#if 201103L <= YY_CPLUSPLUS
2269 make_PORT (location_type l)
2271 return symbol_type (token::TOKEN_PORT, std::move (l));
2281#if 201103L <= YY_CPLUSPLUS
2284 make_PERSIST (location_type l)
2286 return symbol_type (token::TOKEN_PERSIST, std::move (l));
2296#if 201103L <= YY_CPLUSPLUS
2299 make_LFC_INTERVAL (location_type l)
2301 return symbol_type (token::TOKEN_LFC_INTERVAL, std::move (l));
2308 return symbol_type (token::TOKEN_LFC_INTERVAL, l);
2311#if 201103L <= YY_CPLUSPLUS
2314 make_READONLY (location_type l)
2316 return symbol_type (token::TOKEN_READONLY, std::move (l));
2326#if 201103L <= YY_CPLUSPLUS
2329 make_CONNECT_TIMEOUT (location_type l)
2331 return symbol_type (token::TOKEN_CONNECT_TIMEOUT, std::move (l));
2338 return symbol_type (token::TOKEN_CONNECT_TIMEOUT, l);
2341#if 201103L <= YY_CPLUSPLUS
2344 make_READ_TIMEOUT (location_type l)
2346 return symbol_type (token::TOKEN_READ_TIMEOUT, std::move (l));
2353 return symbol_type (token::TOKEN_READ_TIMEOUT, l);
2356#if 201103L <= YY_CPLUSPLUS
2359 make_WRITE_TIMEOUT (location_type l)
2361 return symbol_type (token::TOKEN_WRITE_TIMEOUT, std::move (l));
2368 return symbol_type (token::TOKEN_WRITE_TIMEOUT, l);
2371#if 201103L <= YY_CPLUSPLUS
2374 make_TCP_USER_TIMEOUT (location_type l)
2376 return symbol_type (token::TOKEN_TCP_USER_TIMEOUT, std::move (l));
2383 return symbol_type (token::TOKEN_TCP_USER_TIMEOUT, l);
2386#if 201103L <= YY_CPLUSPLUS
2389 make_MAX_RECONNECT_TRIES (location_type l)
2391 return symbol_type (token::TOKEN_MAX_RECONNECT_TRIES, std::move (l));
2398 return symbol_type (token::TOKEN_MAX_RECONNECT_TRIES, l);
2401#if 201103L <= YY_CPLUSPLUS
2404 make_RECONNECT_WAIT_TIME (location_type l)
2406 return symbol_type (token::TOKEN_RECONNECT_WAIT_TIME, std::move (l));
2413 return symbol_type (token::TOKEN_RECONNECT_WAIT_TIME, l);
2416#if 201103L <= YY_CPLUSPLUS
2419 make_ON_FAIL (location_type l)
2421 return symbol_type (token::TOKEN_ON_FAIL, std::move (l));
2431#if 201103L <= YY_CPLUSPLUS
2434 make_STOP_RETRY_EXIT (location_type l)
2436 return symbol_type (token::TOKEN_STOP_RETRY_EXIT, std::move (l));
2443 return symbol_type (token::TOKEN_STOP_RETRY_EXIT, l);
2446#if 201103L <= YY_CPLUSPLUS
2449 make_SERVE_RETRY_EXIT (location_type l)
2451 return symbol_type (token::TOKEN_SERVE_RETRY_EXIT, std::move (l));
2458 return symbol_type (token::TOKEN_SERVE_RETRY_EXIT, l);
2461#if 201103L <= YY_CPLUSPLUS
2464 make_SERVE_RETRY_CONTINUE (location_type l)
2466 return symbol_type (token::TOKEN_SERVE_RETRY_CONTINUE, std::move (l));
2473 return symbol_type (token::TOKEN_SERVE_RETRY_CONTINUE, l);
2476#if 201103L <= YY_CPLUSPLUS
2479 make_RETRY_ON_STARTUP (location_type l)
2481 return symbol_type (token::TOKEN_RETRY_ON_STARTUP, std::move (l));
2488 return symbol_type (token::TOKEN_RETRY_ON_STARTUP, l);
2491#if 201103L <= YY_CPLUSPLUS
2494 make_MAX_ROW_ERRORS (location_type l)
2496 return symbol_type (token::TOKEN_MAX_ROW_ERRORS, std::move (l));
2503 return symbol_type (token::TOKEN_MAX_ROW_ERRORS, l);
2506#if 201103L <= YY_CPLUSPLUS
2509 make_TRUST_ANCHOR (location_type l)
2511 return symbol_type (token::TOKEN_TRUST_ANCHOR, std::move (l));
2518 return symbol_type (token::TOKEN_TRUST_ANCHOR, l);
2521#if 201103L <= YY_CPLUSPLUS
2524 make_CERT_FILE (location_type l)
2526 return symbol_type (token::TOKEN_CERT_FILE, std::move (l));
2536#if 201103L <= YY_CPLUSPLUS
2539 make_KEY_FILE (location_type l)
2541 return symbol_type (token::TOKEN_KEY_FILE, std::move (l));
2551#if 201103L <= YY_CPLUSPLUS
2554 make_CIPHER_LIST (location_type l)
2556 return symbol_type (token::TOKEN_CIPHER_LIST, std::move (l));
2566#if 201103L <= YY_CPLUSPLUS
2569 make_PREFERRED_LIFETIME (location_type l)
2571 return symbol_type (token::TOKEN_PREFERRED_LIFETIME, std::move (l));
2578 return symbol_type (token::TOKEN_PREFERRED_LIFETIME, l);
2581#if 201103L <= YY_CPLUSPLUS
2584 make_MIN_PREFERRED_LIFETIME (location_type l)
2586 return symbol_type (token::TOKEN_MIN_PREFERRED_LIFETIME, std::move (l));
2593 return symbol_type (token::TOKEN_MIN_PREFERRED_LIFETIME, l);
2596#if 201103L <= YY_CPLUSPLUS
2599 make_MAX_PREFERRED_LIFETIME (location_type l)
2601 return symbol_type (token::TOKEN_MAX_PREFERRED_LIFETIME, std::move (l));
2608 return symbol_type (token::TOKEN_MAX_PREFERRED_LIFETIME, l);
2611#if 201103L <= YY_CPLUSPLUS
2614 make_VALID_LIFETIME (location_type l)
2616 return symbol_type (token::TOKEN_VALID_LIFETIME, std::move (l));
2623 return symbol_type (token::TOKEN_VALID_LIFETIME, l);
2626#if 201103L <= YY_CPLUSPLUS
2629 make_MIN_VALID_LIFETIME (location_type l)
2631 return symbol_type (token::TOKEN_MIN_VALID_LIFETIME, std::move (l));
2638 return symbol_type (token::TOKEN_MIN_VALID_LIFETIME, l);
2641#if 201103L <= YY_CPLUSPLUS
2644 make_MAX_VALID_LIFETIME (location_type l)
2646 return symbol_type (token::TOKEN_MAX_VALID_LIFETIME, std::move (l));
2653 return symbol_type (token::TOKEN_MAX_VALID_LIFETIME, l);
2656#if 201103L <= YY_CPLUSPLUS
2659 make_RENEW_TIMER (location_type l)
2661 return symbol_type (token::TOKEN_RENEW_TIMER, std::move (l));
2671#if 201103L <= YY_CPLUSPLUS
2674 make_REBIND_TIMER (location_type l)
2676 return symbol_type (token::TOKEN_REBIND_TIMER, std::move (l));
2683 return symbol_type (token::TOKEN_REBIND_TIMER, l);
2686#if 201103L <= YY_CPLUSPLUS
2689 make_CALCULATE_TEE_TIMES (location_type l)
2691 return symbol_type (token::TOKEN_CALCULATE_TEE_TIMES, std::move (l));
2698 return symbol_type (token::TOKEN_CALCULATE_TEE_TIMES, l);
2701#if 201103L <= YY_CPLUSPLUS
2704 make_T1_PERCENT (location_type l)
2706 return symbol_type (token::TOKEN_T1_PERCENT, std::move (l));
2716#if 201103L <= YY_CPLUSPLUS
2719 make_T2_PERCENT (location_type l)
2721 return symbol_type (token::TOKEN_T2_PERCENT, std::move (l));
2731#if 201103L <= YY_CPLUSPLUS
2734 make_CACHE_THRESHOLD (location_type l)
2736 return symbol_type (token::TOKEN_CACHE_THRESHOLD, std::move (l));
2743 return symbol_type (token::TOKEN_CACHE_THRESHOLD, l);
2746#if 201103L <= YY_CPLUSPLUS
2749 make_CACHE_MAX_AGE (location_type l)
2751 return symbol_type (token::TOKEN_CACHE_MAX_AGE, std::move (l));
2758 return symbol_type (token::TOKEN_CACHE_MAX_AGE, l);
2761#if 201103L <= YY_CPLUSPLUS
2764 make_DECLINE_PROBATION_PERIOD (location_type l)
2766 return symbol_type (token::TOKEN_DECLINE_PROBATION_PERIOD, std::move (l));
2773 return symbol_type (token::TOKEN_DECLINE_PROBATION_PERIOD, l);
2776#if 201103L <= YY_CPLUSPLUS
2779 make_SERVER_TAG (location_type l)
2781 return symbol_type (token::TOKEN_SERVER_TAG, std::move (l));
2791#if 201103L <= YY_CPLUSPLUS
2794 make_STATISTIC_DEFAULT_SAMPLE_COUNT (location_type l)
2796 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT, std::move (l));
2803 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_COUNT, l);
2806#if 201103L <= YY_CPLUSPLUS
2809 make_STATISTIC_DEFAULT_SAMPLE_AGE (location_type l)
2811 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE, std::move (l));
2818 return symbol_type (token::TOKEN_STATISTIC_DEFAULT_SAMPLE_AGE, l);
2821#if 201103L <= YY_CPLUSPLUS
2824 make_DDNS_SEND_UPDATES (location_type l)
2826 return symbol_type (token::TOKEN_DDNS_SEND_UPDATES, std::move (l));
2833 return symbol_type (token::TOKEN_DDNS_SEND_UPDATES, l);
2836#if 201103L <= YY_CPLUSPLUS
2839 make_DDNS_OVERRIDE_NO_UPDATE (location_type l)
2841 return symbol_type (token::TOKEN_DDNS_OVERRIDE_NO_UPDATE, std::move (l));
2848 return symbol_type (token::TOKEN_DDNS_OVERRIDE_NO_UPDATE, l);
2851#if 201103L <= YY_CPLUSPLUS
2854 make_DDNS_OVERRIDE_CLIENT_UPDATE (location_type l)
2856 return symbol_type (token::TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE, std::move (l));
2863 return symbol_type (token::TOKEN_DDNS_OVERRIDE_CLIENT_UPDATE, l);
2866#if 201103L <= YY_CPLUSPLUS
2869 make_DDNS_REPLACE_CLIENT_NAME (location_type l)
2871 return symbol_type (token::TOKEN_DDNS_REPLACE_CLIENT_NAME, std::move (l));
2878 return symbol_type (token::TOKEN_DDNS_REPLACE_CLIENT_NAME, l);
2881#if 201103L <= YY_CPLUSPLUS
2884 make_DDNS_GENERATED_PREFIX (location_type l)
2886 return symbol_type (token::TOKEN_DDNS_GENERATED_PREFIX, std::move (l));
2893 return symbol_type (token::TOKEN_DDNS_GENERATED_PREFIX, l);
2896#if 201103L <= YY_CPLUSPLUS
2899 make_DDNS_QUALIFYING_SUFFIX (location_type l)
2901 return symbol_type (token::TOKEN_DDNS_QUALIFYING_SUFFIX, std::move (l));
2908 return symbol_type (token::TOKEN_DDNS_QUALIFYING_SUFFIX, l);
2911#if 201103L <= YY_CPLUSPLUS
2914 make_DDNS_UPDATE_ON_RENEW (location_type l)
2916 return symbol_type (token::TOKEN_DDNS_UPDATE_ON_RENEW, std::move (l));
2923 return symbol_type (token::TOKEN_DDNS_UPDATE_ON_RENEW, l);
2926#if 201103L <= YY_CPLUSPLUS
2929 make_DDNS_USE_CONFLICT_RESOLUTION (location_type l)
2931 return symbol_type (token::TOKEN_DDNS_USE_CONFLICT_RESOLUTION, std::move (l));
2938 return symbol_type (token::TOKEN_DDNS_USE_CONFLICT_RESOLUTION, l);
2941#if 201103L <= YY_CPLUSPLUS
2944 make_DDNS_TTL_PERCENT (location_type l)
2946 return symbol_type (token::TOKEN_DDNS_TTL_PERCENT, std::move (l));
2953 return symbol_type (token::TOKEN_DDNS_TTL_PERCENT, l);
2956#if 201103L <= YY_CPLUSPLUS
2959 make_STORE_EXTENDED_INFO (location_type l)
2961 return symbol_type (token::TOKEN_STORE_EXTENDED_INFO, std::move (l));
2968 return symbol_type (token::TOKEN_STORE_EXTENDED_INFO, l);
2971#if 201103L <= YY_CPLUSPLUS
2974 make_SUBNET6 (location_type l)
2976 return symbol_type (token::TOKEN_SUBNET6, std::move (l));
2986#if 201103L <= YY_CPLUSPLUS
2989 make_OPTION_DEF (location_type l)
2991 return symbol_type (token::TOKEN_OPTION_DEF, std::move (l));
3001#if 201103L <= YY_CPLUSPLUS
3004 make_OPTION_DATA (location_type l)
3006 return symbol_type (token::TOKEN_OPTION_DATA, std::move (l));
3016#if 201103L <= YY_CPLUSPLUS
3019 make_NAME (location_type l)
3021 return symbol_type (token::TOKEN_NAME, std::move (l));
3031#if 201103L <= YY_CPLUSPLUS
3034 make_DATA (location_type l)
3036 return symbol_type (token::TOKEN_DATA, std::move (l));
3046#if 201103L <= YY_CPLUSPLUS
3049 make_CODE (location_type l)
3051 return symbol_type (token::TOKEN_CODE, std::move (l));
3061#if 201103L <= YY_CPLUSPLUS
3064 make_SPACE (location_type l)
3066 return symbol_type (token::TOKEN_SPACE, std::move (l));
3076#if 201103L <= YY_CPLUSPLUS
3079 make_CSV_FORMAT (location_type l)
3081 return symbol_type (token::TOKEN_CSV_FORMAT, std::move (l));
3091#if 201103L <= YY_CPLUSPLUS
3094 make_ALWAYS_SEND (location_type l)
3096 return symbol_type (token::TOKEN_ALWAYS_SEND, std::move (l));
3106#if 201103L <= YY_CPLUSPLUS
3109 make_NEVER_SEND (location_type l)
3111 return symbol_type (token::TOKEN_NEVER_SEND, std::move (l));
3121#if 201103L <= YY_CPLUSPLUS
3124 make_RECORD_TYPES (location_type l)
3126 return symbol_type (token::TOKEN_RECORD_TYPES, std::move (l));
3133 return symbol_type (token::TOKEN_RECORD_TYPES, l);
3136#if 201103L <= YY_CPLUSPLUS
3139 make_ENCAPSULATE (location_type l)
3141 return symbol_type (token::TOKEN_ENCAPSULATE, std::move (l));
3151#if 201103L <= YY_CPLUSPLUS
3154 make_ARRAY (location_type l)
3156 return symbol_type (token::TOKEN_ARRAY, std::move (l));
3166#if 201103L <= YY_CPLUSPLUS
3169 make_PARKED_PACKET_LIMIT (location_type l)
3171 return symbol_type (token::TOKEN_PARKED_PACKET_LIMIT, std::move (l));
3178 return symbol_type (token::TOKEN_PARKED_PACKET_LIMIT, l);
3181#if 201103L <= YY_CPLUSPLUS
3184 make_ALLOCATOR (location_type l)
3186 return symbol_type (token::TOKEN_ALLOCATOR, std::move (l));
3196#if 201103L <= YY_CPLUSPLUS
3199 make_PD_ALLOCATOR (location_type l)
3201 return symbol_type (token::TOKEN_PD_ALLOCATOR, std::move (l));
3208 return symbol_type (token::TOKEN_PD_ALLOCATOR, l);
3211#if 201103L <= YY_CPLUSPLUS
3214 make_DDNS_CONFLICT_RESOLUTION_MODE (location_type l)
3216 return symbol_type (token::TOKEN_DDNS_CONFLICT_RESOLUTION_MODE, std::move (l));
3223 return symbol_type (token::TOKEN_DDNS_CONFLICT_RESOLUTION_MODE, l);
3226#if 201103L <= YY_CPLUSPLUS
3229 make_CHECK_WITH_DHCID (location_type l)
3231 return symbol_type (token::TOKEN_CHECK_WITH_DHCID, std::move (l));
3238 return symbol_type (token::TOKEN_CHECK_WITH_DHCID, l);
3241#if 201103L <= YY_CPLUSPLUS
3244 make_NO_CHECK_WITH_DHCID (location_type l)
3246 return symbol_type (token::TOKEN_NO_CHECK_WITH_DHCID, std::move (l));
3253 return symbol_type (token::TOKEN_NO_CHECK_WITH_DHCID, l);
3256#if 201103L <= YY_CPLUSPLUS
3259 make_CHECK_EXISTS_WITH_DHCID (location_type l)
3261 return symbol_type (token::TOKEN_CHECK_EXISTS_WITH_DHCID, std::move (l));
3268 return symbol_type (token::TOKEN_CHECK_EXISTS_WITH_DHCID, l);
3271#if 201103L <= YY_CPLUSPLUS
3274 make_NO_CHECK_WITHOUT_DHCID (location_type l)
3276 return symbol_type (token::TOKEN_NO_CHECK_WITHOUT_DHCID, std::move (l));
3283 return symbol_type (token::TOKEN_NO_CHECK_WITHOUT_DHCID, l);
3286#if 201103L <= YY_CPLUSPLUS
3289 make_SHARED_NETWORKS (location_type l)
3291 return symbol_type (token::TOKEN_SHARED_NETWORKS, std::move (l));
3298 return symbol_type (token::TOKEN_SHARED_NETWORKS, l);
3301#if 201103L <= YY_CPLUSPLUS
3304 make_POOLS (location_type l)
3306 return symbol_type (token::TOKEN_POOLS, std::move (l));
3316#if 201103L <= YY_CPLUSPLUS
3319 make_POOL (location_type l)
3321 return symbol_type (token::TOKEN_POOL, std::move (l));
3331#if 201103L <= YY_CPLUSPLUS
3334 make_PD_POOLS (location_type l)
3336 return symbol_type (token::TOKEN_PD_POOLS, std::move (l));
3346#if 201103L <= YY_CPLUSPLUS
3349 make_PREFIX (location_type l)
3351 return symbol_type (token::TOKEN_PREFIX, std::move (l));
3361#if 201103L <= YY_CPLUSPLUS
3364 make_PREFIX_LEN (location_type l)
3366 return symbol_type (token::TOKEN_PREFIX_LEN, std::move (l));
3376#if 201103L <= YY_CPLUSPLUS
3379 make_EXCLUDED_PREFIX (location_type l)
3381 return symbol_type (token::TOKEN_EXCLUDED_PREFIX, std::move (l));
3388 return symbol_type (token::TOKEN_EXCLUDED_PREFIX, l);
3391#if 201103L <= YY_CPLUSPLUS
3394 make_EXCLUDED_PREFIX_LEN (location_type l)
3396 return symbol_type (token::TOKEN_EXCLUDED_PREFIX_LEN, std::move (l));
3403 return symbol_type (token::TOKEN_EXCLUDED_PREFIX_LEN, l);
3406#if 201103L <= YY_CPLUSPLUS
3409 make_DELEGATED_LEN (location_type l)
3411 return symbol_type (token::TOKEN_DELEGATED_LEN, std::move (l));
3418 return symbol_type (token::TOKEN_DELEGATED_LEN, l);
3421#if 201103L <= YY_CPLUSPLUS
3424 make_USER_CONTEXT (location_type l)
3426 return symbol_type (token::TOKEN_USER_CONTEXT, std::move (l));
3433 return symbol_type (token::TOKEN_USER_CONTEXT, l);
3436#if 201103L <= YY_CPLUSPLUS
3439 make_COMMENT (location_type l)
3441 return symbol_type (token::TOKEN_COMMENT, std::move (l));
3451#if 201103L <= YY_CPLUSPLUS
3454 make_SUBNET (location_type l)
3456 return symbol_type (token::TOKEN_SUBNET, std::move (l));
3466#if 201103L <= YY_CPLUSPLUS
3469 make_INTERFACE (location_type l)
3471 return symbol_type (token::TOKEN_INTERFACE, std::move (l));
3481#if 201103L <= YY_CPLUSPLUS
3484 make_INTERFACE_ID (location_type l)
3486 return symbol_type (token::TOKEN_INTERFACE_ID, std::move (l));
3493 return symbol_type (token::TOKEN_INTERFACE_ID, l);
3496#if 201103L <= YY_CPLUSPLUS
3499 make_ID (location_type l)
3501 return symbol_type (token::TOKEN_ID, std::move (l));
3511#if 201103L <= YY_CPLUSPLUS
3514 make_RAPID_COMMIT (location_type l)
3516 return symbol_type (token::TOKEN_RAPID_COMMIT, std::move (l));
3523 return symbol_type (token::TOKEN_RAPID_COMMIT, l);
3526#if 201103L <= YY_CPLUSPLUS
3529 make_RESERVATIONS_GLOBAL (location_type l)
3531 return symbol_type (token::TOKEN_RESERVATIONS_GLOBAL, std::move (l));
3538 return symbol_type (token::TOKEN_RESERVATIONS_GLOBAL, l);
3541#if 201103L <= YY_CPLUSPLUS
3544 make_RESERVATIONS_IN_SUBNET (location_type l)
3546 return symbol_type (token::TOKEN_RESERVATIONS_IN_SUBNET, std::move (l));
3553 return symbol_type (token::TOKEN_RESERVATIONS_IN_SUBNET, l);
3556#if 201103L <= YY_CPLUSPLUS
3559 make_RESERVATIONS_OUT_OF_POOL (location_type l)
3561 return symbol_type (token::TOKEN_RESERVATIONS_OUT_OF_POOL, std::move (l));
3568 return symbol_type (token::TOKEN_RESERVATIONS_OUT_OF_POOL, l);
3571#if 201103L <= YY_CPLUSPLUS
3574 make_MAC_SOURCES (location_type l)
3576 return symbol_type (token::TOKEN_MAC_SOURCES, std::move (l));
3586#if 201103L <= YY_CPLUSPLUS
3589 make_RELAY_SUPPLIED_OPTIONS (location_type l)
3591 return symbol_type (token::TOKEN_RELAY_SUPPLIED_OPTIONS, std::move (l));
3598 return symbol_type (token::TOKEN_RELAY_SUPPLIED_OPTIONS, l);
3601#if 201103L <= YY_CPLUSPLUS
3604 make_HOST_RESERVATION_IDENTIFIERS (location_type l)
3606 return symbol_type (token::TOKEN_HOST_RESERVATION_IDENTIFIERS, std::move (l));
3613 return symbol_type (token::TOKEN_HOST_RESERVATION_IDENTIFIERS, l);
3616#if 201103L <= YY_CPLUSPLUS
3619 make_SANITY_CHECKS (location_type l)
3621 return symbol_type (token::TOKEN_SANITY_CHECKS, std::move (l));
3628 return symbol_type (token::TOKEN_SANITY_CHECKS, l);
3631#if 201103L <= YY_CPLUSPLUS
3634 make_LEASE_CHECKS (location_type l)
3636 return symbol_type (token::TOKEN_LEASE_CHECKS, std::move (l));
3643 return symbol_type (token::TOKEN_LEASE_CHECKS, l);
3646#if 201103L <= YY_CPLUSPLUS
3649 make_EXTENDED_INFO_CHECKS (location_type l)
3651 return symbol_type (token::TOKEN_EXTENDED_INFO_CHECKS, std::move (l));
3658 return symbol_type (token::TOKEN_EXTENDED_INFO_CHECKS, l);
3661#if 201103L <= YY_CPLUSPLUS
3664 make_CLIENT_CLASSES (location_type l)
3666 return symbol_type (token::TOKEN_CLIENT_CLASSES, std::move (l));
3673 return symbol_type (token::TOKEN_CLIENT_CLASSES, l);
3676#if 201103L <= YY_CPLUSPLUS
3679 make_REQUIRE_CLIENT_CLASSES (location_type l)
3681 return symbol_type (token::TOKEN_REQUIRE_CLIENT_CLASSES, std::move (l));
3688 return symbol_type (token::TOKEN_REQUIRE_CLIENT_CLASSES, l);
3691#if 201103L <= YY_CPLUSPLUS
3694 make_TEST (location_type l)
3696 return symbol_type (token::TOKEN_TEST, std::move (l));
3706#if 201103L <= YY_CPLUSPLUS
3709 make_TEMPLATE_TEST (location_type l)
3711 return symbol_type (token::TOKEN_TEMPLATE_TEST, std::move (l));
3718 return symbol_type (token::TOKEN_TEMPLATE_TEST, l);
3721#if 201103L <= YY_CPLUSPLUS
3724 make_ONLY_IF_REQUIRED (location_type l)
3726 return symbol_type (token::TOKEN_ONLY_IF_REQUIRED, std::move (l));
3733 return symbol_type (token::TOKEN_ONLY_IF_REQUIRED, l);
3736#if 201103L <= YY_CPLUSPLUS
3739 make_CLIENT_CLASS (location_type l)
3741 return symbol_type (token::TOKEN_CLIENT_CLASS, std::move (l));
3748 return symbol_type (token::TOKEN_CLIENT_CLASS, l);
3751#if 201103L <= YY_CPLUSPLUS
3754 make_POOL_ID (location_type l)
3756 return symbol_type (token::TOKEN_POOL_ID, std::move (l));
3766#if 201103L <= YY_CPLUSPLUS
3769 make_RESERVATIONS (location_type l)
3771 return symbol_type (token::TOKEN_RESERVATIONS, std::move (l));
3778 return symbol_type (token::TOKEN_RESERVATIONS, l);
3781#if 201103L <= YY_CPLUSPLUS
3784 make_IP_ADDRESSES (location_type l)
3786 return symbol_type (token::TOKEN_IP_ADDRESSES, std::move (l));
3793 return symbol_type (token::TOKEN_IP_ADDRESSES, l);
3796#if 201103L <= YY_CPLUSPLUS
3799 make_PREFIXES (location_type l)
3801 return symbol_type (token::TOKEN_PREFIXES, std::move (l));
3811#if 201103L <= YY_CPLUSPLUS
3814 make_DUID (location_type l)
3816 return symbol_type (token::TOKEN_DUID, std::move (l));
3826#if 201103L <= YY_CPLUSPLUS
3829 make_HW_ADDRESS (location_type l)
3831 return symbol_type (token::TOKEN_HW_ADDRESS, std::move (l));
3841#if 201103L <= YY_CPLUSPLUS
3844 make_HOSTNAME (location_type l)
3846 return symbol_type (token::TOKEN_HOSTNAME, std::move (l));
3856#if 201103L <= YY_CPLUSPLUS
3859 make_FLEX_ID (location_type l)
3861 return symbol_type (token::TOKEN_FLEX_ID, std::move (l));
3871#if 201103L <= YY_CPLUSPLUS
3874 make_RELAY (location_type l)
3876 return symbol_type (token::TOKEN_RELAY, std::move (l));
3886#if 201103L <= YY_CPLUSPLUS
3889 make_HOOKS_LIBRARIES (location_type l)
3891 return symbol_type (token::TOKEN_HOOKS_LIBRARIES, std::move (l));
3898 return symbol_type (token::TOKEN_HOOKS_LIBRARIES, l);
3901#if 201103L <= YY_CPLUSPLUS
3904 make_LIBRARY (location_type l)
3906 return symbol_type (token::TOKEN_LIBRARY, std::move (l));
3916#if 201103L <= YY_CPLUSPLUS
3919 make_PARAMETERS (location_type l)
3921 return symbol_type (token::TOKEN_PARAMETERS, std::move (l));
3931#if 201103L <= YY_CPLUSPLUS
3934 make_EXPIRED_LEASES_PROCESSING (location_type l)
3936 return symbol_type (token::TOKEN_EXPIRED_LEASES_PROCESSING, std::move (l));
3943 return symbol_type (token::TOKEN_EXPIRED_LEASES_PROCESSING, l);
3946#if 201103L <= YY_CPLUSPLUS
3949 make_RECLAIM_TIMER_WAIT_TIME (location_type l)
3951 return symbol_type (token::TOKEN_RECLAIM_TIMER_WAIT_TIME, std::move (l));
3958 return symbol_type (token::TOKEN_RECLAIM_TIMER_WAIT_TIME, l);
3961#if 201103L <= YY_CPLUSPLUS
3964 make_FLUSH_RECLAIMED_TIMER_WAIT_TIME (location_type l)
3966 return symbol_type (token::TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME, std::move (l));
3973 return symbol_type (token::TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME, l);
3976#if 201103L <= YY_CPLUSPLUS
3979 make_HOLD_RECLAIMED_TIME (location_type l)
3981 return symbol_type (token::TOKEN_HOLD_RECLAIMED_TIME, std::move (l));
3988 return symbol_type (token::TOKEN_HOLD_RECLAIMED_TIME, l);
3991#if 201103L <= YY_CPLUSPLUS
3994 make_MAX_RECLAIM_LEASES (location_type l)
3996 return symbol_type (token::TOKEN_MAX_RECLAIM_LEASES, std::move (l));
4003 return symbol_type (token::TOKEN_MAX_RECLAIM_LEASES, l);
4006#if 201103L <= YY_CPLUSPLUS
4009 make_MAX_RECLAIM_TIME (location_type l)
4011 return symbol_type (token::TOKEN_MAX_RECLAIM_TIME, std::move (l));
4018 return symbol_type (token::TOKEN_MAX_RECLAIM_TIME, l);
4021#if 201103L <= YY_CPLUSPLUS
4024 make_UNWARNED_RECLAIM_CYCLES (location_type l)
4026 return symbol_type (token::TOKEN_UNWARNED_RECLAIM_CYCLES, std::move (l));
4033 return symbol_type (token::TOKEN_UNWARNED_RECLAIM_CYCLES, l);
4036#if 201103L <= YY_CPLUSPLUS
4039 make_SERVER_ID (location_type l)
4041 return symbol_type (token::TOKEN_SERVER_ID, std::move (l));
4051#if 201103L <= YY_CPLUSPLUS
4054 make_LLT (location_type l)
4056 return symbol_type (token::TOKEN_LLT, std::move (l));
4066#if 201103L <= YY_CPLUSPLUS
4069 make_EN (location_type l)
4071 return symbol_type (token::TOKEN_EN, std::move (l));
4081#if 201103L <= YY_CPLUSPLUS
4084 make_LL (location_type l)
4086 return symbol_type (token::TOKEN_LL, std::move (l));
4096#if 201103L <= YY_CPLUSPLUS
4099 make_IDENTIFIER (location_type l)
4101 return symbol_type (token::TOKEN_IDENTIFIER, std::move (l));
4111#if 201103L <= YY_CPLUSPLUS
4114 make_HTYPE (location_type l)
4116 return symbol_type (token::TOKEN_HTYPE, std::move (l));
4126#if 201103L <= YY_CPLUSPLUS
4129 make_TIME (location_type l)
4131 return symbol_type (token::TOKEN_TIME, std::move (l));
4141#if 201103L <= YY_CPLUSPLUS
4144 make_ENTERPRISE_ID (location_type l)
4146 return symbol_type (token::TOKEN_ENTERPRISE_ID, std::move (l));
4153 return symbol_type (token::TOKEN_ENTERPRISE_ID, l);
4156#if 201103L <= YY_CPLUSPLUS
4159 make_DHCP4O6_PORT (location_type l)
4161 return symbol_type (token::TOKEN_DHCP4O6_PORT, std::move (l));
4168 return symbol_type (token::TOKEN_DHCP4O6_PORT, l);
4171#if 201103L <= YY_CPLUSPLUS
4174 make_DHCP_MULTI_THREADING (location_type l)
4176 return symbol_type (token::TOKEN_DHCP_MULTI_THREADING, std::move (l));
4183 return symbol_type (token::TOKEN_DHCP_MULTI_THREADING, l);
4186#if 201103L <= YY_CPLUSPLUS
4189 make_ENABLE_MULTI_THREADING (location_type l)
4191 return symbol_type (token::TOKEN_ENABLE_MULTI_THREADING, std::move (l));
4198 return symbol_type (token::TOKEN_ENABLE_MULTI_THREADING, l);
4201#if 201103L <= YY_CPLUSPLUS
4204 make_THREAD_POOL_SIZE (location_type l)
4206 return symbol_type (token::TOKEN_THREAD_POOL_SIZE, std::move (l));
4213 return symbol_type (token::TOKEN_THREAD_POOL_SIZE, l);
4216#if 201103L <= YY_CPLUSPLUS
4219 make_PACKET_QUEUE_SIZE (location_type l)
4221 return symbol_type (token::TOKEN_PACKET_QUEUE_SIZE, std::move (l));
4228 return symbol_type (token::TOKEN_PACKET_QUEUE_SIZE, l);
4231#if 201103L <= YY_CPLUSPLUS
4234 make_CONTROL_SOCKET (location_type l)
4236 return symbol_type (token::TOKEN_CONTROL_SOCKET, std::move (l));
4243 return symbol_type (token::TOKEN_CONTROL_SOCKET, l);
4246#if 201103L <= YY_CPLUSPLUS
4249 make_SOCKET_TYPE (location_type l)
4251 return symbol_type (token::TOKEN_SOCKET_TYPE, std::move (l));
4261#if 201103L <= YY_CPLUSPLUS
4264 make_SOCKET_NAME (location_type l)
4266 return symbol_type (token::TOKEN_SOCKET_NAME, std::move (l));
4276#if 201103L <= YY_CPLUSPLUS
4279 make_DHCP_QUEUE_CONTROL (location_type l)
4281 return symbol_type (token::TOKEN_DHCP_QUEUE_CONTROL, std::move (l));
4288 return symbol_type (token::TOKEN_DHCP_QUEUE_CONTROL, l);
4291#if 201103L <= YY_CPLUSPLUS
4294 make_ENABLE_QUEUE (location_type l)
4296 return symbol_type (token::TOKEN_ENABLE_QUEUE, std::move (l));
4303 return symbol_type (token::TOKEN_ENABLE_QUEUE, l);
4306#if 201103L <= YY_CPLUSPLUS
4309 make_QUEUE_TYPE (location_type l)
4311 return symbol_type (token::TOKEN_QUEUE_TYPE, std::move (l));
4321#if 201103L <= YY_CPLUSPLUS
4324 make_CAPACITY (location_type l)
4326 return symbol_type (token::TOKEN_CAPACITY, std::move (l));
4336#if 201103L <= YY_CPLUSPLUS
4339 make_DHCP_DDNS (location_type l)
4341 return symbol_type (token::TOKEN_DHCP_DDNS, std::move (l));
4351#if 201103L <= YY_CPLUSPLUS
4354 make_ENABLE_UPDATES (location_type l)
4356 return symbol_type (token::TOKEN_ENABLE_UPDATES, std::move (l));
4363 return symbol_type (token::TOKEN_ENABLE_UPDATES, l);
4366#if 201103L <= YY_CPLUSPLUS
4369 make_SERVER_IP (location_type l)
4371 return symbol_type (token::TOKEN_SERVER_IP, std::move (l));
4381#if 201103L <= YY_CPLUSPLUS
4384 make_SERVER_PORT (location_type l)
4386 return symbol_type (token::TOKEN_SERVER_PORT, std::move (l));
4396#if 201103L <= YY_CPLUSPLUS
4399 make_SENDER_IP (location_type l)
4401 return symbol_type (token::TOKEN_SENDER_IP, std::move (l));
4411#if 201103L <= YY_CPLUSPLUS
4414 make_SENDER_PORT (location_type l)
4416 return symbol_type (token::TOKEN_SENDER_PORT, std::move (l));
4426#if 201103L <= YY_CPLUSPLUS
4429 make_MAX_QUEUE_SIZE (location_type l)
4431 return symbol_type (token::TOKEN_MAX_QUEUE_SIZE, std::move (l));
4438 return symbol_type (token::TOKEN_MAX_QUEUE_SIZE, l);
4441#if 201103L <= YY_CPLUSPLUS
4444 make_NCR_PROTOCOL (location_type l)
4446 return symbol_type (token::TOKEN_NCR_PROTOCOL, std::move (l));
4453 return symbol_type (token::TOKEN_NCR_PROTOCOL, l);
4456#if 201103L <= YY_CPLUSPLUS
4459 make_NCR_FORMAT (location_type l)
4461 return symbol_type (token::TOKEN_NCR_FORMAT, std::move (l));
4471#if 201103L <= YY_CPLUSPLUS
4474 make_UDP (location_type l)
4476 return symbol_type (token::TOKEN_UDP, std::move (l));
4486#if 201103L <= YY_CPLUSPLUS
4489 make_TCP (location_type l)
4491 return symbol_type (token::TOKEN_TCP, std::move (l));
4501#if 201103L <= YY_CPLUSPLUS
4504 make_JSON (location_type l)
4506 return symbol_type (token::TOKEN_JSON, std::move (l));
4516#if 201103L <= YY_CPLUSPLUS
4519 make_WHEN_PRESENT (location_type l)
4521 return symbol_type (token::TOKEN_WHEN_PRESENT, std::move (l));
4528 return symbol_type (token::TOKEN_WHEN_PRESENT, l);
4531#if 201103L <= YY_CPLUSPLUS
4534 make_NEVER (location_type l)
4536 return symbol_type (token::TOKEN_NEVER, std::move (l));
4546#if 201103L <= YY_CPLUSPLUS
4549 make_ALWAYS (location_type l)
4551 return symbol_type (token::TOKEN_ALWAYS, std::move (l));
4561#if 201103L <= YY_CPLUSPLUS
4564 make_WHEN_NOT_PRESENT (location_type l)
4566 return symbol_type (token::TOKEN_WHEN_NOT_PRESENT, std::move (l));
4573 return symbol_type (token::TOKEN_WHEN_NOT_PRESENT, l);
4576#if 201103L <= YY_CPLUSPLUS
4579 make_HOSTNAME_CHAR_SET (location_type l)
4581 return symbol_type (token::TOKEN_HOSTNAME_CHAR_SET, std::move (l));
4588 return symbol_type (token::TOKEN_HOSTNAME_CHAR_SET, l);
4591#if 201103L <= YY_CPLUSPLUS
4594 make_HOSTNAME_CHAR_REPLACEMENT (location_type l)
4596 return symbol_type (token::TOKEN_HOSTNAME_CHAR_REPLACEMENT, std::move (l));
4603 return symbol_type (token::TOKEN_HOSTNAME_CHAR_REPLACEMENT, l);
4606#if 201103L <= YY_CPLUSPLUS
4609 make_EARLY_GLOBAL_RESERVATIONS_LOOKUP (location_type l)
4611 return symbol_type (token::TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP, std::move (l));
4618 return symbol_type (token::TOKEN_EARLY_GLOBAL_RESERVATIONS_LOOKUP, l);
4621#if 201103L <= YY_CPLUSPLUS
4624 make_IP_RESERVATIONS_UNIQUE (location_type l)
4626 return symbol_type (token::TOKEN_IP_RESERVATIONS_UNIQUE, std::move (l));
4633 return symbol_type (token::TOKEN_IP_RESERVATIONS_UNIQUE, l);
4636#if 201103L <= YY_CPLUSPLUS
4639 make_RESERVATIONS_LOOKUP_FIRST (location_type l)
4641 return symbol_type (token::TOKEN_RESERVATIONS_LOOKUP_FIRST, std::move (l));
4648 return symbol_type (token::TOKEN_RESERVATIONS_LOOKUP_FIRST, l);
4651#if 201103L <= YY_CPLUSPLUS
4654 make_LOGGERS (location_type l)
4656 return symbol_type (token::TOKEN_LOGGERS, std::move (l));
4666#if 201103L <= YY_CPLUSPLUS
4669 make_OUTPUT_OPTIONS (location_type l)
4671 return symbol_type (token::TOKEN_OUTPUT_OPTIONS, std::move (l));
4678 return symbol_type (token::TOKEN_OUTPUT_OPTIONS, l);
4681#if 201103L <= YY_CPLUSPLUS
4684 make_OUTPUT (location_type l)
4686 return symbol_type (token::TOKEN_OUTPUT, std::move (l));
4696#if 201103L <= YY_CPLUSPLUS
4699 make_DEBUGLEVEL (location_type l)
4701 return symbol_type (token::TOKEN_DEBUGLEVEL, std::move (l));
4711#if 201103L <= YY_CPLUSPLUS
4714 make_SEVERITY (location_type l)
4716 return symbol_type (token::TOKEN_SEVERITY, std::move (l));
4726#if 201103L <= YY_CPLUSPLUS
4729 make_FLUSH (location_type l)
4731 return symbol_type (token::TOKEN_FLUSH, std::move (l));
4741#if 201103L <= YY_CPLUSPLUS
4744 make_MAXSIZE (location_type l)
4746 return symbol_type (token::TOKEN_MAXSIZE, std::move (l));
4756#if 201103L <= YY_CPLUSPLUS
4759 make_MAXVER (location_type l)
4761 return symbol_type (token::TOKEN_MAXVER, std::move (l));
4771#if 201103L <= YY_CPLUSPLUS
4774 make_PATTERN (location_type l)
4776 return symbol_type (token::TOKEN_PATTERN, std::move (l));
4786#if 201103L <= YY_CPLUSPLUS
4789 make_COMPATIBILITY (location_type l)
4791 return symbol_type (token::TOKEN_COMPATIBILITY, std::move (l));
4798 return symbol_type (token::TOKEN_COMPATIBILITY, l);
4801#if 201103L <= YY_CPLUSPLUS
4804 make_LENIENT_OPTION_PARSING (location_type l)
4806 return symbol_type (token::TOKEN_LENIENT_OPTION_PARSING, std::move (l));
4813 return symbol_type (token::TOKEN_LENIENT_OPTION_PARSING, l);
4816#if 201103L <= YY_CPLUSPLUS
4819 make_TOPLEVEL_JSON (location_type l)
4821 return symbol_type (token::TOKEN_TOPLEVEL_JSON, std::move (l));
4828 return symbol_type (token::TOKEN_TOPLEVEL_JSON, l);
4831#if 201103L <= YY_CPLUSPLUS
4834 make_TOPLEVEL_DHCP6 (location_type l)
4836 return symbol_type (token::TOKEN_TOPLEVEL_DHCP6, std::move (l));
4843 return symbol_type (token::TOKEN_TOPLEVEL_DHCP6, l);
4846#if 201103L <= YY_CPLUSPLUS
4849 make_SUB_DHCP6 (location_type l)
4851 return symbol_type (token::TOKEN_SUB_DHCP6, std::move (l));
4861#if 201103L <= YY_CPLUSPLUS
4864 make_SUB_INTERFACES6 (location_type l)
4866 return symbol_type (token::TOKEN_SUB_INTERFACES6, std::move (l));
4873 return symbol_type (token::TOKEN_SUB_INTERFACES6, l);
4876#if 201103L <= YY_CPLUSPLUS
4879 make_SUB_SUBNET6 (location_type l)
4881 return symbol_type (token::TOKEN_SUB_SUBNET6, std::move (l));
4891#if 201103L <= YY_CPLUSPLUS
4894 make_SUB_POOL6 (location_type l)
4896 return symbol_type (token::TOKEN_SUB_POOL6, std::move (l));
4906#if 201103L <= YY_CPLUSPLUS
4909 make_SUB_PD_POOL (location_type l)
4911 return symbol_type (token::TOKEN_SUB_PD_POOL, std::move (l));
4921#if 201103L <= YY_CPLUSPLUS
4924 make_SUB_RESERVATION (location_type l)
4926 return symbol_type (token::TOKEN_SUB_RESERVATION, std::move (l));
4933 return symbol_type (token::TOKEN_SUB_RESERVATION, l);
4936#if 201103L <= YY_CPLUSPLUS
4939 make_SUB_OPTION_DEFS (location_type l)
4941 return symbol_type (token::TOKEN_SUB_OPTION_DEFS, std::move (l));
4948 return symbol_type (token::TOKEN_SUB_OPTION_DEFS, l);
4951#if 201103L <= YY_CPLUSPLUS
4954 make_SUB_OPTION_DEF (location_type l)
4956 return symbol_type (token::TOKEN_SUB_OPTION_DEF, std::move (l));
4963 return symbol_type (token::TOKEN_SUB_OPTION_DEF, l);
4966#if 201103L <= YY_CPLUSPLUS
4969 make_SUB_OPTION_DATA (location_type l)
4971 return symbol_type (token::TOKEN_SUB_OPTION_DATA, std::move (l));
4978 return symbol_type (token::TOKEN_SUB_OPTION_DATA, l);
4981#if 201103L <= YY_CPLUSPLUS
4984 make_SUB_HOOKS_LIBRARY (location_type l)
4986 return symbol_type (token::TOKEN_SUB_HOOKS_LIBRARY, std::move (l));
4993 return symbol_type (token::TOKEN_SUB_HOOKS_LIBRARY, l);
4996#if 201103L <= YY_CPLUSPLUS
4999 make_SUB_DHCP_DDNS (location_type l)
5001 return symbol_type (token::TOKEN_SUB_DHCP_DDNS, std::move (l));
5008 return symbol_type (token::TOKEN_SUB_DHCP_DDNS, l);
5011#if 201103L <= YY_CPLUSPLUS
5014 make_SUB_CONFIG_CONTROL (location_type l)
5016 return symbol_type (token::TOKEN_SUB_CONFIG_CONTROL, std::move (l));
5023 return symbol_type (token::TOKEN_SUB_CONFIG_CONTROL, l);
5026#if 201103L <= YY_CPLUSPLUS
5029 make_STRING (std::string v, location_type l)
5031 return symbol_type (token::TOKEN_STRING, std::move (v), std::move (l));
5041#if 201103L <= YY_CPLUSPLUS
5044 make_INTEGER (int64_t v, location_type l)
5046 return symbol_type (token::TOKEN_INTEGER, std::move (v), std::move (l));
5056#if 201103L <= YY_CPLUSPLUS
5059 make_FLOAT (
double v, location_type l)
5061 return symbol_type (token::TOKEN_FLOAT, std::move (v), std::move (l));
5071#if 201103L <= YY_CPLUSPLUS
5074 make_BOOLEAN (
bool v, location_type l)
5076 return symbol_type (token::TOKEN_BOOLEAN, std::move (v), std::move (l));
5107#if YY_CPLUSPLUS < 201103L
5116 typedef short state_type;
5119 int yy_syntax_error_arguments_ (
const context& yyctx,
5120 symbol_kind_type yyarg[],
int yyargn)
const;
5124 virtual std::string yysyntax_error_ (
const context& yyctx)
const;
5128 static state_type yy_lr_goto_state_ (state_type yystate,
int yysym);
5132 static bool yy_pact_value_is_default_ (
int yyvalue)
YY_NOEXCEPT;
5136 static bool yy_table_value_is_error_ (
int yyvalue)
YY_NOEXCEPT;
5138 static const short yypact_ninf_;
5139 static const signed char yytable_ninf_;
5144 static symbol_kind_type yytranslate_ (
int t)
YY_NOEXCEPT;
5147 static std::string yytnamerr_ (
const char *yystr);
5150 static const char*
const yytname_[];
5156 static const short yypact_[];
5161 static const short yydefact_[];
5164 static const short yypgoto_[];
5167 static const short yydefgoto_[];
5172 static const short yytable_[];
5174 static const short yycheck_[];
5178 static const short yystos_[];
5181 static const short yyr1_[];
5184 static const signed char yyr2_[];
5189 static const short yyrline_[];
5191 virtual void yy_reduce_print_ (
int r)
const;
5193 virtual void yy_stack_print_ ()
const;
5198 std::ostream* yycdebug_;
5203 template <
typename Base>
5204 void yy_print_ (std::ostream& yyo,
const basic_symbol<Base>& yysym)
const;
5211 template <
typename Base>
5212 void yy_destroy_ (
const char* yymsg, basic_symbol<Base>& yysym)
const;
5222 typedef state_type kind_type;
5234 void move (by_state& that);
5242 enum { empty_state = 0 };
5250 struct stack_symbol_type : basic_symbol<by_state>
5253 typedef basic_symbol<by_state> super_type;
5255 stack_symbol_type ();
5257 stack_symbol_type (
YY_RVREF (stack_symbol_type) that);
5259 stack_symbol_type (state_type s,
YY_MOVE_REF (symbol_type) sym);
5260#if YY_CPLUSPLUS < 201103L
5263 stack_symbol_type& operator= (stack_symbol_type& that);
5267 stack_symbol_type& operator= (
const stack_symbol_type& that);
5272 template <
typename T,
typename S = std::vector<T> >
5277 typedef typename S::iterator iterator;
5278 typedef typename S::const_iterator const_iterator;
5279 typedef typename S::size_type size_type;
5280 typedef typename std::ptrdiff_t index_type;
5286#if 201103L <= YY_CPLUSPLUS
5288 stack (
const stack&) =
delete;
5290 stack& operator= (
const stack&) =
delete;
5297 operator[] (index_type i)
const
5299 return seq_[size_type (size () - 1 - i)];
5306 operator[] (index_type i)
5308 return seq_[size_type (size () - 1 - i)];
5317 seq_.push_back (T ());
5318 operator[] (0).move (t);
5340 return index_type (seq_.size ());
5347 return seq_.begin ();
5367 operator[] (index_type i)
const
5369 return stack_[range_ - i];
5373 const stack& stack_;
5378#if YY_CPLUSPLUS < 201103L
5380 stack (
const stack&);
5382 stack& operator= (
const stack&);
5390 typedef stack<stack_symbol_type> stack_type;
5393 stack_type yystack_;
5400 void yypush_ (
const char* m,
YY_MOVE_REF (stack_symbol_type) sym);
5408 void yypush_ (
const char* m, state_type s,
YY_MOVE_REF (symbol_type) sym);