5#define YY_INT_ALIGNED short int
12#define yy_create_buffer d2_parser__create_buffer
13#define yy_delete_buffer d2_parser__delete_buffer
14#define yy_scan_buffer d2_parser__scan_buffer
15#define yy_scan_string d2_parser__scan_string
16#define yy_scan_bytes d2_parser__scan_bytes
17#define yy_init_buffer d2_parser__init_buffer
18#define yy_flush_buffer d2_parser__flush_buffer
19#define yy_load_buffer_state d2_parser__load_buffer_state
20#define yy_switch_to_buffer d2_parser__switch_to_buffer
21#define yypush_buffer_state d2_parser_push_buffer_state
22#define yypop_buffer_state d2_parser_pop_buffer_state
23#define yyensure_buffer_stack d2_parser_ensure_buffer_stack
24#define yy_flex_debug d2_parser__flex_debug
25#define yyin d2_parser_in
26#define yyleng d2_parser_leng
27#define yylex d2_parser_lex
28#define yylineno d2_parser_lineno
29#define yyout d2_parser_out
30#define yyrestart d2_parser_restart
31#define yytext d2_parser_text
32#define yywrap d2_parser_wrap
33#define yyalloc d2_parser_alloc
34#define yyrealloc d2_parser_realloc
35#define yyfree d2_parser_free
42#define YY_FLEX_MAJOR_VERSION 2
43#define YY_FLEX_MINOR_VERSION 6
44#define YY_FLEX_SUBMINOR_VERSION 4
45#if YY_FLEX_SUBMINOR_VERSION > 0
53#ifdef yy_create_buffer
54#define d2_parser__create_buffer_ALREADY_DEFINED
56#define yy_create_buffer d2_parser__create_buffer
59#ifdef yy_delete_buffer
60#define d2_parser__delete_buffer_ALREADY_DEFINED
62#define yy_delete_buffer d2_parser__delete_buffer
66#define d2_parser__scan_buffer_ALREADY_DEFINED
68#define yy_scan_buffer d2_parser__scan_buffer
72#define d2_parser__scan_string_ALREADY_DEFINED
74#define yy_scan_string d2_parser__scan_string
78#define d2_parser__scan_bytes_ALREADY_DEFINED
80#define yy_scan_bytes d2_parser__scan_bytes
84#define d2_parser__init_buffer_ALREADY_DEFINED
86#define yy_init_buffer d2_parser__init_buffer
90#define d2_parser__flush_buffer_ALREADY_DEFINED
92#define yy_flush_buffer d2_parser__flush_buffer
95#ifdef yy_load_buffer_state
96#define d2_parser__load_buffer_state_ALREADY_DEFINED
98#define yy_load_buffer_state d2_parser__load_buffer_state
101#ifdef yy_switch_to_buffer
102#define d2_parser__switch_to_buffer_ALREADY_DEFINED
104#define yy_switch_to_buffer d2_parser__switch_to_buffer
107#ifdef yypush_buffer_state
108#define d2_parser_push_buffer_state_ALREADY_DEFINED
110#define yypush_buffer_state d2_parser_push_buffer_state
113#ifdef yypop_buffer_state
114#define d2_parser_pop_buffer_state_ALREADY_DEFINED
116#define yypop_buffer_state d2_parser_pop_buffer_state
119#ifdef yyensure_buffer_stack
120#define d2_parser_ensure_buffer_stack_ALREADY_DEFINED
122#define yyensure_buffer_stack d2_parser_ensure_buffer_stack
126#define d2_parser_lex_ALREADY_DEFINED
128#define yylex d2_parser_lex
132#define d2_parser_restart_ALREADY_DEFINED
134#define yyrestart d2_parser_restart
138#define d2_parser_lex_init_ALREADY_DEFINED
140#define yylex_init d2_parser_lex_init
143#ifdef yylex_init_extra
144#define d2_parser_lex_init_extra_ALREADY_DEFINED
146#define yylex_init_extra d2_parser_lex_init_extra
150#define d2_parser_lex_destroy_ALREADY_DEFINED
152#define yylex_destroy d2_parser_lex_destroy
156#define d2_parser_get_debug_ALREADY_DEFINED
158#define yyget_debug d2_parser_get_debug
162#define d2_parser_set_debug_ALREADY_DEFINED
164#define yyset_debug d2_parser_set_debug
168#define d2_parser_get_extra_ALREADY_DEFINED
170#define yyget_extra d2_parser_get_extra
174#define d2_parser_set_extra_ALREADY_DEFINED
176#define yyset_extra d2_parser_set_extra
180#define d2_parser_get_in_ALREADY_DEFINED
182#define yyget_in d2_parser_get_in
186#define d2_parser_set_in_ALREADY_DEFINED
188#define yyset_in d2_parser_set_in
192#define d2_parser_get_out_ALREADY_DEFINED
194#define yyget_out d2_parser_get_out
198#define d2_parser_set_out_ALREADY_DEFINED
200#define yyset_out d2_parser_set_out
204#define d2_parser_get_leng_ALREADY_DEFINED
206#define yyget_leng d2_parser_get_leng
210#define d2_parser_get_text_ALREADY_DEFINED
212#define yyget_text d2_parser_get_text
216#define d2_parser_get_lineno_ALREADY_DEFINED
218#define yyget_lineno d2_parser_get_lineno
222#define d2_parser_set_lineno_ALREADY_DEFINED
224#define yyset_lineno d2_parser_set_lineno
228#define d2_parser_wrap_ALREADY_DEFINED
230#define yywrap d2_parser_wrap
236#define d2_parser_alloc_ALREADY_DEFINED
238#define yyalloc d2_parser_alloc
242#define d2_parser_realloc_ALREADY_DEFINED
244#define yyrealloc d2_parser_realloc
248#define d2_parser_free_ALREADY_DEFINED
250#define yyfree d2_parser_free
256#define d2_parser_text_ALREADY_DEFINED
258#define yytext d2_parser_text
262#define d2_parser_leng_ALREADY_DEFINED
264#define yyleng d2_parser_leng
268#define d2_parser_in_ALREADY_DEFINED
270#define yyin d2_parser_in
274#define d2_parser_out_ALREADY_DEFINED
276#define yyout d2_parser_out
280#define d2_parser__flex_debug_ALREADY_DEFINED
282#define yy_flex_debug d2_parser__flex_debug
286#define d2_parser_lineno_ALREADY_DEFINED
288#define yylineno d2_parser_lineno
315#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
320#ifndef __STDC_LIMIT_MACROS
321#define __STDC_LIMIT_MACROS 1
341#define INT8_MIN (-128)
344#define INT16_MIN (-32767-1)
347#define INT32_MIN (-2147483647-1)
350#define INT8_MAX (127)
353#define INT16_MAX (32767)
356#define INT32_MAX (2147483647)
359#define UINT8_MAX (255U)
362#define UINT16_MAX (65535U)
365#define UINT32_MAX (4294967295U)
369#define SIZE_MAX (~(size_t)0)
385#if defined(__GNUC__) && __GNUC__ >= 3
386#define yynoreturn __attribute__((__noreturn__))
400#define YY_SC_TO_UI(c) ((YY_CHAR) (c))
414#define BEGIN (yy_start) = 1 + 2 *
419#define YY_START (((yy_start) - 1) / 2)
420#define YYSTATE YY_START
422#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
424#define YY_NEW_FILE yyrestart( yyin )
425#define YY_END_OF_BUFFER_CHAR 0
434#define YY_BUF_SIZE 32768
436#define YY_BUF_SIZE 16384
442#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
444#ifndef YY_TYPEDEF_YY_BUFFER_STATE
445#define YY_TYPEDEF_YY_BUFFER_STATE
449#ifndef YY_TYPEDEF_YY_SIZE_T
450#define YY_TYPEDEF_YY_SIZE_T
464#define EOB_ACT_CONTINUE_SCAN 0
465#define EOB_ACT_END_OF_FILE 1
466#define EOB_ACT_LAST_MATCH 2
468 #define YY_LESS_LINENO(n)
469 #define YY_LINENO_REWIND_TO(ptr)
476 int yyless_macro_arg = (n); \
477 YY_LESS_LINENO(yyless_macro_arg);\
478 *yy_cp = (yy_hold_char); \
479 YY_RESTORE_YY_MORE_OFFSET \
480 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
481 YY_DO_BEFORE_ACTION; \
484#define unput(c) yyunput( c, (yytext_ptr) )
486#ifndef YY_STRUCT_YY_BUFFER_STATE
487#define YY_STRUCT_YY_BUFFER_STATE
539#define YY_BUFFER_NEW 0
540#define YY_BUFFER_NORMAL 1
551#define YY_BUFFER_EOF_PENDING 2
561static size_t yy_buffer_stack_top = 0;
562static size_t yy_buffer_stack_max = 0;
575#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
576 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
581#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
588static char yy_hold_char;
589static int yy_n_chars;
593static char *yy_c_buf_p = NULL;
594static int yy_init = 0;
595static int yy_start = 0;
600static int yy_did_buffer_switch_on_eof;
616#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
628#define yy_new_buffer yy_create_buffer
629#define yy_set_interactive(is_interactive) \
631 if ( ! YY_CURRENT_BUFFER ){ \
632 yyensure_buffer_stack (); \
633 YY_CURRENT_BUFFER_LVALUE = \
634 yy_create_buffer( yyin, YY_BUF_SIZE ); \
636 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
638#define yy_set_bol(at_bol) \
640 if ( ! YY_CURRENT_BUFFER ){\
641 yyensure_buffer_stack (); \
642 YY_CURRENT_BUFFER_LVALUE = \
643 yy_create_buffer( yyin, YY_BUF_SIZE ); \
645 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
647#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
652#define d2_parser_wrap() (1)
653#define YY_SKIP_YYWRAP
669#define yytext_ptr yytext
677static int yy_get_next_buffer (
void );
678static void yynoreturn yy_fatal_error (
const char* msg );
685#define YY_DO_BEFORE_ACTION \
686 (yytext_ptr) = yy_bp; \
688 yyleng = (int) (yy_cp - yy_bp); \
689 (yy_hold_char) = *yy_cp; \
692 (yy_c_buf_p) = yy_cp;
694#define YY_NUM_RULES 93
695#define YY_END_OF_BUFFER 94
705 86, 86, 0, 0, 0, 0, 0, 0, 0, 0,
706 94, 92, 10, 11, 92, 1, 84, 80, 86, 86,
707 92, 83, 83, 81, 92, 92, 92, 92, 92, 76,
708 77, 92, 92, 92, 78, 79, 5, 5, 5, 92,
709 92, 92, 10, 11, 0, 0, 71, 0, 0, 0,
710 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
711 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
712 84, 84, 0, 86, 83, 83, 0, 86, 3, 2,
713 82, 83, 6, 0, 86, 0, 0, 0, 0, 0,
714 0, 4, 0, 0, 9, 0, 72, 0, 0, 0,
716 0, 0, 0, 74, 0, 0, 0, 0, 0, 0,
717 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
718 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
719 0, 0, 0, 0, 0, 0, 0, 84, 0, 84,
720 2, 85, 82, 0, 0, 0, 0, 0, 0, 0,
721 0, 8, 0, 0, 0, 0, 0, 73, 75, 0,
722 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
723 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
724 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
725 0, 0, 0, 0, 0, 0, 0, 0, 0, 85,
727 0, 0, 85, 0, 91, 89, 0, 88, 87, 0,
728 0, 0, 19, 18, 0, 0, 0, 0, 0, 0,
729 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
730 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
731 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
732 0, 0, 0, 0, 0, 0, 85, 90, 87, 0,
733 0, 20, 0, 0, 0, 0, 0, 0, 0, 0,
734 0, 0, 0, 0, 0, 0, 0, 0, 0, 38,
735 0, 0, 0, 0, 0, 0, 0, 0, 68, 0,
736 0, 0, 0, 0, 0, 14, 0, 0, 0, 0,
738 0, 0, 0, 44, 37, 49, 0, 0, 0, 0,
739 0, 45, 0, 0, 0, 0, 0, 0, 0, 0,
740 0, 0, 64, 0, 0, 0, 39, 0, 0, 0,
741 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
742 46, 0, 0, 0, 0, 0, 0, 0, 0, 7,
743 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
744 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
745 0, 0, 66, 0, 0, 63, 0, 0, 0, 0,
746 0, 0, 32, 0, 0, 0, 0, 0, 0, 0,
747 0, 0, 0, 0, 0, 48, 22, 0, 0, 0,
749 0, 0, 0, 0, 0, 0, 0, 0, 0, 59,
750 60, 65, 0, 0, 0, 0, 0, 0, 67, 0,
751 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
752 12, 0, 0, 0, 0, 0, 0, 0, 0, 0,
753 0, 0, 0, 28, 0, 55, 26, 0, 0, 0,
754 0, 0, 51, 0, 0, 0, 70, 0, 0, 0,
755 0, 0, 0, 0, 0, 30, 0, 54, 0, 0,
756 0, 0, 0, 47, 0, 0, 0, 0, 0, 0,
757 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
758 0, 29, 0, 50, 0, 0, 0, 0, 69, 0,
760 0, 0, 0, 0, 13, 17, 0, 0, 0, 58,
761 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
762 0, 0, 0, 31, 0, 27, 0, 0, 0, 0,
763 0, 0, 0, 33, 0, 40, 42, 36, 0, 0,
764 0, 0, 0, 25, 0, 23, 0, 16, 0, 0,
765 0, 24, 0, 53, 21, 0, 56, 0, 0, 0,
766 0, 0, 52, 0, 43, 34, 0, 0, 0, 62,
767 61, 41, 35, 0, 57, 0, 0, 15, 0
770static const YY_CHAR yy_ec[256] =
772 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
773 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
774 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
775 1, 4, 5, 6, 7, 5, 5, 5, 5, 5,
776 5, 8, 9, 10, 11, 12, 13, 14, 15, 15,
777 15, 15, 15, 15, 15, 15, 15, 16, 5, 17,
778 5, 18, 19, 5, 20, 21, 22, 23, 24, 25,
779 5, 5, 5, 26, 5, 27, 5, 28, 29, 30,
780 5, 31, 32, 33, 34, 5, 5, 5, 5, 5,
781 35, 36, 37, 5, 38, 5, 39, 40, 41, 42,
783 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
784 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
785 63, 64, 65, 5, 66, 5, 5, 5, 5, 5,
786 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
787 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
788 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
789 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
790 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
791 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
792 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
794 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
795 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
796 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
797 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
798 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
802static const YY_CHAR yy_meta[67] =
804 1, 1, 2, 1, 1, 3, 1, 1, 1, 1,
805 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
806 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
807 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
808 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
809 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
815 0, 65, 18, 28, 36, 44, 47, 53, 82, 92,
816 901, 902, 25, 897, 131, 0, 49, 902, 186, 73,
817 10, 190, 194, 902, 880, 104, 21, 11, 68, 902,
818 902, 83, 70, 168, 902, 902, 902, 103, 885, 845,
819 0, 878, 108, 892, 205, 219, 902, 848, 171, 84,
820 184, 243, 162, 854, 170, 188, 166, 68, 838, 848,
821 67, 851, 176, 830, 183, 845, 191, 233, 258, 0,
822 270, 292, 277, 294, 305, 309, 316, 325, 902, 0,
823 329, 342, 902, 113, 224, 198, 200, 198, 253, 255,
824 263, 902, 846, 880, 902, 292, 902, 352, 844, 283,
826 284, 296, 878, 0, 406, 838, 824, 824, 824, 832,
827 195, 826, 837, 198, 819, 816, 818, 289, 815, 861,
828 808, 830, 824, 806, 816, 810, 807, 303, 808, 272,
829 304, 822, 803, 814, 806, 812, 815, 355, 348, 359,
830 0, 362, 366, 380, 343, 356, 358, 361, 357, 373,
831 807, 902, 802, 319, 849, 848, 847, 902, 902, 437,
832 799, 805, 803, 791, 805, 796, 788, 788, 785, 800,
833 799, 830, 783, 778, 789, 779, 782, 796, 823, 777,
834 787, 342, 788, 819, 775, 789, 770, 768, 767, 774,
835 780, 766, 778, 771, 762, 773, 774, 754, 759, 399,
837 423, 410, 421, 379, 902, 902, 420, 902, 902, 755,
838 790, 806, 902, 902, 468, 755, 767, 768, 797, 755,
839 763, 749, 793, 758, 745, 760, 743, 753, 759, 740,
840 744, 409, 753, 10, 755, 750, 745, 748, 784, 389,
841 730, 737, 726, 743, 779, 733, 727, 739, 725, 737,
842 721, 767, 771, 770, 458, 425, 439, 902, 902, 733,
843 732, 902, 499, 726, 720, 765, 311, 712, 717, 715,
844 725, 716, 707, 706, 720, 756, 705, 749, 720, 902,
845 752, 715, 709, 716, 698, 697, 688, 695, 902, 697,
846 693, 690, 704, 693, 689, 902, 738, 686, 684, 694,
848 682, 728, 689, 902, 902, 902, 424, 694, 684, 677,
849 676, 902, 686, 689, 674, 672, 679, 675, 684, 715,
850 672, 668, 902, 681, 672, 670, 902, 664, 669, 667,
851 654, 659, 672, 708, 657, 659, 461, 653, 654, 657,
852 902, 665, 464, 649, 695, 666, 661, 650, 655, 902,
853 644, 654, 652, 648, 642, 690, 689, 683, 642, 632,
854 651, 634, 629, 677, 640, 643, 642, 641, 640, 676,
855 675, 674, 902, 628, 620, 902, 624, 623, 632, 632,
856 667, 661, 902, 627, 607, 446, 617, 605, 615, 616,
857 659, 613, 622, 619, 602, 902, 902, 603, 620, 615,
859 610, 593, 612, 612, 613, 646, 594, 644, 643, 902,
860 902, 902, 609, 594, 592, 591, 588, 490, 902, 601,
861 595, 635, 598, 600, 585, 574, 595, 578, 576, 590,
862 902, 626, 592, 624, 582, 575, 580, 576, 567, 618,
863 567, 580, 565, 902, 563, 902, 902, 561, 577, 559,
864 558, 558, 902, 570, 571, 562, 902, 569, 559, 553,
865 554, 561, 600, 562, 598, 902, 545, 902, 546, 560,
866 548, 593, 541, 902, 430, 545, 557, 589, 588, 540,
867 545, 544, 584, 542, 536, 544, 530, 542, 526, 540,
868 529, 902, 519, 902, 533, 536, 529, 520, 902, 570,
870 517, 568, 516, 516, 902, 902, 521, 517, 516, 902,
871 518, 510, 560, 522, 554, 545, 531, 480, 477, 481,
872 491, 489, 525, 902, 483, 902, 523, 481, 521, 474,
873 473, 475, 511, 902, 459, 902, 902, 902, 509, 499,
874 451, 496, 439, 902, 444, 902, 451, 902, 429, 427,
875 468, 902, 416, 902, 902, 465, 902, 449, 413, 362,
876 411, 381, 902, 345, 902, 902, 328, 240, 258, 902,
877 902, 902, 902, 203, 902, 193, 2, 902, 902, 543,
878 546, 549, 0, 552, 555, 558, 561
883 580, 580, 581, 581, 580, 580, 580, 580, 580, 580,
884 579, 579, 579, 579, 579, 582, 579, 579, 579, 579,
885 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
886 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
887 583, 579, 579, 579, 584, 15, 579, 46, 46, 46,
888 46, 585, 46, 46, 46, 46, 46, 46, 46, 46,
889 46, 46, 46, 46, 46, 46, 46, 46, 46, 582,
890 579, 579, 579, 579, 579, 579, 579, 579, 579, 586,
891 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
892 579, 579, 579, 583, 579, 584, 579, 579, 46, 46,
894 46, 46, 587, 46, 585, 46, 46, 46, 46, 46,
895 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
896 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
897 46, 46, 46, 46, 46, 46, 46, 579, 579, 579,
898 586, 579, 579, 579, 579, 579, 579, 579, 579, 579,
899 579, 579, 46, 46, 46, 46, 587, 579, 579, 105,
900 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
901 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
902 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
903 46, 46, 46, 46, 46, 46, 46, 46, 46, 579,
905 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
906 46, 46, 579, 579, 105, 46, 46, 46, 46, 46,
907 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
908 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
909 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
910 46, 46, 46, 46, 46, 579, 579, 579, 579, 579,
911 46, 579, 105, 46, 46, 46, 46, 46, 46, 46,
912 46, 46, 46, 46, 46, 46, 46, 46, 46, 579,
913 46, 46, 46, 46, 46, 46, 46, 46, 579, 46,
914 46, 46, 46, 46, 46, 579, 46, 46, 46, 46,
916 46, 46, 46, 579, 579, 579, 46, 579, 46, 46,
917 46, 579, 46, 46, 46, 46, 46, 46, 46, 46,
918 46, 46, 579, 46, 46, 46, 579, 46, 46, 46,
919 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
920 579, 46, 46, 46, 46, 46, 46, 46, 46, 579,
921 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
922 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
923 46, 46, 579, 46, 46, 579, 46, 46, 46, 46,
924 46, 46, 579, 46, 46, 46, 46, 46, 46, 46,
925 46, 46, 46, 46, 46, 579, 579, 46, 46, 46,
927 46, 46, 46, 46, 46, 46, 46, 46, 46, 579,
928 579, 579, 46, 46, 46, 46, 46, 46, 579, 46,
929 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
930 579, 46, 46, 46, 46, 46, 46, 46, 46, 46,
931 46, 46, 46, 579, 46, 579, 579, 46, 46, 46,
932 46, 46, 579, 46, 46, 46, 579, 46, 46, 46,
933 46, 46, 46, 46, 46, 579, 46, 579, 46, 46,
934 46, 46, 46, 579, 46, 46, 46, 46, 46, 46,
935 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
936 46, 579, 46, 579, 46, 46, 46, 46, 579, 46,
938 46, 46, 46, 46, 579, 579, 46, 46, 46, 579,
939 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
940 46, 46, 46, 579, 46, 579, 46, 46, 46, 46,
941 46, 46, 46, 579, 46, 579, 579, 579, 46, 46,
942 46, 46, 46, 579, 46, 579, 46, 579, 46, 46,
943 46, 579, 46, 579, 579, 46, 579, 46, 46, 46,
944 46, 46, 579, 46, 579, 579, 46, 46, 46, 579,
945 579, 579, 579, 46, 579, 46, 46, 579, 0, 579,
946 579, 579, 579, 579, 579, 579, 579
951 94, 13, 14, 13, 579, 15, 16, 578, 17, 18,
952 19, 20, 21, 22, 23, 24, 25, 79, 579, 38,
953 14, 38, 80, 26, 27, 39, 43, 28, 43, 38,
954 14, 38, 29, 579, 30, 39, 31, 13, 14, 13,
955 86, 579, 26, 32, 87, 13, 14, 13, 13, 14,
956 13, 33, 41, 283, 13, 14, 13, 34, 41, 86,
957 71, 284, 72, 72, 35, 36, 13, 14, 13, 87,
958 15, 16, 73, 17, 18, 19, 20, 21, 22, 23,
959 24, 25, 40, 13, 14, 13, 78, 78, 26, 27,
960 40, 73, 28, 13, 14, 13, 77, 29, 88, 30,
962 42, 31, 86, 87, 43, 101, 43, 26, 32, 43,
963 42, 43, 84, 122, 84, 77, 33, 85, 85, 123,
964 118, 89, 34, 88, 101, 119, 85, 85, 90, 35,
965 36, 45, 45, 45, 46, 46, 47, 46, 46, 46,
966 46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
967 46, 46, 46, 48, 46, 46, 49, 46, 46, 46,
968 46, 46, 46, 50, 51, 46, 52, 46, 46, 53,
969 54, 55, 56, 46, 57, 46, 58, 59, 49, 60,
970 61, 62, 63, 64, 65, 46, 66, 67, 68, 69,
971 46, 46, 46, 46, 46, 46, 46, 74, 88, 75,
973 76, 74, 100, 81, 81, 74, 102, 82, 82, 77,
974 97, 106, 109, 77, 125, 116, 126, 77, 117, 110,
975 107, 128, 111, 91, 145, 102, 146, 100, 77, 112,
976 113, 147, 77, 131, 114, 129, 77, 85, 85, 115,
977 98, 46, 170, 132, 46, 166, 167, 145, 104, 146,
978 577, 46, 46, 171, 101, 46, 147, 46, 46, 46,
979 46, 576, 46, 575, 46, 46, 46, 46, 46, 46,
980 46, 46, 46, 101, 46, 46, 46, 46, 46, 145,
981 102, 146, 46, 138, 138, 139, 46, 139, 133, 134,
982 140, 140, 574, 73, 46, 135, 147, 97, 46, 102,
984 46, 105, 148, 71, 149, 72, 72, 78, 78, 136,
985 190, 154, 73, 155, 137, 73, 74, 77, 81, 81,
986 74, 150, 82, 82, 84, 156, 84, 98, 77, 85,
987 85, 191, 77, 573, 73, 154, 77, 155, 78, 78,
988 142, 175, 143, 143, 192, 176, 212, 77, 77, 156,
989 572, 77, 144, 74, 313, 82, 82, 96, 186, 187,
990 188, 140, 140, 193, 96, 77, 314, 77, 138, 138,
991 212, 144, 140, 140, 204, 200, 200, 142, 73, 143,
992 143, 206, 205, 205, 77, 201, 571, 96, 202, 144,
993 202, 96, 204, 203, 203, 96, 206, 73, 237, 204,
995 206, 238, 258, 96, 201, 205, 208, 96, 144, 96,
996 96, 159, 200, 200, 280, 209, 570, 207, 569, 160,
997 160, 258, 201, 203, 203, 160, 160, 160, 160, 160,
998 160, 256, 290, 256, 203, 203, 257, 257, 257, 257,
999 501, 201, 291, 258, 160, 160, 160, 160, 160, 160,
1000 215, 215, 257, 257, 566, 568, 215, 215, 215, 215,
1001 215, 215, 259, 306, 348, 281, 376, 349, 307, 383,
1002 565, 377, 564, 563, 384, 215, 215, 215, 215, 215,
1003 215, 263, 263, 562, 423, 561, 502, 263, 263, 263,
1004 263, 263, 263, 560, 559, 453, 558, 424, 378, 425,
1006 454, 557, 556, 426, 555, 567, 263, 263, 263, 263,
1007 263, 263, 46, 46, 554, 553, 552, 551, 46, 46,
1008 46, 46, 46, 46, 550, 549, 548, 547, 546, 545,
1009 544, 543, 542, 541, 540, 539, 538, 46, 46, 46,
1010 46, 46, 46, 12, 12, 12, 37, 37, 37, 70,
1011 537, 70, 96, 96, 96, 103, 103, 103, 141, 536,
1012 141, 157, 157, 157, 535, 534, 533, 532, 531, 530,
1013 529, 528, 527, 526, 525, 524, 523, 522, 521, 520,
1014 519, 518, 517, 516, 515, 514, 513, 512, 511, 510,
1015 509, 508, 507, 506, 505, 504, 503, 500, 499, 498,
1017 497, 496, 495, 494, 493, 492, 491, 490, 489, 488,
1018 487, 486, 485, 484, 483, 482, 481, 480, 479, 478,
1019 477, 476, 475, 474, 473, 472, 471, 470, 469, 468,
1020 467, 466, 465, 464, 463, 462, 461, 460, 459, 458,
1021 457, 456, 455, 452, 451, 450, 449, 448, 447, 446,
1022 445, 444, 443, 442, 441, 440, 439, 438, 437, 436,
1023 435, 434, 433, 432, 431, 430, 429, 428, 427, 422,
1024 421, 420, 419, 418, 417, 416, 415, 414, 413, 412,
1025 411, 410, 409, 408, 407, 406, 405, 404, 403, 402,
1026 401, 400, 399, 398, 397, 396, 395, 394, 393, 392,
1028 391, 390, 389, 388, 387, 386, 385, 382, 381, 380,
1029 379, 375, 374, 373, 372, 371, 370, 369, 368, 367,
1030 366, 365, 364, 363, 362, 361, 360, 359, 358, 357,
1031 356, 355, 354, 353, 352, 351, 350, 347, 346, 345,
1032 344, 343, 342, 341, 340, 339, 338, 337, 336, 335,
1033 334, 333, 332, 331, 330, 329, 328, 327, 326, 325,
1034 324, 323, 322, 321, 320, 319, 318, 317, 316, 315,
1035 312, 311, 310, 309, 308, 305, 304, 303, 302, 301,
1036 300, 299, 298, 297, 296, 295, 294, 293, 292, 289,
1037 288, 287, 286, 285, 282, 279, 278, 277, 276, 275,
1039 274, 273, 272, 271, 270, 269, 268, 267, 266, 265,
1040 264, 262, 261, 260, 255, 254, 253, 252, 251, 250,
1041 249, 248, 247, 246, 245, 244, 243, 242, 241, 240,
1042 239, 236, 235, 234, 233, 232, 231, 230, 229, 228,
1043 227, 226, 225, 224, 223, 222, 221, 220, 219, 218,
1044 217, 216, 158, 214, 213, 211, 210, 199, 198, 197,
1045 196, 195, 194, 189, 185, 184, 183, 182, 181, 180,
1046 179, 178, 177, 174, 173, 172, 169, 168, 165, 164,
1047 163, 162, 161, 158, 153, 152, 151, 130, 127, 124,
1048 121, 120, 108, 99, 44, 95, 93, 92, 83, 44,
1050 579, 11, 579, 579, 579, 579, 579, 579, 579, 579,
1051 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1052 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1053 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1054 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1055 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1056 579, 579, 579, 579, 579, 579, 579, 579
1061 583, 1, 1, 1, 0, 1, 1, 577, 1, 1,
1062 1, 1, 1, 1, 1, 1, 1, 21, 0, 3,
1063 3, 3, 21, 1, 1, 3, 13, 1, 13, 4,
1064 4, 4, 1, 0, 1, 4, 1, 5, 5, 5,
1065 27, 0, 1, 1, 28, 6, 6, 6, 7, 7,
1066 7, 1, 7, 234, 8, 8, 8, 1, 8, 27,
1067 17, 234, 17, 17, 1, 1, 2, 2, 2, 28,
1068 2, 2, 17, 2, 2, 2, 2, 2, 2, 2,
1069 2, 2, 5, 9, 9, 9, 20, 20, 2, 2,
1070 6, 17, 2, 10, 10, 10, 20, 2, 29, 2,
1072 9, 2, 32, 33, 38, 50, 38, 2, 2, 43,
1073 10, 43, 26, 61, 26, 20, 2, 26, 26, 61,
1074 58, 32, 2, 29, 50, 58, 84, 84, 33, 2,
1075 2, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1076 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1077 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1078 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1079 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1080 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1081 15, 15, 15, 15, 15, 15, 15, 19, 34, 19,
1083 19, 22, 49, 22, 22, 23, 51, 23, 23, 19,
1084 45, 53, 55, 22, 63, 57, 63, 23, 57, 55,
1085 53, 65, 55, 34, 86, 51, 87, 49, 19, 56,
1086 56, 88, 22, 67, 56, 65, 23, 85, 85, 56,
1087 45, 46, 114, 67, 46, 111, 111, 86, 52, 87,
1088 576, 46, 46, 114, 68, 52, 88, 46, 46, 46,
1089 46, 574, 46, 569, 46, 46, 46, 46, 46, 46,
1090 46, 46, 46, 68, 46, 46, 46, 46, 52, 89,
1091 69, 90, 52, 71, 71, 73, 52, 73, 68, 68,
1092 73, 73, 568, 71, 52, 68, 91, 96, 52, 69,
1094 52, 52, 89, 72, 90, 72, 72, 74, 74, 69,
1095 130, 100, 71, 101, 69, 72, 75, 74, 75, 75,
1096 76, 91, 76, 76, 77, 102, 77, 96, 75, 77,
1097 77, 130, 76, 567, 72, 100, 74, 101, 78, 78,
1098 81, 118, 81, 81, 131, 118, 154, 75, 78, 102,
1099 564, 76, 81, 82, 267, 82, 82, 98, 128, 128,
1100 128, 139, 139, 131, 98, 82, 267, 78, 138, 138,
1101 154, 81, 140, 140, 145, 142, 142, 143, 138, 143,
1102 143, 147, 146, 149, 82, 142, 562, 98, 144, 143,
1103 144, 98, 148, 144, 144, 98, 150, 138, 182, 145,
1105 147, 182, 204, 98, 142, 146, 149, 98, 143, 98,
1106 98, 105, 200, 200, 232, 150, 561, 148, 560, 105,
1107 105, 204, 200, 202, 202, 105, 105, 105, 105, 105,
1108 105, 201, 240, 201, 203, 203, 201, 201, 256, 256,
1109 475, 200, 240, 207, 105, 105, 105, 105, 105, 105,
1110 160, 160, 257, 257, 558, 559, 160, 160, 160, 160,
1111 160, 160, 207, 255, 307, 232, 337, 307, 255, 343,
1112 556, 337, 553, 551, 343, 160, 160, 160, 160, 160,
1113 160, 215, 215, 550, 386, 549, 475, 215, 215, 215,
1114 215, 215, 215, 547, 545, 418, 543, 386, 337, 386,
1116 418, 542, 541, 386, 540, 558, 215, 215, 215, 215,
1117 215, 215, 263, 263, 539, 535, 533, 532, 263, 263,
1118 263, 263, 263, 263, 531, 530, 529, 528, 527, 525,
1119 523, 522, 521, 520, 519, 518, 517, 263, 263, 263,
1120 263, 263, 263, 580, 580, 580, 581, 581, 581, 582,
1121 516, 582, 584, 584, 584, 585, 585, 585, 586, 515,
1122 586, 587, 587, 587, 514, 513, 512, 511, 509, 508,
1123 507, 504, 503, 502, 501, 500, 498, 497, 496, 495,
1124 493, 491, 490, 489, 488, 487, 486, 485, 484, 483,
1125 482, 481, 480, 479, 478, 477, 476, 473, 472, 471,
1127 470, 469, 467, 465, 464, 463, 462, 461, 460, 459,
1128 458, 456, 455, 454, 452, 451, 450, 449, 448, 445,
1129 443, 442, 441, 440, 439, 438, 437, 436, 435, 434,
1130 433, 432, 430, 429, 428, 427, 426, 425, 424, 423,
1131 422, 421, 420, 417, 416, 415, 414, 413, 409, 408,
1132 407, 406, 405, 404, 403, 402, 401, 400, 399, 398,
1133 395, 394, 393, 392, 391, 390, 389, 388, 387, 385,
1134 384, 382, 381, 380, 379, 378, 377, 375, 374, 372,
1135 371, 370, 369, 368, 367, 366, 365, 364, 363, 362,
1136 361, 360, 359, 358, 357, 356, 355, 354, 353, 352,
1138 351, 349, 348, 347, 346, 345, 344, 342, 340, 339,
1139 338, 336, 335, 334, 333, 332, 331, 330, 329, 328,
1140 326, 325, 324, 322, 321, 320, 319, 318, 317, 316,
1141 315, 314, 313, 311, 310, 309, 308, 303, 302, 301,
1142 300, 299, 298, 297, 295, 294, 293, 292, 291, 290,
1143 288, 287, 286, 285, 284, 283, 282, 281, 279, 278,
1144 277, 276, 275, 274, 273, 272, 271, 270, 269, 268,
1145 266, 265, 264, 261, 260, 254, 253, 252, 251, 250,
1146 249, 248, 247, 246, 245, 244, 243, 242, 241, 239,
1147 238, 237, 236, 235, 233, 231, 230, 229, 228, 227,
1149 226, 225, 224, 223, 222, 221, 220, 219, 218, 217,
1150 216, 212, 211, 210, 199, 198, 197, 196, 195, 194,
1151 193, 192, 191, 190, 189, 188, 187, 186, 185, 184,
1152 183, 181, 180, 179, 178, 177, 176, 175, 174, 173,
1153 172, 171, 170, 169, 168, 167, 166, 165, 164, 163,
1154 162, 161, 157, 156, 155, 153, 151, 137, 136, 135,
1155 134, 133, 132, 129, 127, 126, 125, 124, 123, 122,
1156 121, 120, 119, 117, 116, 115, 113, 112, 110, 109,
1157 108, 107, 106, 103, 99, 94, 93, 66, 64, 62,
1158 60, 59, 54, 48, 44, 42, 40, 39, 25, 14,
1160 11, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1161 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1162 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1163 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1164 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1165 579, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1166 579, 579, 579, 579, 579, 579, 579, 579
1170static char *yy_last_accepting_cpos;
1177 139, 141, 143, 148, 149, 154, 155, 156, 168, 171,
1178 176, 182, 191, 202, 213, 222, 231, 240, 250, 260,
1179 270, 289, 308, 317, 326, 336, 348, 358, 369, 378,
1180 388, 398, 408, 418, 427, 436, 445, 454, 463, 472,
1181 481, 490, 499, 508, 517, 526, 535, 544, 553, 562,
1182 571, 580, 589, 598, 607, 616, 625, 634, 643, 652,
1183 661, 670, 679, 688, 697, 706, 715, 724, 737, 746,
1184 755, 856, 872, 921, 929, 944, 945, 946, 947, 948,
1185 949, 951, 970, 987, 993, 1008, 1021, 1026, 1030, 1032,
1193#define REJECT reject_used_but_not_detected
1194#define yymore() yymore_used_but_not_detected
1195#define YY_MORE_ADJ 0
1196#define YY_RESTORE_YY_MORE_OFFSET
1198#line 1 "d2_lexer.ll"
1204#line 8 "d2_lexer.ll"
1207#ifndef __clang_analyzer__
1219#include <boost/lexical_cast.hpp>
1233bool start_token_flag =
false;
1236unsigned int comment_start_line = 0;
1241#define YY_FATAL_ERROR(msg) isc::d2::D2ParserContext::fatal(msg)
1242#line 1242 "d2_lexer.cc"
1257#define YY_NO_INPUT 1
1263#line 96 "d2_lexer.ll"
1267#define YY_USER_ACTION driver.loc_.columns(yyleng);
1268#line 1268 "d2_lexer.cc"
1269#line 1269 "d2_lexer.cc"
1274#define DIR_INCLUDE 3
1277#ifndef YY_NO_UNISTD_H
1289#ifndef YY_EXTRA_TYPE
1290#define YY_EXTRA_TYPE void *
1297static int yy_init_globals (
void );
1340#ifndef YY_SKIP_YYWRAP
1342extern "C" int yywrap (
void );
1344extern int yywrap (
void );
1357static void yy_flex_strncpy (
char *,
const char *,
int );
1360#ifdef YY_NEED_STRLEN
1361static int yy_flex_strlen (
const char * );
1368static int yyinput (
void );
1370static int input (
void );
1382#ifndef YY_READ_BUF_SIZE
1385#define YY_READ_BUF_SIZE 16384
1387#define YY_READ_BUF_SIZE 8192
1397#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
1407#define YY_INPUT(buf,result,max_size) \
1409 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
1413 for ( n = 0; n < max_size && \
1414 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1415 buf[n] = (char) c; \
1417 buf[n++] = (char) c; \
1418 if ( c == EOF && ferror( yyin ) ) \
1419 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1425 while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
1427 if( errno != EINTR) \
1429 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1447#define yyterminate() return YY_NULL
1451#ifndef YY_START_STACK_INCR
1452#define YY_START_STACK_INCR 25
1456#ifndef YY_FATAL_ERROR
1458#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1479#define YY_DECL_IS_OURS 1
1482extern int yylex (
void);
1484#define YY_DECL int yylex (void)
1493#ifndef YY_USER_ACTION
1494#define YY_USER_ACTION
1499#define YY_BREAK break;
1503#define YY_RULE_SETUP \
1551#line 102 "d2_lexer.ll"
1555#line 106 "d2_lexer.ll"
1563 if (start_token_flag) {
1564 start_token_flag =
false;
1565 switch (start_token_value) {
1589#line 1589 "d2_lexer.cc"
1594 yy_cp = (yy_c_buf_p);
1597 *
yy_cp = (yy_hold_char);
1605 yy_current_state = (yy_start);
1610 if ( yy_accept[yy_current_state] )
1612 (yy_last_accepting_state) = yy_current_state;
1613 (yy_last_accepting_cpos) =
yy_cp;
1615 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1617 yy_current_state = (int) yy_def[yy_current_state];
1618 if ( yy_current_state >= 580 )
1619 yy_c = yy_meta[yy_c];
1621 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1624 while ( yy_current_state != 579 );
1625 yy_cp = (yy_last_accepting_cpos);
1626 yy_current_state = (yy_last_accepting_state);
1630 yy_act = yy_accept[yy_current_state];
1642 fprintf( stderr,
"--scanner backing up\n" );
1644 fprintf( stderr,
"--accepting rule at line %ld (\"%s\")\n",
1647 fprintf( stderr,
"--accepting default rule (\"%s\")\n",
1650 fprintf( stderr,
"--(end of buffer or a NUL)\n" );
1652 fprintf( stderr,
"--EOF (start condition %d)\n",
YY_START );
1660 *
yy_cp = (yy_hold_char);
1661 yy_cp = (yy_last_accepting_cpos);
1662 yy_current_state = (yy_last_accepting_state);
1663 goto yy_find_action;
1667#line 139 "d2_lexer.ll"
1672#line 141 "d2_lexer.ll"
1677#line 143 "d2_lexer.ll"
1680 comment_start_line = driver.loc_.end.line;;
1685#line 148 "d2_lexer.ll"
1690#line 149 "d2_lexer.ll"
1694#line 150 "d2_lexer.ll"
1701#line 154 "d2_lexer.ll"
1706#line 155 "d2_lexer.ll"
1711#line 156 "d2_lexer.ll"
1716 std::string tmp(
yytext+1);
1717 tmp.resize(tmp.size() - 1);
1719 driver.includeFile(tmp);
1725#line 165 "d2_lexer.ll"
1732#line 168 "d2_lexer.ll"
1737#line 171 "d2_lexer.ll"
1746#line 176 "d2_lexer.ll"
1749 driver.loc_.lines(
yyleng);
1755#line 182 "d2_lexer.ll"
1757 switch(driver.ctx_) {
1767#line 191 "d2_lexer.ll"
1769 switch(driver.ctx_) {
1781#line 202 "d2_lexer.ll"
1783 switch(driver.ctx_) {
1795#line 213 "d2_lexer.ll"
1797 switch(driver.ctx_) {
1807#line 222 "d2_lexer.ll"
1809 switch(driver.ctx_) {
1819#line 231 "d2_lexer.ll"
1821 switch(driver.ctx_) {
1831#line 240 "d2_lexer.ll"
1837 std::string tmp(
yytext+1);
1838 tmp.resize(tmp.size() - 1);
1844#line 250 "d2_lexer.ll"
1850 std::string tmp(
yytext+1);
1851 tmp.resize(tmp.size() - 1);
1857#line 260 "d2_lexer.ll"
1863 std::string tmp(
yytext+1);
1864 tmp.resize(tmp.size() - 1);
1870#line 270 "d2_lexer.ll"
1872 switch(driver.ctx_) {
1892#line 289 "d2_lexer.ll"
1894 switch(driver.ctx_) {
1914#line 308 "d2_lexer.ll"
1916 switch(driver.ctx_) {
1926#line 317 "d2_lexer.ll"
1928 switch(driver.ctx_) {
1938#line 326 "d2_lexer.ll"
1940 switch(driver.ctx_) {
1951#line 336 "d2_lexer.ll"
1953 switch(driver.ctx_) {
1966#line 348 "d2_lexer.ll"
1968 switch(driver.ctx_) {
1979#line 358 "d2_lexer.ll"
1981 switch(driver.ctx_) {
1992#line 369 "d2_lexer.ll"
1994 switch(driver.ctx_) {
2004#line 378 "d2_lexer.ll"
2006 switch(driver.ctx_) {
2017#line 388 "d2_lexer.ll"
2019 switch(driver.ctx_) {
2030#line 398 "d2_lexer.ll"
2032 switch(driver.ctx_) {
2043#line 408 "d2_lexer.ll"
2045 switch(driver.ctx_) {
2056#line 418 "d2_lexer.ll"
2058 switch(driver.ctx_) {
2068#line 427 "d2_lexer.ll"
2070 switch(driver.ctx_) {
2080#line 436 "d2_lexer.ll"
2082 switch(driver.ctx_) {
2092#line 445 "d2_lexer.ll"
2094 switch(driver.ctx_) {
2104#line 454 "d2_lexer.ll"
2106 switch(driver.ctx_) {
2116#line 463 "d2_lexer.ll"
2118 switch(driver.ctx_) {
2128#line 472 "d2_lexer.ll"
2130 switch(driver.ctx_) {
2140#line 481 "d2_lexer.ll"
2142 switch(driver.ctx_) {
2152#line 490 "d2_lexer.ll"
2154 switch(driver.ctx_) {
2164#line 499 "d2_lexer.ll"
2166 switch(driver.ctx_) {
2176#line 508 "d2_lexer.ll"
2178 switch(driver.ctx_) {
2188#line 517 "d2_lexer.ll"
2190 switch(driver.ctx_) {
2200#line 526 "d2_lexer.ll"
2202 switch(driver.ctx_) {
2212#line 535 "d2_lexer.ll"
2214 switch(driver.ctx_) {
2224#line 544 "d2_lexer.ll"
2226 switch(driver.ctx_) {
2236#line 553 "d2_lexer.ll"
2238 switch(driver.ctx_) {
2248#line 562 "d2_lexer.ll"
2250 switch(driver.ctx_) {
2260#line 571 "d2_lexer.ll"
2262 switch(driver.ctx_) {
2272#line 580 "d2_lexer.ll"
2274 switch(driver.ctx_) {
2284#line 589 "d2_lexer.ll"
2286 switch(driver.ctx_) {
2296#line 598 "d2_lexer.ll"
2298 switch(driver.ctx_) {
2308#line 607 "d2_lexer.ll"
2310 switch(driver.ctx_) {
2320#line 616 "d2_lexer.ll"
2322 switch(driver.ctx_) {
2332#line 625 "d2_lexer.ll"
2334 switch(driver.ctx_) {
2344#line 634 "d2_lexer.ll"
2346 switch(driver.ctx_) {
2356#line 643 "d2_lexer.ll"
2358 switch(driver.ctx_) {
2368#line 652 "d2_lexer.ll"
2370 switch(driver.ctx_) {
2380#line 661 "d2_lexer.ll"
2382 switch(driver.ctx_) {
2392#line 670 "d2_lexer.ll"
2394 switch(driver.ctx_) {
2404#line 679 "d2_lexer.ll"
2406 switch(driver.ctx_) {
2416#line 688 "d2_lexer.ll"
2418 switch(driver.ctx_) {
2428#line 697 "d2_lexer.ll"
2430 switch(driver.ctx_) {
2440#line 706 "d2_lexer.ll"
2442 switch(driver.ctx_) {
2452#line 715 "d2_lexer.ll"
2454 switch(driver.ctx_) {
2464#line 724 "d2_lexer.ll"
2466 switch(driver.ctx_) {
2480#line 737 "d2_lexer.ll"
2482 switch(driver.ctx_) {
2492#line 746 "d2_lexer.ll"
2494 switch(driver.ctx_) {
2504#line 755 "d2_lexer.ll"
2509 std::string raw(
yytext+1);
2510 size_t len = raw.size() - 1;
2512 std::string decoded;
2513 decoded.reserve(len);
2514 for (
size_t pos = 0; pos < len; ++pos) {
2520 driver.error(driver.loc_,
"Bad quote in \"" + raw +
"\"");
2526 driver.error(driver.loc_,
"Overflow escape in \"" + raw +
"\"");
2533 decoded.push_back(c);
2536 decoded.push_back(
'\b');
2539 decoded.push_back(
'\f');
2542 decoded.push_back(
'\n');
2545 decoded.push_back(
'\r');
2548 decoded.push_back(
'\t');
2553 if (pos + 4 > len) {
2555 driver.error(driver.loc_,
2556 "Overflow unicode escape in \"" + raw +
"\"");
2558 if ((raw[pos] !=
'0') || (raw[pos + 1] !=
'0')) {
2559 driver.error(driver.loc_,
2560 "Unsupported unicode escape in \"" + raw +
"\"",
2565 if ((c >=
'0') && (c <=
'9')) {
2567 }
else if ((c >=
'A') && (c <=
'F')) {
2568 b = (c -
'A' + 10) << 4;
2569 }
else if ((c >=
'a') && (c <=
'f')) {
2570 b = (c -
'a' + 10) << 4;
2573 driver.error(driver.loc_,
"Not hexadecimal in unicode escape in \"" + raw +
"\"");
2577 if ((c >=
'0') && (c <=
'9')) {
2579 }
else if ((c >=
'A') && (c <=
'F')) {
2581 }
else if ((c >=
'a') && (c <=
'f')) {
2585 driver.error(driver.loc_,
"Not hexadecimal in unicode escape in \"" + raw +
"\"");
2587 decoded.push_back(
static_cast<char>(b & 0xff));
2591 driver.error(driver.loc_,
"Bad escape in \"" + raw +
"\"");
2595 if ((c >= 0) && (c < 0x20)) {
2597 driver.error(driver.loc_,
"Invalid control in \"" + raw +
"\"");
2599 decoded.push_back(c);
2609#line 856 "d2_lexer.ll"
2612 std::string raw(
yytext+1);
2613 size_t len = raw.size() - 1;
2615 for (; pos < len; ++pos) {
2617 if ((c >= 0) && (c < 0x20)) {
2621 driver.error(driver.loc_,
2622 "Invalid control in " + std::string(
yytext),
2629#line 872 "d2_lexer.ll"
2632 std::string raw(
yytext+1);
2633 size_t len = raw.size() - 1;
2636 for (; pos < len; ++pos) {
2655 if ((pos + 4 > len) ||
2656 !std::isxdigit(raw[pos + 1]) ||
2657 !std::isxdigit(raw[pos + 2]) ||
2658 !std::isxdigit(raw[pos + 3]) ||
2659 !std::isxdigit(raw[pos + 4])) {
2670 std::string trailer =
"";
2671 if (raw[len - 1] ==
'\\') {
2674 driver.error(driver.loc_,
2675 "Bad escape in " + std::string(
yytext) + trailer,
2681#line 921 "d2_lexer.ll"
2684 std::string raw(
yytext+1);
2685 driver.error(driver.loc_,
2686 "Overflow escape in " + std::string(
yytext),
2692#line 929 "d2_lexer.ll"
2695 std::string raw(
yytext+1);
2696 size_t pos = raw.size() - 1;
2697 for (; pos > 0; --pos) {
2703 driver.error(driver.loc_,
2704 "Overflow unicode escape in " + std::string(
yytext),
2710#line 944 "d2_lexer.ll"
2715#line 945 "d2_lexer.ll"
2720#line 946 "d2_lexer.ll"
2725#line 947 "d2_lexer.ll"
2730#line 948 "d2_lexer.ll"
2735#line 949 "d2_lexer.ll"
2740#line 951 "d2_lexer.ll"
2744 int64_t integer = 0;
2750 integer = boost::lexical_cast<int64_t>(tmp);
2751 }
catch (
const boost::bad_lexical_cast &) {
2752 driver.error(driver.loc_,
"Failed to convert " + tmp +
" to an integer.");
2755 driver.warning(driver.loc_,
"leading zeros in integers will be deprecated.");
2762#line 970 "d2_lexer.ll"
2766 int64_t integer = 0;
2772 integer = boost::lexical_cast<int64_t>(tmp);
2773 }
catch (
const boost::bad_lexical_cast &) {
2774 driver.error(driver.loc_,
"Failed to convert " + tmp +
" to an integer.");
2782#line 987 "d2_lexer.ll"
2786 driver.error(driver.loc_,
"Deprecated plus sign in " + tmp +
" number.");
2791#line 993 "d2_lexer.ll"
2797 fp = boost::lexical_cast<double>(tmp);
2798 }
catch (
const boost::bad_lexical_cast &) {
2799 driver.error(driver.loc_,
"Failed to convert " + tmp +
" to a floating point.");
2802 driver.warning(driver.loc_,
"leading zeros in numbers will be deprecated.");
2809#line 1008 "d2_lexer.ll"
2815 fp = boost::lexical_cast<double>(tmp);
2816 }
catch (
const boost::bad_lexical_cast &) {
2817 driver.error(driver.loc_,
"Failed to convert " + tmp +
" to a floating point.");
2825#line 1021 "d2_lexer.ll"
2833#line 1026 "d2_lexer.ll"
2840#line 1030 "d2_lexer.ll"
2841driver.error (driver.loc_,
"JSON true reserved keyword is lower case only");
2845#line 1032 "d2_lexer.ll"
2846driver.error (driver.loc_,
"JSON false reserved keyword is lower case only");
2850#line 1034 "d2_lexer.ll"
2851driver.error (driver.loc_,
"JSON null reserved keyword is lower case only");
2855#line 1036 "d2_lexer.ll"
2856driver.error (driver.loc_,
"Invalid character: " + std::string(
yytext));
2859#line 1038 "d2_lexer.ll"
2861 if (driver.states_.empty()) {
2864 driver.loc_ = driver.locs_.back();
2865 driver.locs_.pop_back();
2866 driver.file_ = driver.files_.back();
2867 driver.files_.pop_back();
2868 if (driver.sfile_) {
2869 fclose(driver.sfile_);
2872 if (!driver.sfiles_.empty()) {
2873 driver.sfile_ = driver.sfiles_.back();
2874 driver.sfiles_.pop_back();
2877 d2_parser__switch_to_buffer(driver.states_.back());
2878 driver.states_.pop_back();
2885#line 1061 "d2_lexer.ll"
2888#line 2888 "d2_lexer.cc"
2896 *
yy_cp = (yy_hold_char);
2930 (yy_c_buf_p) = (
yytext_ptr) + yy_amount_of_matched_text;
2932 yy_current_state = yy_get_previous_state( );
2943 yy_next_state = yy_try_NUL_trans( yy_current_state );
2947 if ( yy_next_state )
2950 yy_cp = ++(yy_c_buf_p);
2951 yy_current_state = yy_next_state;
2958 yy_cp = (yy_last_accepting_cpos);
2959 yy_current_state = (yy_last_accepting_state);
2960 goto yy_find_action;
2964 else switch ( yy_get_next_buffer( ) )
2968 (yy_did_buffer_switch_on_eof) = 0;
2989 if ( ! (yy_did_buffer_switch_on_eof) )
2999 yy_current_state = yy_get_previous_state( );
3001 yy_cp = (yy_c_buf_p);
3009 yy_current_state = yy_get_previous_state( );
3011 yy_cp = (yy_c_buf_p);
3013 goto yy_find_action;
3020 "fatal flex scanner internal error--no action found" );
3041static int yy_get_next_buffer (
void)
3048 int number_to_move, i;
3053 "fatal flex scanner internal error--end of buffer missed" );
3077 number_to_move = (int) ((yy_c_buf_p) - (
yytext_ptr) - 1);
3079 for ( i = 0; i < number_to_move; ++i )
3080 *(dest++) = *(source++);
3093 while ( num_to_read <= 0 )
3099 int yy_c_buf_p_offset =
3106 if ( new_size <= 0 )
3122 "fatal error - scanner input buffer overflow" );
3124 (yy_c_buf_p) = &b->
yy_ch_buf[yy_c_buf_p_offset];
3136 (yy_n_chars), num_to_read );
3141 if ( (yy_n_chars) == 0 )
3162 int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
3166 YY_FATAL_ERROR(
"out of dynamic memory in yy_get_next_buffer()" );
3171 (yy_n_chars) += number_to_move;
3193 yy_current_state = (yy_start);
3199 if ( yy_accept[yy_current_state] )
3201 (yy_last_accepting_state) = yy_current_state;
3202 (yy_last_accepting_cpos) =
yy_cp;
3204 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3206 yy_current_state = (int) yy_def[yy_current_state];
3207 if ( yy_current_state >= 580 )
3208 yy_c = yy_meta[yy_c];
3210 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
3213 return yy_current_state;
3229 char *
yy_cp = (yy_c_buf_p);
3232 if ( yy_accept[yy_current_state] )
3234 (yy_last_accepting_state) = yy_current_state;
3235 (yy_last_accepting_cpos) =
yy_cp;
3237 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3239 yy_current_state = (int) yy_def[yy_current_state];
3240 if ( yy_current_state >= 580 )
3241 yy_c = yy_meta[yy_c];
3243 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
3244 yy_is_jam = (yy_current_state == 579);
3246 return yy_is_jam ? 0 : yy_current_state;
3258 static int yyinput (
void)
3260 static int input (
void)
3269 *(yy_c_buf_p) = (yy_hold_char);
3279 *(yy_c_buf_p) =
'\0';
3283 int offset = (int) ((yy_c_buf_p) - (
yytext_ptr));
3286 switch ( yy_get_next_buffer( ) )
3309 if ( ! (yy_did_buffer_switch_on_eof) )
3325 c = *(
unsigned char *) (yy_c_buf_p);
3326 *(yy_c_buf_p) =
'\0';
3327 (yy_hold_char) = *++(yy_c_buf_p);
3385 *(yy_c_buf_p) = (yy_hold_char);
3398 (yy_did_buffer_switch_on_eof) = 1;
3414 (yy_hold_char) = *(yy_c_buf_p);
3562 if (new_buffer == NULL)
3571 *(yy_c_buf_p) = (yy_hold_char);
3578 (yy_buffer_stack_top)++;
3583 (yy_did_buffer_switch_on_eof) = 1;
3603 if ((yy_buffer_stack_top) > 0)
3604 --(yy_buffer_stack_top);
3608 (yy_did_buffer_switch_on_eof) = 1;
3625 if (!(yy_buffer_stack)) {
3635 if ( ! (yy_buffer_stack) )
3636 YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()" );
3638 memset((yy_buffer_stack), 0, num_to_alloc *
sizeof(
struct yy_buffer_state*));
3640 (yy_buffer_stack_max) = num_to_alloc;
3641 (yy_buffer_stack_top) = 0;
3645 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
3650 num_to_alloc = (yy_buffer_stack_max) + grow_size;
3655 if ( ! (yy_buffer_stack) )
3656 YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()" );
3659 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size *
sizeof(
struct yy_buffer_state*));
3660 (yy_buffer_stack_max) = num_to_alloc;
3739 for ( i = 0; i < _yybytes_len; ++i )
3740 buf[i] = yybytes[i];
3757#ifndef YY_EXIT_FAILURE
3758#define YY_EXIT_FAILURE 2
3762static void yynoreturn yy_fatal_error (
const char* msg )
3764 fprintf( stderr,
"%s\n", msg );
3778 int yyless_macro_arg = (n); \
3779 YY_LESS_LINENO(yyless_macro_arg);\
3780 yytext[yyleng] = (yy_hold_char); \
3781 (yy_c_buf_p) = yytext + yyless_macro_arg; \
3782 (yy_hold_char) = *(yy_c_buf_p); \
3783 *(yy_c_buf_p) = '\0'; \
3784 yyleng = yyless_macro_arg; \
3883static int yy_init_globals (
void)
3889 (yy_buffer_stack) = NULL;
3890 (yy_buffer_stack_top) = 0;
3891 (yy_buffer_stack_max) = 0;
3892 (yy_c_buf_p) = NULL;
3925 yyfree((yy_buffer_stack) );
3926 (yy_buffer_stack) = NULL;
3943static void yy_flex_strncpy (
char* s1,
const char * s2,
int n )
3947 for ( i = 0; i < n; ++i )
3952#ifdef YY_NEED_STRLEN
3953static int yy_flex_strlen (
const char * s )
3956 for ( n = 0; s[n]; ++n )
3965 return malloc(size);
3978 return realloc(ptr, size);
3983 free( (
char *) ptr );
3988#define YYTABLES_NAME "yytables"
3993#line 1061 "d2_lexer.ll"
4001 start_token_flag =
true;
4002 start_token_value = parser_type;
4009 buffer = d2_parser__scan_bytes(
str.c_str(),
str.size());
4011 fatal(
"cannot scan string");
4018 const std::string& filename,
4021 start_token_flag =
true;
4022 start_token_value = parser_type;
4031 buffer = d2_parser__create_buffer(f, 65536 );
4033 fatal(
"cannot scan file " + filename);
4035 d2_parser__switch_to_buffer(buffer);
4043 static_cast<void>(d2_parser_lex_destroy());
4054 d2_parser__delete_buffer(
states_.back());
4062 fatal(
"Too many nested include.");
4065 FILE* f = fopen(filename.c_str(),
"r");
4067 fatal(
"Can't open include file " + filename);
4075 buffer = d2_parser__create_buffer(f, 65536 );
4077 fatal(
"Can't scan include file " + filename);
4079 d2_parser__switch_to_buffer(buffer);
4092 void dummy() { yy_fatal_error(
"Fix me: how to disable its definition?"); }
Evaluation error exception raised when trying to parse.
ParserType
Defines currently supported scopes.
@ PARSER_TSIG_KEY
Used for parsing a list of TSIG Keys.
@ PARSER_DDNS_DOMAINS
Used for parsing content of a DNS Server.
@ PARSER_DDNS_DOMAIN
Used for parsing a list a DDNS Domains.
@ PARSER_DNS_SERVER
Used for parsing a list of DNS servers.
@ PARSER_SUB_DHCPDDNS
Used for parsing content of a TSIG key.
@ PARSER_JSON
This parser will parse the content as generic JSON.
@ PARSER_TSIG_KEYS
Used for parsing content of a DDNS Domain.
@ PARSER_DHCPDDNS
Used for parsing content of DhcpDdns.
isc::d2::location loc_
Location of the current token.
std::string file_
File name.
void includeFile(const std::string &filename)
Divert input to an include file.
@ AUTHENTICATION
Used while parsing content of an authentication type.
@ DDNS_DOMAIN
Used while parsing a list of ddns-domains.
@ DNS_SERVERS
Used while parsing content of a control-socket.
@ DDNS_DOMAINS
Used while parsing content of a dns-server.
@ AUTH_TYPE
Used while parsing content of a client.
@ NCR_FORMAT
Used while parsing DhcpDdns/ncr-format.
@ NCR_PROTOCOL
Used while parsing DhcpDdns/ncr-protocol.
@ DHCPDDNS
Used while parsing content of a tsig-key.
@ OUTPUT_OPTIONS
Used while parsing DhcpDdns/loggers/output-options structures.
@ FORWARD_DDNS
Used while parsing content of DhcpDdns/reverse-ddns.
@ CONTROL_SOCKET_TYPE
Used while parsing content of an authentication.
@ TSIG_KEY
Used while parsing a list of tsig-keys.
@ REVERSE_DDNS
Used while parsing content of a ddns-domain.
@ LOGGERS
Used while parsing DhcpDdns/loggers structures.
@ HOOKS_LIBRARIES
Used while parsing DhcpDdns/hooks-libraries.
@ TSIG_KEYS
Used while parsing content of DhcpDdns/tsig-keys/algorithm.
@ CONTROL_SOCKET
Used while parsing content of a socket-type.
@ CONFIG
Used while parsing content of DhcpDdns.
@ DNS_SERVER
Used while parsing content of list of dns-servers.
std::vector< FILE * > sfiles_
sFile (aka FILE) stack
FILE * sfile_
sFile (aka FILE)
void scanStringBegin(const std::string &str, ParserType type)
Method called before scanning starts on a string.
void scanFileBegin(FILE *f, const std::string &filename, ParserType type)
Method called before scanning starts on a file.
std::vector< isc::d2::location > locs_
Location stack.
std::vector< struct yy_buffer_state * > states_
Lexer state stack.
std::vector< std::string > files_
File name stack.
void scanEnd()
Method called after the last tokens are scanned.
static symbol_type make_COMMENT(const location_type &l)
static symbol_type make_AUTHENTICATION(const location_type &l)
static symbol_type make_STRING(const std::string &v, const location_type &l)
static symbol_type make_SUB_DDNS_DOMAIN(const location_type &l)
static symbol_type make_SUB_HOOKS_LIBRARY(const location_type &l)
static symbol_type make_LOGGERS(const location_type &l)
static symbol_type make_KEY_NAME(const location_type &l)
static symbol_type make_PARAMETERS(const location_type &l)
static symbol_type make_SUB_TSIG_KEYS(const location_type &l)
static symbol_type make_FORWARD_DDNS(const location_type &l)
static symbol_type make_TOPLEVEL_DHCPDDNS(const location_type &l)
static symbol_type make_SOCKET_TYPE(const location_type &l)
static symbol_type make_SUB_DDNS_DOMAINS(const location_type &l)
static symbol_type make_TCP(const location_type &l)
static symbol_type make_NAME(const location_type &l)
static symbol_type make_MAXSIZE(const location_type &l)
static symbol_type make_PASSWORD_FILE(const location_type &l)
static symbol_type make_HTTPS(const location_type &l)
static symbol_type make_OUTPUT_OPTIONS(const location_type &l)
static symbol_type make_LSQUARE_BRACKET(const location_type &l)
static symbol_type make_PASSWORD(const location_type &l)
static symbol_type make_DEBUGLEVEL(const location_type &l)
static symbol_type make_LCURLY_BRACKET(const location_type &l)
static symbol_type make_DIGEST_BITS(const location_type &l)
static symbol_type make_SOCKET_ADDRESS(const location_type &l)
static symbol_type make_CERT_FILE(const location_type &l)
static symbol_type make_TOPLEVEL_JSON(const location_type &l)
static symbol_type make_SOCKET_NAME(const location_type &l)
static symbol_type make_DNS_SERVER_TIMEOUT(const location_type &l)
static symbol_type make_NULL_TYPE(const location_type &l)
static symbol_type make_LIBRARY(const location_type &l)
static symbol_type make_UDP(const location_type &l)
static symbol_type make_HOOKS_LIBRARIES(const location_type &l)
static symbol_type make_COLON(const location_type &l)
static symbol_type make_COMMA(const location_type &l)
static symbol_type make_SECRET(const location_type &l)
static symbol_type make_SUB_TSIG_KEY(const location_type &l)
static symbol_type make_RCURLY_BRACKET(const location_type &l)
static symbol_type make_UNIX(const location_type &l)
static symbol_type make_OUTPUT(const location_type &l)
static symbol_type make_SUB_DHCPDDNS(const location_type &l)
static symbol_type make_INTEGER(const int64_t &v, const location_type &l)
static symbol_type make_DHCPDDNS(const location_type &l)
static symbol_type make_CONTROL_SOCKETS(const location_type &l)
static symbol_type make_SUB_DNS_SERVER(const location_type &l)
static symbol_type make_MAXVER(const location_type &l)
static symbol_type make_SECRET_FILE(const location_type &l)
static symbol_type make_DDNS_DOMAINS(const location_type &l)
static symbol_type make_SEVERITY(const location_type &l)
static symbol_type make_REALM(const location_type &l)
static symbol_type make_RSQUARE_BRACKET(const location_type &l)
static symbol_type make_HTTP(const location_type &l)
static symbol_type make_HOSTNAME(const location_type &l)
static symbol_type make_USER_CONTEXT(const location_type &l)
static symbol_type make_USER(const location_type &l)
static symbol_type make_SOCKET_PORT(const location_type &l)
static symbol_type make_BASIC(const location_type &l)
static symbol_type make_FLUSH(const location_type &l)
static symbol_type make_REVERSE_DDNS(const location_type &l)
static symbol_type make_PATTERN(const location_type &l)
static symbol_type make_KEY_FILE(const location_type &l)
static symbol_type make_ALGORITHM(const location_type &l)
static symbol_type make_IP_ADDRESS(const location_type &l)
static symbol_type make_PORT(const location_type &l)
static symbol_type make_CLIENTS(const location_type &l)
static symbol_type make_CERT_REQUIRED(const location_type &l)
static symbol_type make_TYPE(const location_type &l)
static symbol_type make_TRUST_ANCHOR(const location_type &l)
static symbol_type make_FLOAT(const double &v, const location_type &l)
static symbol_type make_BOOLEAN(const bool &v, const location_type &l)
static symbol_type make_DIRECTORY(const location_type &l)
static symbol_type make_JSON(const location_type &l)
static symbol_type make_END(const location_type &l)
static symbol_type make_CONTROL_SOCKET(const location_type &l)
static symbol_type make_NCR_PROTOCOL(const location_type &l)
static symbol_type make_DNS_SERVERS(const location_type &l)
static symbol_type make_USER_FILE(const location_type &l)
static symbol_type make_TSIG_KEYS(const location_type &l)
static symbol_type make_NCR_FORMAT(const location_type &l)
#define yyget_in
Get the input stream.
unsigned char flex_uint8_t
unsigned int flex_uint32_t
#define yyget_lineno
Get the current line number.
#define yypush_buffer_state
struct yy_buffer_state * YY_BUFFER_STATE
#define yyget_out
Get the output stream.
#define YY_RESTORE_YY_MORE_OFFSET
#define yypop_buffer_state
Removes and deletes the top of the stack, if present.
#define EOB_ACT_END_OF_FILE
#define YY_CURRENT_BUFFER_LVALUE
#define yyget_leng
Get the length of the current token.
#define yyensure_buffer_stack
#define yy_switch_to_buffer
#define YY_CURRENT_BUFFER
#define YY_INPUT(buf, result, max_size)
#define YY_STATE_EOF(state)
#define YY_END_OF_BUFFER_CHAR
#define YY_FATAL_ERROR(msg)
unsigned short int flex_uint16_t
#define YY_DO_BEFORE_ACTION
#define yyget_text
Get the current token.
#define EOB_ACT_LAST_MATCH
#define YY_BUFFER_EOF_PENDING
#define EOB_ACT_CONTINUE_SCAN
#define yy_load_buffer_state
#define isc_throw(type, stream)
A shortcut macro to insert known values into exception arguments.
int yy_bs_column
The column count.
int yy_bs_lineno
The line count.