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 90
695#define YY_END_OF_BUFFER 91
705 83, 83, 0, 0, 0, 0, 0, 0, 0, 0,
706 91, 89, 10, 11, 89, 1, 83, 80, 83, 83,
707 89, 82, 81, 89, 89, 89, 89, 89, 76, 77,
708 89, 89, 89, 78, 79, 5, 5, 5, 89, 89,
709 89, 10, 11, 0, 0, 71, 0, 0, 0, 0,
710 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
711 0, 0, 0, 0, 0, 0, 0, 0, 1, 83,
712 83, 0, 82, 83, 3, 2, 6, 0, 83, 0,
713 0, 0, 0, 0, 0, 4, 0, 0, 9, 0,
714 72, 0, 0, 0, 0, 0, 0, 74, 0, 0,
716 0, 0, 0, 0, 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, 2, 0, 0, 0, 0, 0, 0, 0, 8,
720 0, 0, 0, 0, 0, 73, 75, 0, 0, 0,
721 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 88, 86,
725 0, 85, 84, 0, 0, 0, 19, 18, 0, 0,
727 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
728 0, 0, 0, 0, 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, 87,
731 84, 0, 0, 20, 0, 0, 0, 0, 0, 0,
732 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
733 0, 38, 0, 0, 0, 0, 0, 0, 0, 0,
734 68, 0, 0, 0, 0, 0, 0, 14, 0, 0,
735 0, 0, 0, 0, 0, 44, 37, 49, 0, 0,
736 0, 0, 0, 45, 0, 0, 0, 0, 0, 0,
738 0, 0, 0, 0, 64, 0, 0, 0, 39, 0,
739 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
740 0, 0, 46, 0, 0, 0, 0, 0, 0, 0,
741 0, 7, 0, 0, 0, 0, 0, 0, 0, 0,
742 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
743 0, 0, 0, 0, 66, 0, 0, 63, 0, 0,
744 0, 0, 0, 0, 32, 0, 0, 0, 0, 0,
745 0, 0, 0, 0, 0, 0, 0, 48, 22, 0,
746 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
747 0, 59, 60, 65, 0, 0, 0, 0, 0, 0,
749 67, 0, 0, 0, 0, 0, 0, 0, 0, 0,
750 0, 0, 12, 0, 0, 0, 0, 0, 0, 0,
751 0, 0, 0, 0, 0, 28, 0, 55, 26, 0,
752 0, 0, 0, 0, 51, 0, 0, 0, 70, 0,
753 0, 0, 0, 0, 0, 0, 0, 30, 0, 54,
754 0, 0, 0, 0, 0, 47, 0, 0, 0, 0,
755 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
756 0, 0, 0, 29, 0, 50, 0, 0, 0, 0,
757 69, 0, 0, 0, 0, 0, 13, 17, 0, 0,
758 0, 58, 0, 0, 0, 0, 0, 0, 0, 0,
760 0, 0, 0, 0, 0, 31, 0, 27, 0, 0,
761 0, 0, 0, 0, 0, 33, 0, 40, 42, 36,
762 0, 0, 0, 0, 0, 25, 0, 23, 0, 16,
763 0, 0, 0, 24, 0, 53, 21, 0, 56, 0,
764 0, 0, 0, 0, 52, 0, 43, 34, 0, 0,
765 0, 62, 61, 41, 35, 0, 57, 0, 0, 15,
769static const YY_CHAR yy_ec[256] =
771 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
772 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
773 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
774 1, 4, 5, 6, 7, 5, 5, 5, 5, 5,
775 5, 8, 9, 10, 11, 12, 13, 14, 14, 14,
776 14, 14, 14, 14, 14, 14, 14, 15, 5, 16,
777 5, 17, 18, 5, 19, 20, 21, 22, 23, 24,
778 5, 5, 5, 25, 5, 26, 5, 27, 28, 29,
779 5, 30, 31, 32, 33, 5, 5, 5, 5, 5,
780 34, 35, 36, 5, 37, 5, 38, 39, 40, 41,
782 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
783 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
784 62, 63, 64, 5, 65, 5, 5, 5, 5, 5,
785 5, 5, 5, 5, 5, 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,
793 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,
801static const YY_CHAR yy_meta[66] =
803 1, 1, 2, 1, 1, 3, 1, 1, 1, 1,
804 1, 1, 1, 1, 1, 1, 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,
814 0, 64, 17, 27, 35, 43, 46, 52, 81, 90,
815 815, 816, 24, 811, 129, 0, 183, 816, 184, 30,
816 9, 187, 816, 795, 100, 21, 28, 65, 816, 816,
817 22, 64, 71, 816, 816, 816, 100, 799, 760, 0,
818 793, 101, 806, 27, 208, 816, 763, 171, 42, 178,
819 232, 61, 769, 75, 162, 64, 66, 753, 763, 159,
820 766, 174, 745, 171, 760, 176, 222, 247, 0, 208,
821 258, 206, 262, 259, 816, 0, 816, 787, 786, 190,
822 195, 235, 253, 260, 247, 816, 759, 792, 816, 285,
823 816, 286, 757, 266, 266, 277, 790, 0, 339, 751,
825 737, 737, 737, 745, 184, 739, 750, 252, 732, 729,
826 731, 180, 728, 773, 721, 743, 737, 719, 729, 723,
827 720, 255, 721, 31, 257, 735, 716, 727, 719, 725,
828 728, 0, 277, 287, 292, 283, 291, 300, 720, 816,
829 715, 295, 761, 760, 759, 816, 816, 369, 712, 718,
830 716, 704, 718, 709, 701, 701, 698, 713, 712, 742,
831 696, 691, 702, 692, 695, 709, 735, 690, 700, 268,
832 701, 731, 688, 702, 683, 681, 680, 687, 693, 679,
833 691, 684, 675, 686, 687, 667, 672, 305, 816, 816,
834 308, 816, 816, 668, 703, 718, 816, 816, 399, 668,
836 680, 681, 709, 668, 676, 662, 705, 671, 658, 673,
837 656, 666, 672, 653, 657, 320, 666, 305, 668, 663,
838 658, 661, 696, 199, 643, 650, 639, 656, 691, 646,
839 640, 652, 638, 650, 634, 679, 683, 682, 343, 816,
840 816, 646, 645, 816, 429, 639, 633, 677, 309, 625,
841 630, 628, 638, 629, 620, 619, 633, 668, 618, 661,
842 633, 816, 664, 628, 622, 629, 611, 610, 601, 608,
843 816, 610, 606, 603, 617, 606, 602, 816, 650, 599,
844 597, 607, 595, 640, 602, 816, 816, 816, 292, 607,
845 597, 590, 589, 816, 599, 602, 587, 585, 592, 588,
847 597, 627, 585, 581, 816, 594, 585, 583, 816, 577,
848 582, 580, 567, 572, 585, 620, 570, 572, 359, 566,
849 567, 570, 816, 578, 360, 562, 607, 579, 574, 563,
850 568, 816, 557, 567, 565, 561, 555, 602, 601, 595,
851 555, 545, 564, 547, 542, 589, 553, 556, 555, 554,
852 553, 588, 587, 586, 816, 541, 533, 816, 537, 536,
853 545, 545, 579, 573, 816, 540, 520, 346, 530, 518,
854 528, 529, 571, 526, 535, 532, 515, 816, 816, 516,
855 533, 528, 523, 506, 525, 525, 526, 558, 507, 556,
856 555, 816, 816, 816, 522, 507, 505, 504, 501, 361,
858 816, 514, 508, 547, 511, 513, 498, 487, 508, 491,
859 489, 503, 816, 538, 505, 536, 495, 488, 493, 489,
860 480, 530, 480, 493, 478, 816, 476, 816, 816, 474,
861 490, 472, 471, 471, 816, 483, 484, 475, 816, 482,
862 472, 466, 467, 474, 512, 475, 510, 816, 458, 816,
863 459, 473, 461, 505, 454, 816, 344, 458, 470, 501,
864 500, 453, 458, 457, 496, 455, 449, 457, 443, 455,
865 439, 453, 442, 816, 428, 816, 434, 424, 417, 408,
866 816, 457, 405, 455, 404, 404, 816, 816, 409, 405,
867 404, 816, 406, 398, 441, 404, 439, 438, 430, 380,
869 377, 381, 391, 389, 424, 816, 383, 816, 422, 381,
870 420, 374, 373, 375, 410, 816, 359, 816, 816, 816,
871 408, 400, 354, 398, 345, 816, 348, 816, 353, 816,
872 338, 331, 380, 816, 329, 816, 816, 369, 816, 345,
873 332, 317, 363, 362, 816, 351, 816, 816, 332, 185,
874 218, 816, 816, 816, 816, 67, 816, 55, 2, 816,
875 816, 472, 475, 478, 0, 481, 484, 487, 490
880 562, 562, 563, 563, 562, 562, 562, 562, 562, 562,
881 561, 561, 561, 561, 561, 564, 561, 561, 561, 561,
882 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
883 561, 561, 561, 561, 561, 561, 561, 561, 561, 565,
884 561, 561, 561, 566, 15, 561, 45, 45, 45, 45,
885 567, 45, 45, 45, 45, 45, 45, 45, 45, 45,
886 45, 45, 45, 45, 45, 45, 45, 45, 564, 561,
887 561, 561, 561, 561, 561, 568, 561, 561, 561, 561,
888 561, 561, 561, 561, 561, 561, 561, 565, 561, 566,
889 561, 561, 45, 45, 45, 45, 569, 45, 567, 45,
891 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
892 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
893 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
894 45, 568, 561, 561, 561, 561, 561, 561, 561, 561,
895 45, 45, 45, 45, 569, 561, 561, 99, 45, 45,
896 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
897 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
898 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
899 45, 45, 45, 45, 45, 45, 45, 561, 561, 561,
900 561, 561, 561, 561, 45, 45, 561, 561, 99, 45,
902 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
903 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
904 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
905 45, 45, 45, 45, 45, 45, 45, 45, 45, 561,
906 561, 561, 45, 561, 99, 45, 45, 45, 45, 45,
907 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
908 45, 561, 45, 45, 45, 45, 45, 45, 45, 45,
909 561, 45, 45, 45, 45, 45, 45, 561, 45, 45,
910 45, 45, 45, 45, 45, 561, 561, 561, 45, 561,
911 45, 45, 45, 561, 45, 45, 45, 45, 45, 45,
913 45, 45, 45, 45, 561, 45, 45, 45, 561, 45,
914 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
915 45, 45, 561, 45, 45, 45, 45, 45, 45, 45,
916 45, 561, 45, 45, 45, 45, 45, 45, 45, 45,
917 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
918 45, 45, 45, 45, 561, 45, 45, 561, 45, 45,
919 45, 45, 45, 45, 561, 45, 45, 45, 45, 45,
920 45, 45, 45, 45, 45, 45, 45, 561, 561, 45,
921 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
922 45, 561, 561, 561, 45, 45, 45, 45, 45, 45,
924 561, 45, 45, 45, 45, 45, 45, 45, 45, 45,
925 45, 45, 561, 45, 45, 45, 45, 45, 45, 45,
926 45, 45, 45, 45, 45, 561, 45, 561, 561, 45,
927 45, 45, 45, 45, 561, 45, 45, 45, 561, 45,
928 45, 45, 45, 45, 45, 45, 45, 561, 45, 561,
929 45, 45, 45, 45, 45, 561, 45, 45, 45, 45,
930 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
931 45, 45, 45, 561, 45, 561, 45, 45, 45, 45,
932 561, 45, 45, 45, 45, 45, 561, 561, 45, 45,
933 45, 561, 45, 45, 45, 45, 45, 45, 45, 45,
935 45, 45, 45, 45, 45, 561, 45, 561, 45, 45,
936 45, 45, 45, 45, 45, 561, 45, 561, 561, 561,
937 45, 45, 45, 45, 45, 561, 45, 561, 45, 561,
938 45, 45, 45, 561, 45, 561, 561, 45, 561, 45,
939 45, 45, 45, 45, 561, 45, 561, 561, 45, 45,
940 45, 561, 561, 561, 561, 45, 561, 45, 45, 561,
941 0, 561, 561, 561, 561, 561, 561, 561, 561
946 88, 13, 14, 13, 561, 15, 16, 560, 17, 18,
947 19, 20, 21, 22, 23, 24, 75, 561, 37, 14,
948 37, 76, 25, 26, 38, 42, 27, 42, 37, 14,
949 37, 28, 91, 29, 38, 30, 13, 14, 13, 80,
950 80, 25, 31, 74, 13, 14, 13, 13, 14, 13,
951 32, 40, 72, 13, 14, 13, 33, 40, 80, 83,
952 81, 92, 95, 34, 35, 13, 14, 13, 178, 15,
953 16, 72, 17, 18, 19, 20, 21, 22, 23, 24,
954 39, 95, 13, 14, 13, 81, 25, 26, 39, 179,
955 27, 13, 14, 13, 82, 28, 81, 29, 41, 30,
957 82, 42, 42, 42, 42, 25, 31, 41, 78, 100,
958 78, 559, 110, 79, 32, 111, 103, 112, 101, 82,
959 33, 84, 113, 104, 558, 85, 105, 34, 35, 44,
960 44, 44, 45, 45, 46, 45, 45, 45, 45, 45,
961 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
962 47, 45, 45, 48, 45, 45, 45, 45, 45, 45,
963 49, 50, 45, 51, 45, 45, 52, 53, 54, 55,
964 45, 56, 45, 57, 58, 48, 59, 60, 61, 62,
965 63, 64, 45, 65, 66, 67, 68, 45, 45, 45,
966 45, 45, 45, 45, 70, 70, 71, 73, 70, 96,
968 73, 94, 106, 107, 116, 72, 72, 108, 122, 72,
969 117, 119, 109, 120, 78, 133, 78, 125, 96, 79,
970 134, 74, 123, 557, 72, 72, 94, 126, 72, 45,
971 72, 163, 45, 154, 155, 164, 556, 98, 133, 45,
972 45, 272, 95, 134, 45, 45, 45, 45, 45, 72,
973 45, 273, 45, 45, 45, 45, 45, 45, 45, 45,
974 45, 95, 45, 45, 45, 45, 45, 135, 96, 70,
975 45, 71, 74, 70, 45, 73, 127, 128, 133, 135,
976 72, 72, 45, 129, 72, 134, 45, 96, 45, 99,
977 91, 90, 135, 142, 143, 158, 180, 130, 90, 72,
979 72, 136, 131, 72, 138, 144, 159, 188, 137, 174,
980 175, 176, 189, 188, 190, 181, 189, 142, 143, 92,
981 90, 196, 190, 221, 90, 262, 222, 240, 90, 144,
982 240, 330, 188, 190, 331, 189, 90, 555, 191, 192,
983 90, 193, 90, 90, 147, 196, 240, 265, 288, 241,
984 548, 295, 148, 289, 483, 266, 554, 148, 148, 148,
985 148, 148, 148, 296, 358, 365, 435, 553, 552, 359,
986 366, 436, 551, 550, 547, 263, 148, 148, 148, 148,
987 148, 148, 199, 405, 546, 545, 544, 199, 199, 199,
988 199, 199, 199, 543, 542, 360, 406, 541, 407, 484,
990 549, 540, 408, 539, 538, 537, 199, 199, 199, 199,
991 199, 199, 245, 536, 535, 534, 533, 245, 245, 245,
992 245, 245, 245, 532, 531, 530, 529, 528, 527, 526,
993 525, 524, 523, 522, 521, 520, 245, 245, 245, 245,
994 245, 245, 45, 519, 518, 517, 516, 45, 45, 45,
995 45, 45, 45, 515, 514, 513, 512, 511, 510, 509,
996 508, 507, 506, 505, 504, 503, 45, 45, 45, 45,
997 45, 45, 12, 12, 12, 36, 36, 36, 69, 502,
998 69, 90, 90, 90, 97, 97, 97, 132, 501, 132,
999 145, 145, 145, 500, 499, 498, 497, 496, 495, 494,
1001 493, 492, 491, 490, 489, 488, 487, 486, 485, 482,
1002 481, 480, 479, 478, 477, 476, 475, 474, 473, 472,
1003 471, 470, 469, 468, 467, 466, 465, 464, 463, 462,
1004 461, 460, 459, 458, 457, 456, 455, 454, 453, 452,
1005 451, 450, 449, 448, 447, 446, 445, 444, 443, 442,
1006 441, 440, 439, 438, 437, 434, 433, 432, 431, 430,
1007 429, 428, 427, 426, 425, 424, 423, 422, 421, 420,
1008 419, 418, 417, 416, 415, 414, 413, 412, 411, 410,
1009 409, 404, 403, 402, 401, 400, 399, 398, 397, 396,
1010 395, 394, 393, 392, 391, 390, 389, 388, 387, 386,
1012 385, 384, 383, 382, 381, 380, 379, 378, 377, 376,
1013 375, 374, 373, 372, 371, 370, 369, 368, 367, 364,
1014 363, 362, 361, 357, 356, 355, 354, 353, 352, 351,
1015 350, 349, 348, 347, 346, 345, 344, 343, 342, 341,
1016 340, 339, 338, 337, 336, 335, 334, 333, 332, 329,
1017 328, 327, 326, 325, 324, 323, 322, 321, 320, 319,
1018 318, 317, 316, 315, 314, 313, 312, 311, 310, 309,
1019 308, 307, 306, 305, 304, 303, 302, 301, 300, 299,
1020 298, 297, 294, 293, 292, 291, 290, 287, 286, 285,
1021 284, 283, 282, 281, 280, 279, 278, 277, 276, 275,
1023 274, 271, 270, 269, 268, 267, 264, 261, 260, 259,
1024 258, 257, 256, 255, 254, 253, 252, 251, 250, 249,
1025 248, 247, 246, 244, 243, 242, 239, 238, 237, 236,
1026 235, 234, 233, 232, 231, 230, 229, 228, 227, 226,
1027 225, 224, 223, 220, 219, 218, 217, 216, 215, 214,
1028 213, 212, 211, 210, 209, 208, 207, 206, 205, 204,
1029 203, 202, 201, 200, 146, 198, 197, 195, 194, 187,
1030 186, 185, 184, 183, 182, 177, 173, 172, 171, 170,
1031 169, 168, 167, 166, 165, 162, 161, 160, 157, 156,
1032 153, 152, 151, 150, 149, 146, 141, 140, 139, 79,
1034 79, 124, 121, 118, 115, 114, 102, 93, 43, 89,
1035 87, 86, 77, 43, 561, 11, 561, 561, 561, 561,
1036 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1037 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1038 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1039 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1040 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1041 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1047 565, 1, 1, 1, 0, 1, 1, 559, 1, 1,
1048 1, 1, 1, 1, 1, 1, 21, 0, 3, 3,
1049 3, 21, 1, 1, 3, 13, 1, 13, 4, 4,
1050 4, 1, 44, 1, 4, 1, 5, 5, 5, 26,
1051 31, 1, 1, 20, 6, 6, 6, 7, 7, 7,
1052 1, 7, 20, 8, 8, 8, 1, 8, 26, 31,
1053 27, 44, 49, 1, 1, 2, 2, 2, 124, 2,
1054 2, 20, 2, 2, 2, 2, 2, 2, 2, 2,
1055 5, 49, 9, 9, 9, 27, 2, 2, 6, 124,
1056 2, 10, 10, 10, 28, 2, 32, 2, 9, 2,
1058 33, 37, 42, 37, 42, 2, 2, 10, 25, 52,
1059 25, 558, 56, 25, 2, 56, 54, 57, 52, 28,
1060 2, 32, 57, 54, 556, 33, 54, 2, 2, 15,
1061 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1062 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1063 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1064 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1065 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1066 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1067 15, 15, 15, 15, 17, 19, 17, 19, 22, 50,
1069 22, 48, 55, 55, 60, 17, 19, 55, 64, 22,
1070 60, 62, 55, 62, 72, 80, 72, 66, 50, 72,
1071 81, 70, 64, 551, 17, 19, 48, 66, 22, 45,
1072 70, 112, 45, 105, 105, 112, 550, 51, 80, 45,
1073 45, 224, 67, 81, 51, 45, 45, 45, 45, 70,
1074 45, 224, 45, 45, 45, 45, 45, 45, 45, 45,
1075 45, 67, 45, 45, 45, 45, 51, 82, 68, 71,
1076 51, 71, 74, 73, 51, 73, 67, 67, 83, 85,
1077 71, 74, 51, 67, 73, 84, 51, 68, 51, 51,
1078 90, 92, 82, 94, 95, 108, 125, 68, 92, 71,
1080 74, 83, 68, 73, 85, 96, 108, 133, 84, 122,
1081 122, 122, 134, 136, 135, 125, 137, 94, 95, 90,
1082 92, 142, 138, 170, 92, 216, 170, 188, 92, 96,
1083 191, 289, 133, 135, 289, 134, 92, 549, 136, 137,
1084 92, 138, 92, 92, 99, 142, 188, 218, 239, 191,
1085 540, 249, 99, 239, 457, 218, 546, 99, 99, 99,
1086 99, 99, 99, 249, 319, 325, 400, 544, 543, 319,
1087 325, 400, 542, 541, 538, 216, 99, 99, 99, 99,
1088 99, 99, 148, 368, 535, 533, 532, 148, 148, 148,
1089 148, 148, 148, 531, 529, 319, 368, 527, 368, 457,
1091 540, 525, 368, 524, 523, 522, 148, 148, 148, 148,
1092 148, 148, 199, 521, 517, 515, 514, 199, 199, 199,
1093 199, 199, 199, 513, 512, 511, 510, 509, 507, 505,
1094 504, 503, 502, 501, 500, 499, 199, 199, 199, 199,
1095 199, 199, 245, 498, 497, 496, 495, 245, 245, 245,
1096 245, 245, 245, 494, 493, 491, 490, 489, 486, 485,
1097 484, 483, 482, 480, 479, 478, 245, 245, 245, 245,
1098 245, 245, 562, 562, 562, 563, 563, 563, 564, 477,
1099 564, 566, 566, 566, 567, 567, 567, 568, 475, 568,
1100 569, 569, 569, 473, 472, 471, 470, 469, 468, 467,
1102 466, 465, 464, 463, 462, 461, 460, 459, 458, 455,
1103 454, 453, 452, 451, 449, 447, 446, 445, 444, 443,
1104 442, 441, 440, 438, 437, 436, 434, 433, 432, 431,
1105 430, 427, 425, 424, 423, 422, 421, 420, 419, 418,
1106 417, 416, 415, 414, 412, 411, 410, 409, 408, 407,
1107 406, 405, 404, 403, 402, 399, 398, 397, 396, 395,
1108 391, 390, 389, 388, 387, 386, 385, 384, 383, 382,
1109 381, 380, 377, 376, 375, 374, 373, 372, 371, 370,
1110 369, 367, 366, 364, 363, 362, 361, 360, 359, 357,
1111 356, 354, 353, 352, 351, 350, 349, 348, 347, 346,
1113 345, 344, 343, 342, 341, 340, 339, 338, 337, 336,
1114 335, 334, 333, 331, 330, 329, 328, 327, 326, 324,
1115 322, 321, 320, 318, 317, 316, 315, 314, 313, 312,
1116 311, 310, 308, 307, 306, 304, 303, 302, 301, 300,
1117 299, 298, 297, 296, 295, 293, 292, 291, 290, 285,
1118 284, 283, 282, 281, 280, 279, 277, 276, 275, 274,
1119 273, 272, 270, 269, 268, 267, 266, 265, 264, 263,
1120 261, 260, 259, 258, 257, 256, 255, 254, 253, 252,
1121 251, 250, 248, 247, 246, 243, 242, 238, 237, 236,
1122 235, 234, 233, 232, 231, 230, 229, 228, 227, 226,
1124 225, 223, 222, 221, 220, 219, 217, 215, 214, 213,
1125 212, 211, 210, 209, 208, 207, 206, 205, 204, 203,
1126 202, 201, 200, 196, 195, 194, 187, 186, 185, 184,
1127 183, 182, 181, 180, 179, 178, 177, 176, 175, 174,
1128 173, 172, 171, 169, 168, 167, 166, 165, 164, 163,
1129 162, 161, 160, 159, 158, 157, 156, 155, 154, 153,
1130 152, 151, 150, 149, 145, 144, 143, 141, 139, 131,
1131 130, 129, 128, 127, 126, 123, 121, 120, 119, 118,
1132 117, 116, 115, 114, 113, 111, 110, 109, 107, 106,
1133 104, 103, 102, 101, 100, 97, 93, 88, 87, 79,
1135 78, 65, 63, 61, 59, 58, 53, 47, 43, 41,
1136 39, 38, 24, 14, 11, 561, 561, 561, 561, 561,
1137 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1138 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1139 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1140 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1141 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1142 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
1147static char *yy_last_accepting_cpos;
1154 137, 139, 141, 146, 147, 152, 153, 154, 166, 169,
1155 174, 180, 189, 200, 211, 220, 229, 238, 248, 258,
1156 268, 287, 306, 315, 324, 334, 346, 356, 367, 376,
1157 386, 396, 406, 416, 425, 434, 443, 452, 461, 470,
1158 479, 488, 497, 506, 515, 524, 533, 542, 551, 560,
1159 569, 578, 587, 596, 605, 614, 623, 632, 641, 650,
1160 659, 668, 677, 686, 695, 704, 713, 722, 735, 744,
1161 753, 854, 870, 919, 927, 942, 943, 944, 945, 946,
1162 947, 949, 967, 980, 985, 989, 991, 993, 995
1168#define REJECT reject_used_but_not_detected
1169#define yymore() yymore_used_but_not_detected
1170#define YY_MORE_ADJ 0
1171#define YY_RESTORE_YY_MORE_OFFSET
1173#line 1 "d2_lexer.ll"
1179#line 8 "d2_lexer.ll"
1182#ifndef __clang_analyzer__
1192#include <boost/lexical_cast.hpp>
1206bool start_token_flag =
false;
1209unsigned int comment_start_line = 0;
1214#define YY_FATAL_ERROR(msg) isc::d2::D2ParserContext::fatal(msg)
1215#line 1215 "d2_lexer.cc"
1230#define YY_NO_INPUT 1
1236#line 94 "d2_lexer.ll"
1240#define YY_USER_ACTION driver.loc_.columns(yyleng);
1241#line 1241 "d2_lexer.cc"
1242#line 1242 "d2_lexer.cc"
1247#define DIR_INCLUDE 3
1250#ifndef YY_NO_UNISTD_H
1262#ifndef YY_EXTRA_TYPE
1263#define YY_EXTRA_TYPE void *
1270static int yy_init_globals (
void );
1313#ifndef YY_SKIP_YYWRAP
1315extern "C" int yywrap (
void );
1317extern int yywrap (
void );
1330static void yy_flex_strncpy (
char *,
const char *,
int );
1333#ifdef YY_NEED_STRLEN
1334static int yy_flex_strlen (
const char * );
1341static int yyinput (
void );
1343static int input (
void );
1355#ifndef YY_READ_BUF_SIZE
1358#define YY_READ_BUF_SIZE 16384
1360#define YY_READ_BUF_SIZE 8192
1370#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
1380#define YY_INPUT(buf,result,max_size) \
1382 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
1386 for ( n = 0; n < max_size && \
1387 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1388 buf[n] = (char) c; \
1390 buf[n++] = (char) c; \
1391 if ( c == EOF && ferror( yyin ) ) \
1392 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1398 while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
1400 if( errno != EINTR) \
1402 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1420#define yyterminate() return YY_NULL
1424#ifndef YY_START_STACK_INCR
1425#define YY_START_STACK_INCR 25
1429#ifndef YY_FATAL_ERROR
1431#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1452#define YY_DECL_IS_OURS 1
1455extern int yylex (
void);
1457#define YY_DECL int yylex (void)
1466#ifndef YY_USER_ACTION
1467#define YY_USER_ACTION
1472#define YY_BREAK break;
1476#define YY_RULE_SETUP \
1524#line 100 "d2_lexer.ll"
1528#line 104 "d2_lexer.ll"
1536 if (start_token_flag) {
1537 start_token_flag =
false;
1538 switch (start_token_value) {
1562#line 1562 "d2_lexer.cc"
1567 yy_cp = (yy_c_buf_p);
1570 *
yy_cp = (yy_hold_char);
1578 yy_current_state = (yy_start);
1583 if ( yy_accept[yy_current_state] )
1585 (yy_last_accepting_state) = yy_current_state;
1586 (yy_last_accepting_cpos) =
yy_cp;
1588 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1590 yy_current_state = (int) yy_def[yy_current_state];
1591 if ( yy_current_state >= 562 )
1592 yy_c = yy_meta[yy_c];
1594 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1597 while ( yy_current_state != 561 );
1598 yy_cp = (yy_last_accepting_cpos);
1599 yy_current_state = (yy_last_accepting_state);
1603 yy_act = yy_accept[yy_current_state];
1615 fprintf( stderr,
"--scanner backing up\n" );
1617 fprintf( stderr,
"--accepting rule at line %ld (\"%s\")\n",
1620 fprintf( stderr,
"--accepting default rule (\"%s\")\n",
1623 fprintf( stderr,
"--(end of buffer or a NUL)\n" );
1625 fprintf( stderr,
"--EOF (start condition %d)\n",
YY_START );
1633 *
yy_cp = (yy_hold_char);
1634 yy_cp = (yy_last_accepting_cpos);
1635 yy_current_state = (yy_last_accepting_state);
1636 goto yy_find_action;
1640#line 137 "d2_lexer.ll"
1645#line 139 "d2_lexer.ll"
1650#line 141 "d2_lexer.ll"
1653 comment_start_line = driver.loc_.end.line;;
1658#line 146 "d2_lexer.ll"
1663#line 147 "d2_lexer.ll"
1667#line 148 "d2_lexer.ll"
1674#line 152 "d2_lexer.ll"
1679#line 153 "d2_lexer.ll"
1684#line 154 "d2_lexer.ll"
1689 std::string tmp(
yytext+1);
1690 tmp.resize(tmp.size() - 1);
1692 driver.includeFile(tmp);
1698#line 163 "d2_lexer.ll"
1705#line 166 "d2_lexer.ll"
1710#line 169 "d2_lexer.ll"
1719#line 174 "d2_lexer.ll"
1722 driver.loc_.lines(
yyleng);
1728#line 180 "d2_lexer.ll"
1730 switch(driver.ctx_) {
1740#line 189 "d2_lexer.ll"
1742 switch(driver.ctx_) {
1754#line 200 "d2_lexer.ll"
1756 switch(driver.ctx_) {
1768#line 211 "d2_lexer.ll"
1770 switch(driver.ctx_) {
1780#line 220 "d2_lexer.ll"
1782 switch(driver.ctx_) {
1792#line 229 "d2_lexer.ll"
1794 switch(driver.ctx_) {
1804#line 238 "d2_lexer.ll"
1810 std::string tmp(
yytext+1);
1811 tmp.resize(tmp.size() - 1);
1817#line 248 "d2_lexer.ll"
1823 std::string tmp(
yytext+1);
1824 tmp.resize(tmp.size() - 1);
1830#line 258 "d2_lexer.ll"
1836 std::string tmp(
yytext+1);
1837 tmp.resize(tmp.size() - 1);
1843#line 268 "d2_lexer.ll"
1845 switch(driver.ctx_) {
1865#line 287 "d2_lexer.ll"
1867 switch(driver.ctx_) {
1887#line 306 "d2_lexer.ll"
1889 switch(driver.ctx_) {
1899#line 315 "d2_lexer.ll"
1901 switch(driver.ctx_) {
1911#line 324 "d2_lexer.ll"
1913 switch(driver.ctx_) {
1924#line 334 "d2_lexer.ll"
1926 switch(driver.ctx_) {
1939#line 346 "d2_lexer.ll"
1941 switch(driver.ctx_) {
1952#line 356 "d2_lexer.ll"
1954 switch(driver.ctx_) {
1965#line 367 "d2_lexer.ll"
1967 switch(driver.ctx_) {
1977#line 376 "d2_lexer.ll"
1979 switch(driver.ctx_) {
1990#line 386 "d2_lexer.ll"
1992 switch(driver.ctx_) {
2003#line 396 "d2_lexer.ll"
2005 switch(driver.ctx_) {
2016#line 406 "d2_lexer.ll"
2018 switch(driver.ctx_) {
2029#line 416 "d2_lexer.ll"
2031 switch(driver.ctx_) {
2041#line 425 "d2_lexer.ll"
2043 switch(driver.ctx_) {
2053#line 434 "d2_lexer.ll"
2055 switch(driver.ctx_) {
2065#line 443 "d2_lexer.ll"
2067 switch(driver.ctx_) {
2077#line 452 "d2_lexer.ll"
2079 switch(driver.ctx_) {
2089#line 461 "d2_lexer.ll"
2091 switch(driver.ctx_) {
2101#line 470 "d2_lexer.ll"
2103 switch(driver.ctx_) {
2113#line 479 "d2_lexer.ll"
2115 switch(driver.ctx_) {
2125#line 488 "d2_lexer.ll"
2127 switch(driver.ctx_) {
2137#line 497 "d2_lexer.ll"
2139 switch(driver.ctx_) {
2149#line 506 "d2_lexer.ll"
2151 switch(driver.ctx_) {
2161#line 515 "d2_lexer.ll"
2163 switch(driver.ctx_) {
2173#line 524 "d2_lexer.ll"
2175 switch(driver.ctx_) {
2185#line 533 "d2_lexer.ll"
2187 switch(driver.ctx_) {
2197#line 542 "d2_lexer.ll"
2199 switch(driver.ctx_) {
2209#line 551 "d2_lexer.ll"
2211 switch(driver.ctx_) {
2221#line 560 "d2_lexer.ll"
2223 switch(driver.ctx_) {
2233#line 569 "d2_lexer.ll"
2235 switch(driver.ctx_) {
2245#line 578 "d2_lexer.ll"
2247 switch(driver.ctx_) {
2257#line 587 "d2_lexer.ll"
2259 switch(driver.ctx_) {
2269#line 596 "d2_lexer.ll"
2271 switch(driver.ctx_) {
2281#line 605 "d2_lexer.ll"
2283 switch(driver.ctx_) {
2293#line 614 "d2_lexer.ll"
2295 switch(driver.ctx_) {
2305#line 623 "d2_lexer.ll"
2307 switch(driver.ctx_) {
2317#line 632 "d2_lexer.ll"
2319 switch(driver.ctx_) {
2329#line 641 "d2_lexer.ll"
2331 switch(driver.ctx_) {
2341#line 650 "d2_lexer.ll"
2343 switch(driver.ctx_) {
2353#line 659 "d2_lexer.ll"
2355 switch(driver.ctx_) {
2365#line 668 "d2_lexer.ll"
2367 switch(driver.ctx_) {
2377#line 677 "d2_lexer.ll"
2379 switch(driver.ctx_) {
2389#line 686 "d2_lexer.ll"
2391 switch(driver.ctx_) {
2401#line 695 "d2_lexer.ll"
2403 switch(driver.ctx_) {
2413#line 704 "d2_lexer.ll"
2415 switch(driver.ctx_) {
2425#line 713 "d2_lexer.ll"
2427 switch(driver.ctx_) {
2437#line 722 "d2_lexer.ll"
2439 switch(driver.ctx_) {
2453#line 735 "d2_lexer.ll"
2455 switch(driver.ctx_) {
2465#line 744 "d2_lexer.ll"
2467 switch(driver.ctx_) {
2477#line 753 "d2_lexer.ll"
2482 std::string raw(
yytext+1);
2483 size_t len = raw.size() - 1;
2485 std::string decoded;
2486 decoded.reserve(len);
2487 for (
size_t pos = 0; pos < len; ++pos) {
2493 driver.error(driver.loc_,
"Bad quote in \"" + raw +
"\"");
2499 driver.error(driver.loc_,
"Overflow escape in \"" + raw +
"\"");
2506 decoded.push_back(c);
2509 decoded.push_back(
'\b');
2512 decoded.push_back(
'\f');
2515 decoded.push_back(
'\n');
2518 decoded.push_back(
'\r');
2521 decoded.push_back(
'\t');
2526 if (pos + 4 > len) {
2528 driver.error(driver.loc_,
2529 "Overflow unicode escape in \"" + raw +
"\"");
2531 if ((raw[pos] !=
'0') || (raw[pos + 1] !=
'0')) {
2532 driver.error(driver.loc_,
2533 "Unsupported unicode escape in \"" + raw +
"\"",
2538 if ((c >=
'0') && (c <=
'9')) {
2540 }
else if ((c >=
'A') && (c <=
'F')) {
2541 b = (c -
'A' + 10) << 4;
2542 }
else if ((c >=
'a') && (c <=
'f')) {
2543 b = (c -
'a' + 10) << 4;
2546 driver.error(driver.loc_,
"Not hexadecimal in unicode escape in \"" + raw +
"\"");
2550 if ((c >=
'0') && (c <=
'9')) {
2552 }
else if ((c >=
'A') && (c <=
'F')) {
2554 }
else if ((c >=
'a') && (c <=
'f')) {
2558 driver.error(driver.loc_,
"Not hexadecimal in unicode escape in \"" + raw +
"\"");
2560 decoded.push_back(
static_cast<char>(b & 0xff));
2564 driver.error(driver.loc_,
"Bad escape in \"" + raw +
"\"");
2568 if ((c >= 0) && (c < 0x20)) {
2570 driver.error(driver.loc_,
"Invalid control in \"" + raw +
"\"");
2572 decoded.push_back(c);
2582#line 854 "d2_lexer.ll"
2585 std::string raw(
yytext+1);
2586 size_t len = raw.size() - 1;
2588 for (; pos < len; ++pos) {
2590 if ((c >= 0) && (c < 0x20)) {
2594 driver.error(driver.loc_,
2595 "Invalid control in " + std::string(
yytext),
2602#line 870 "d2_lexer.ll"
2605 std::string raw(
yytext+1);
2606 size_t len = raw.size() - 1;
2609 for (; pos < len; ++pos) {
2628 if ((pos + 4 > len) ||
2629 !std::isxdigit(raw[pos + 1]) ||
2630 !std::isxdigit(raw[pos + 2]) ||
2631 !std::isxdigit(raw[pos + 3]) ||
2632 !std::isxdigit(raw[pos + 4])) {
2643 std::string trailer =
"";
2644 if (raw[len - 1] ==
'\\') {
2647 driver.error(driver.loc_,
2648 "Bad escape in " + std::string(
yytext) + trailer,
2654#line 919 "d2_lexer.ll"
2657 std::string raw(
yytext+1);
2658 driver.error(driver.loc_,
2659 "Overflow escape in " + std::string(
yytext),
2665#line 927 "d2_lexer.ll"
2668 std::string raw(
yytext+1);
2669 size_t pos = raw.size() - 1;
2670 for (; pos > 0; --pos) {
2676 driver.error(driver.loc_,
2677 "Overflow unicode escape in " + std::string(
yytext),
2683#line 942 "d2_lexer.ll"
2688#line 943 "d2_lexer.ll"
2693#line 944 "d2_lexer.ll"
2698#line 945 "d2_lexer.ll"
2703#line 946 "d2_lexer.ll"
2708#line 947 "d2_lexer.ll"
2713#line 949 "d2_lexer.ll"
2717 int64_t integer = 0;
2723 integer = boost::lexical_cast<int64_t>(tmp);
2724 }
catch (
const boost::bad_lexical_cast &) {
2725 driver.error(driver.loc_,
"Failed to convert " + tmp +
" to an integer.");
2734#line 967 "d2_lexer.ll"
2740 fp = boost::lexical_cast<double>(tmp);
2741 }
catch (
const boost::bad_lexical_cast &) {
2742 driver.error(driver.loc_,
"Failed to convert " + tmp +
" to a floating point.");
2750#line 980 "d2_lexer.ll"
2758#line 985 "d2_lexer.ll"
2765#line 989 "d2_lexer.ll"
2766driver.error (driver.loc_,
"JSON true reserved keyword is lower case only");
2770#line 991 "d2_lexer.ll"
2771driver.error (driver.loc_,
"JSON false reserved keyword is lower case only");
2775#line 993 "d2_lexer.ll"
2776driver.error (driver.loc_,
"JSON null reserved keyword is lower case only");
2780#line 995 "d2_lexer.ll"
2781driver.error (driver.loc_,
"Invalid character: " + std::string(
yytext));
2784#line 997 "d2_lexer.ll"
2786 if (driver.states_.empty()) {
2789 driver.loc_ = driver.locs_.back();
2790 driver.locs_.pop_back();
2791 driver.file_ = driver.files_.back();
2792 driver.files_.pop_back();
2793 if (driver.sfile_) {
2794 fclose(driver.sfile_);
2797 if (!driver.sfiles_.empty()) {
2798 driver.sfile_ = driver.sfiles_.back();
2799 driver.sfiles_.pop_back();
2802 d2_parser__switch_to_buffer(driver.states_.back());
2803 driver.states_.pop_back();
2810#line 1020 "d2_lexer.ll"
2813#line 2813 "d2_lexer.cc"
2821 *
yy_cp = (yy_hold_char);
2855 (yy_c_buf_p) = (
yytext_ptr) + yy_amount_of_matched_text;
2857 yy_current_state = yy_get_previous_state( );
2868 yy_next_state = yy_try_NUL_trans( yy_current_state );
2872 if ( yy_next_state )
2875 yy_cp = ++(yy_c_buf_p);
2876 yy_current_state = yy_next_state;
2883 yy_cp = (yy_last_accepting_cpos);
2884 yy_current_state = (yy_last_accepting_state);
2885 goto yy_find_action;
2889 else switch ( yy_get_next_buffer( ) )
2893 (yy_did_buffer_switch_on_eof) = 0;
2914 if ( ! (yy_did_buffer_switch_on_eof) )
2924 yy_current_state = yy_get_previous_state( );
2926 yy_cp = (yy_c_buf_p);
2934 yy_current_state = yy_get_previous_state( );
2936 yy_cp = (yy_c_buf_p);
2938 goto yy_find_action;
2945 "fatal flex scanner internal error--no action found" );
2966static int yy_get_next_buffer (
void)
2973 int number_to_move, i;
2978 "fatal flex scanner internal error--end of buffer missed" );
3002 number_to_move = (int) ((yy_c_buf_p) - (
yytext_ptr) - 1);
3004 for ( i = 0; i < number_to_move; ++i )
3005 *(dest++) = *(source++);
3018 while ( num_to_read <= 0 )
3024 int yy_c_buf_p_offset =
3031 if ( new_size <= 0 )
3047 "fatal error - scanner input buffer overflow" );
3049 (yy_c_buf_p) = &b->
yy_ch_buf[yy_c_buf_p_offset];
3061 (yy_n_chars), num_to_read );
3066 if ( (yy_n_chars) == 0 )
3087 int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
3091 YY_FATAL_ERROR(
"out of dynamic memory in yy_get_next_buffer()" );
3096 (yy_n_chars) += number_to_move;
3118 yy_current_state = (yy_start);
3124 if ( yy_accept[yy_current_state] )
3126 (yy_last_accepting_state) = yy_current_state;
3127 (yy_last_accepting_cpos) =
yy_cp;
3129 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3131 yy_current_state = (int) yy_def[yy_current_state];
3132 if ( yy_current_state >= 562 )
3133 yy_c = yy_meta[yy_c];
3135 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
3138 return yy_current_state;
3154 char *
yy_cp = (yy_c_buf_p);
3157 if ( yy_accept[yy_current_state] )
3159 (yy_last_accepting_state) = yy_current_state;
3160 (yy_last_accepting_cpos) =
yy_cp;
3162 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3164 yy_current_state = (int) yy_def[yy_current_state];
3165 if ( yy_current_state >= 562 )
3166 yy_c = yy_meta[yy_c];
3168 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
3169 yy_is_jam = (yy_current_state == 561);
3171 return yy_is_jam ? 0 : yy_current_state;
3183 static int yyinput (
void)
3185 static int input (
void)
3194 *(yy_c_buf_p) = (yy_hold_char);
3204 *(yy_c_buf_p) =
'\0';
3208 int offset = (int) ((yy_c_buf_p) - (
yytext_ptr));
3211 switch ( yy_get_next_buffer( ) )
3234 if ( ! (yy_did_buffer_switch_on_eof) )
3250 c = *(
unsigned char *) (yy_c_buf_p);
3251 *(yy_c_buf_p) =
'\0';
3252 (yy_hold_char) = *++(yy_c_buf_p);
3310 *(yy_c_buf_p) = (yy_hold_char);
3323 (yy_did_buffer_switch_on_eof) = 1;
3339 (yy_hold_char) = *(yy_c_buf_p);
3487 if (new_buffer == NULL)
3496 *(yy_c_buf_p) = (yy_hold_char);
3503 (yy_buffer_stack_top)++;
3508 (yy_did_buffer_switch_on_eof) = 1;
3528 if ((yy_buffer_stack_top) > 0)
3529 --(yy_buffer_stack_top);
3533 (yy_did_buffer_switch_on_eof) = 1;
3550 if (!(yy_buffer_stack)) {
3560 if ( ! (yy_buffer_stack) )
3561 YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()" );
3563 memset((yy_buffer_stack), 0, num_to_alloc *
sizeof(
struct yy_buffer_state*));
3565 (yy_buffer_stack_max) = num_to_alloc;
3566 (yy_buffer_stack_top) = 0;
3570 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
3575 num_to_alloc = (yy_buffer_stack_max) + grow_size;
3580 if ( ! (yy_buffer_stack) )
3581 YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()" );
3584 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size *
sizeof(
struct yy_buffer_state*));
3585 (yy_buffer_stack_max) = num_to_alloc;
3664 for ( i = 0; i < _yybytes_len; ++i )
3665 buf[i] = yybytes[i];
3682#ifndef YY_EXIT_FAILURE
3683#define YY_EXIT_FAILURE 2
3687static void yynoreturn yy_fatal_error (
const char* msg )
3689 fprintf( stderr,
"%s\n", msg );
3703 int yyless_macro_arg = (n); \
3704 YY_LESS_LINENO(yyless_macro_arg);\
3705 yytext[yyleng] = (yy_hold_char); \
3706 (yy_c_buf_p) = yytext + yyless_macro_arg; \
3707 (yy_hold_char) = *(yy_c_buf_p); \
3708 *(yy_c_buf_p) = '\0'; \
3709 yyleng = yyless_macro_arg; \
3808static int yy_init_globals (
void)
3814 (yy_buffer_stack) = NULL;
3815 (yy_buffer_stack_top) = 0;
3816 (yy_buffer_stack_max) = 0;
3817 (yy_c_buf_p) = NULL;
3850 yyfree((yy_buffer_stack) );
3851 (yy_buffer_stack) = NULL;
3868static void yy_flex_strncpy (
char* s1,
const char * s2,
int n )
3872 for ( i = 0; i < n; ++i )
3877#ifdef YY_NEED_STRLEN
3878static int yy_flex_strlen (
const char * s )
3881 for ( n = 0; s[n]; ++n )
3890 return malloc(size);
3903 return realloc(ptr, size);
3908 free( (
char *) ptr );
3913#define YYTABLES_NAME "yytables"
3918#line 1020 "d2_lexer.ll"
3926 start_token_flag =
true;
3927 start_token_value = parser_type;
3934 buffer = d2_parser__scan_bytes(str.c_str(), str.size());
3936 fatal(
"cannot scan string");
3943 const std::string& filename,
3946 start_token_flag =
true;
3947 start_token_value = parser_type;
3956 buffer = d2_parser__create_buffer(f, 65536 );
3958 fatal(
"cannot scan file " + filename);
3960 d2_parser__switch_to_buffer(buffer);
3968 static_cast<void>(d2_parser_lex_destroy());
3979 d2_parser__delete_buffer(
states_.back());
3987 fatal(
"Too many nested include.");
3990 FILE* f = fopen(filename.c_str(),
"r");
3992 fatal(
"Can't open include file " + filename);
4000 buffer = d2_parser__create_buffer(f, 65536 );
4002 fatal(
"Can't scan include file " + filename);
4004 d2_parser__switch_to_buffer(buffer);
4017 void dummy() { yy_fatal_error(
"Fix me: how to disable its definition?"); }
unsigned char flex_uint8_t
#define YY_CURRENT_BUFFER
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 yy_load_buffer_state
unsigned char flex_uint8_t
unsigned int flex_uint32_t
#define yypush_buffer_state
#define yyget_in
Get the input stream.
struct yy_buffer_state * YY_BUFFER_STATE
#define YY_RESTORE_YY_MORE_OFFSET
#define yyget_leng
Get the length of the current token.
#define yyget_out
Get the output stream.
#define yyensure_buffer_stack
#define EOB_ACT_END_OF_FILE
#define YY_CURRENT_BUFFER_LVALUE
#define yyget_text
Get the current token.
#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 yypop_buffer_state
Removes and deletes the top of the stack, if present.
#define YY_DO_BEFORE_ACTION
#define EOB_ACT_LAST_MATCH
#define YY_BUFFER_EOF_PENDING
#define EOB_ACT_CONTINUE_SCAN
#define yyget_lineno
Get the current line number.
#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.