1 #line 1 "json_lex.yy.cpp" 3 #line 3 "json_lex.yy.cpp" 5 #define YY_INT_ALIGNED short int 9 #define yy_create_buffer yyjson_create_buffer 10 #define yy_delete_buffer yyjson_delete_buffer 11 #define yy_scan_buffer yyjson_scan_buffer 12 #define yy_scan_string yyjson_scan_string 13 #define yy_scan_bytes yyjson_scan_bytes 14 #define yy_init_buffer yyjson_init_buffer 15 #define yy_flush_buffer yyjson_flush_buffer 16 #define yy_load_buffer_state yyjson_load_buffer_state 17 #define yy_switch_to_buffer yyjson_switch_to_buffer 18 #define yypush_buffer_state yyjsonpush_buffer_state 19 #define yypop_buffer_state yyjsonpop_buffer_state 20 #define yyensure_buffer_stack yyjsonensure_buffer_stack 21 #define yy_flex_debug yyjson_flex_debug 23 #define yyleng yyjsonleng 24 #define yylex yyjsonlex 25 #define yylineno yyjsonlineno 26 #define yyout yyjsonout 27 #define yyrestart yyjsonrestart 28 #define yytext yyjsontext 29 #define yywrap yyjsonwrap 30 #define yyalloc yyjsonalloc 31 #define yyrealloc yyjsonrealloc 32 #define yyfree yyjsonfree 35 #define YY_FLEX_MAJOR_VERSION 2 36 #define YY_FLEX_MINOR_VERSION 6 37 #define YY_FLEX_SUBMINOR_VERSION 4 38 #if YY_FLEX_SUBMINOR_VERSION > 0 42 #ifdef yy_create_buffer 43 #define yyjson_create_buffer_ALREADY_DEFINED 45 #define yy_create_buffer yyjson_create_buffer 48 #ifdef yy_delete_buffer 49 #define yyjson_delete_buffer_ALREADY_DEFINED 51 #define yy_delete_buffer yyjson_delete_buffer 55 #define yyjson_scan_buffer_ALREADY_DEFINED 57 #define yy_scan_buffer yyjson_scan_buffer 61 #define yyjson_scan_string_ALREADY_DEFINED 63 #define yy_scan_string yyjson_scan_string 67 #define yyjson_scan_bytes_ALREADY_DEFINED 69 #define yy_scan_bytes yyjson_scan_bytes 73 #define yyjson_init_buffer_ALREADY_DEFINED 75 #define yy_init_buffer yyjson_init_buffer 78 #ifdef yy_flush_buffer 79 #define yyjson_flush_buffer_ALREADY_DEFINED 81 #define yy_flush_buffer yyjson_flush_buffer 84 #ifdef yy_load_buffer_state 85 #define yyjson_load_buffer_state_ALREADY_DEFINED 87 #define yy_load_buffer_state yyjson_load_buffer_state 90 #ifdef yy_switch_to_buffer 91 #define yyjson_switch_to_buffer_ALREADY_DEFINED 93 #define yy_switch_to_buffer yyjson_switch_to_buffer 96 #ifdef yypush_buffer_state 97 #define yyjsonpush_buffer_state_ALREADY_DEFINED 99 #define yypush_buffer_state yyjsonpush_buffer_state 102 #ifdef yypop_buffer_state 103 #define yyjsonpop_buffer_state_ALREADY_DEFINED 105 #define yypop_buffer_state yyjsonpop_buffer_state 108 #ifdef yyensure_buffer_stack 109 #define yyjsonensure_buffer_stack_ALREADY_DEFINED 111 #define yyensure_buffer_stack yyjsonensure_buffer_stack 115 #define yyjsonlex_ALREADY_DEFINED 117 #define yylex yyjsonlex 121 #define yyjsonrestart_ALREADY_DEFINED 123 #define yyrestart yyjsonrestart 127 #define yyjsonlex_init_ALREADY_DEFINED 129 #define yylex_init yyjsonlex_init 132 #ifdef yylex_init_extra 133 #define yyjsonlex_init_extra_ALREADY_DEFINED 135 #define yylex_init_extra yyjsonlex_init_extra 139 #define yyjsonlex_destroy_ALREADY_DEFINED 141 #define yylex_destroy yyjsonlex_destroy 145 #define yyjsonget_debug_ALREADY_DEFINED 147 #define yyget_debug yyjsonget_debug 151 #define yyjsonset_debug_ALREADY_DEFINED 153 #define yyset_debug yyjsonset_debug 157 #define yyjsonget_extra_ALREADY_DEFINED 159 #define yyget_extra yyjsonget_extra 163 #define yyjsonset_extra_ALREADY_DEFINED 165 #define yyset_extra yyjsonset_extra 169 #define yyjsonget_in_ALREADY_DEFINED 171 #define yyget_in yyjsonget_in 175 #define yyjsonset_in_ALREADY_DEFINED 177 #define yyset_in yyjsonset_in 181 #define yyjsonget_out_ALREADY_DEFINED 183 #define yyget_out yyjsonget_out 187 #define yyjsonset_out_ALREADY_DEFINED 189 #define yyset_out yyjsonset_out 193 #define yyjsonget_leng_ALREADY_DEFINED 195 #define yyget_leng yyjsonget_leng 199 #define yyjsonget_text_ALREADY_DEFINED 201 #define yyget_text yyjsonget_text 205 #define yyjsonget_lineno_ALREADY_DEFINED 207 #define yyget_lineno yyjsonget_lineno 211 #define yyjsonset_lineno_ALREADY_DEFINED 213 #define yyset_lineno yyjsonset_lineno 217 #define yyjsonwrap_ALREADY_DEFINED 219 #define yywrap yyjsonwrap 223 #define yyjsonalloc_ALREADY_DEFINED 225 #define yyalloc yyjsonalloc 229 #define yyjsonrealloc_ALREADY_DEFINED 231 #define yyrealloc yyjsonrealloc 235 #define yyjsonfree_ALREADY_DEFINED 237 #define yyfree yyjsonfree 241 #define yyjsontext_ALREADY_DEFINED 243 #define yytext yyjsontext 247 #define yyjsonleng_ALREADY_DEFINED 249 #define yyleng yyjsonleng 253 #define yyjsonin_ALREADY_DEFINED 255 #define yyin yyjsonin 259 #define yyjsonout_ALREADY_DEFINED 261 #define yyout yyjsonout 265 #define yyjson_flex_debug_ALREADY_DEFINED 267 #define yy_flex_debug yyjson_flex_debug 271 #define yyjsonlineno_ALREADY_DEFINED 273 #define yylineno yyjsonlineno 293 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L 298 #ifndef __STDC_LIMIT_MACROS 299 #define __STDC_LIMIT_MACROS 1 302 #include <inttypes.h> 319 #define INT8_MIN (-128) 322 #define INT16_MIN (-32767-1) 325 #define INT32_MIN (-2147483647-1) 328 #define INT8_MAX (127) 331 #define INT16_MAX (32767) 334 #define INT32_MAX (2147483647) 337 #define UINT8_MAX (255U) 340 #define UINT16_MAX (65535U) 343 #define UINT32_MAX (4294967295U) 347 #define SIZE_MAX (~(size_t)0) 357 #define yyconst const 359 #if defined(__GNUC__) && __GNUC__ >= 3 360 #define yynoreturn __attribute__((__noreturn__)) 371 #define YY_SC_TO_UI(c) ((YY_CHAR) (c)) 377 #define BEGIN (yy_start) = 1 + 2 * 382 #define YY_START (((yy_start) - 1) / 2) 383 #define YYSTATE YY_START 385 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) 387 #define YY_NEW_FILE yyrestart( yyin ) 388 #define YY_END_OF_BUFFER_CHAR 0 397 #define YY_BUF_SIZE 32768 399 #define YY_BUF_SIZE 16384 405 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) 407 #ifndef YY_TYPEDEF_YY_BUFFER_STATE 408 #define YY_TYPEDEF_YY_BUFFER_STATE 412 #ifndef YY_TYPEDEF_YY_SIZE_T 413 #define YY_TYPEDEF_YY_SIZE_T 421 #define EOB_ACT_CONTINUE_SCAN 0 422 #define EOB_ACT_END_OF_FILE 1 423 #define EOB_ACT_LAST_MATCH 2 425 #define YY_LESS_LINENO(n) 426 #define YY_LINENO_REWIND_TO(ptr) 433 int yyless_macro_arg = (n); \ 434 YY_LESS_LINENO(yyless_macro_arg);\ 435 *yy_cp = (yy_hold_char); \ 436 YY_RESTORE_YY_MORE_OFFSET \ 437 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ 438 YY_DO_BEFORE_ACTION; \ 441 #define unput(c) yyunput( c, (yytext_ptr) ) 443 #ifndef YY_STRUCT_YY_BUFFER_STATE 444 #define YY_STRUCT_YY_BUFFER_STATE 491 #define YY_BUFFER_NEW 0 492 #define YY_BUFFER_NORMAL 1 503 #define YY_BUFFER_EOF_PENDING 2 519 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ 520 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ 525 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] 553 #define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER ) 563 #define yy_new_buffer yy_create_buffer 564 #define yy_set_interactive(is_interactive) \ 566 if ( ! YY_CURRENT_BUFFER ){ \ 567 yyensure_buffer_stack (); \ 568 YY_CURRENT_BUFFER_LVALUE = \ 569 yy_create_buffer( yyin, YY_BUF_SIZE ); \ 571 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ 573 #define yy_set_bol(at_bol) \ 575 if ( ! YY_CURRENT_BUFFER ){\ 576 yyensure_buffer_stack (); \ 577 YY_CURRENT_BUFFER_LVALUE = \ 578 yy_create_buffer( yyin, YY_BUF_SIZE ); \ 580 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ 582 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) 584 #define yyjsonwrap() (1) 585 #define YY_SKIP_YYWRAP 599 #define yytext_ptr yytext 609 #define YY_DO_BEFORE_ACTION \ 610 (yytext_ptr) = yy_bp; \ 611 yyleng = (int) (yy_cp - yy_bp); \ 612 (yy_hold_char) = *yy_cp; \ 614 (yy_c_buf_p) = yy_cp; 615 #define YY_NUM_RULES 8 616 #define YY_END_OF_BUFFER 9 626 0, 0, 9, 7, 6, 6, 6, 7, 2, 2,
627 7, 7, 7, 0, 1, 0, 2, 2, 0, 0,
628 0, 2, 0, 0, 0, 1, 2, 2, 0, 2,
629 0, 0, 0, 0, 0, 0, 5, 3, 0, 2,
635 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
636 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
637 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
638 1, 2, 1, 4, 1, 1, 1, 1, 1, 1,
639 1, 1, 5, 1, 6, 7, 1, 8, 9, 9,
640 9, 9, 9, 9, 9, 9, 9, 1, 1, 1,
641 1, 1, 1, 1, 1, 1, 1, 1, 10, 1,
642 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
643 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
644 1, 11, 1, 1, 1, 1, 12, 1, 1, 1,
646 13, 14, 1, 1, 1, 1, 1, 15, 1, 16,
647 1, 1, 1, 17, 18, 19, 20, 1, 1, 1,
648 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
649 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
650 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
651 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
652 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
653 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
654 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
655 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
657 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
658 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
659 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
660 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
661 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
667 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
668 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
673 0, 0, 71, 72, 72, 72, 17, 14, 17, 17,
674 58, 49, 51, 25, 72, 27, 0, 24, 26, 34,
675 0, 0, 52, 51, 45, 33, 0, 37, 40, 43,
676 46, 48, 49, 48, 0, 42, 72, 72, 50, 52,
682 42, 1, 42, 42, 42, 42, 43, 42, 42, 9,
683 42, 42, 42, 43, 42, 43, 9, 9, 42, 42,
684 20, 10, 42, 42, 42, 43, 18, 42, 42, 42,
685 42, 42, 42, 42, 34, 42, 42, 42, 42, 42,
691 4, 5, 6, 7, 4, 8, 4, 9, 10, 4,
692 4, 4, 4, 11, 4, 12, 4, 4, 13, 4,
693 15, 17, 18, 19, 22, 22, 20, 16, 15, 21,
694 26, 27, 27, 28, 28, 16, 15, 16, 29, 29,
695 14, 30, 30, 16, 28, 28, 34, 30, 30, 35,
696 30, 30, 39, 39, 41, 40, 40, 40, 40, 40,
697 40, 38, 37, 36, 33, 32, 31, 25, 24, 23,
698 42, 3, 42, 42, 42, 42, 42, 42, 42, 42,
699 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
706 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
707 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
708 7, 8, 8, 9, 10, 10, 9, 7, 14, 9,
709 16, 18, 18, 19, 19, 14, 26, 16, 20, 20,
710 43, 20, 20, 26, 28, 28, 28, 29, 29, 28,
711 30, 30, 34, 34, 36, 34, 34, 39, 39, 40,
712 40, 33, 32, 31, 25, 24, 23, 13, 12, 11,
713 3, 42, 42, 42, 42, 42, 42, 42, 42, 42,
714 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
728 #define REJECT reject_used_but_not_detected 729 #define yymore() yymore_used_but_not_detected 730 #define YY_MORE_ADJ 0 731 #define YY_RESTORE_YY_MORE_OFFSET 736 #line 736 "json_lex.yy.cpp" 737 #define YY_NO_INPUT 1 738 #define YY_NO_UNISTD_H 1 741 #define PARSER json_parser 746 #include <util/pragma_wsign_compare.def> 747 #include <util/pragma_wnull_conversion.def> 748 #include <util/pragma_wdeprecated_register.def> 750 #line 750 "json_lex.yy.cpp" 751 #line 751 "json_lex.yy.cpp" 755 #ifndef YY_NO_UNISTD_H 763 #ifndef YY_EXTRA_TYPE 764 #define YY_EXTRA_TYPE void * 802 #ifndef YY_SKIP_YYWRAP 804 extern "C" int yywrap (
void );
806 extern int yywrap (
void );
815 static void yy_flex_strncpy (
char *,
const char *,
int );
818 #ifdef YY_NEED_STRLEN 819 static int yy_flex_strlen (
const char * );
824 static int yyinput (
void );
826 static int input (
void );
832 #ifndef YY_READ_BUF_SIZE 835 #define YY_READ_BUF_SIZE 16384 837 #define YY_READ_BUF_SIZE 8192 846 #define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0) 853 #define YY_INPUT(buf,result,max_size) \ 854 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ 858 for ( n = 0; n < max_size && \ 859 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ 862 buf[n++] = (char) c; \ 863 if ( c == EOF && ferror( yyin ) ) \ 864 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 870 while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \ 872 if( errno != EINTR) \ 874 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 890 #define yyterminate() return YY_NULL 894 #ifndef YY_START_STACK_INCR 895 #define YY_START_STACK_INCR 25 899 #ifndef YY_FATAL_ERROR 900 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) 909 #define YY_DECL_IS_OURS 1 911 extern int yylex (
void);
913 #define YY_DECL int yylex (void) 919 #ifndef YY_USER_ACTION 920 #define YY_USER_ACTION 925 #define YY_BREAK break; 928 #define YY_RULE_SETUP \ 969 #line 969 "json_lex.yy.cpp" 993 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state )
995 yy_current_state = (int)
yy_def[yy_current_state];
996 if ( yy_current_state >= 43 )
1002 while ( yy_current_state != 42 );
1020 goto yy_find_action;
1025 #line 41 "scanner.l" 1030 #line 42 "scanner.l" 1035 #line 43 "scanner.l" 1040 #line 44 "scanner.l" 1045 #line 45 "scanner.l" 1051 #line 47 "scanner.l" 1056 #line 48 "scanner.l" 1061 #line 50 "scanner.l" 1064 #line 1064 "json_lex.yy.cpp" 1071 int yy_amount_of_matched_text = (int) (yy_cp - (
yytext_ptr)) - 1;
1121 if ( yy_next_state )
1125 yy_current_state = yy_next_state;
1133 goto yy_find_action;
1186 goto yy_find_action;
1193 "fatal flex scanner internal error--no action found" );
1210 int number_to_move, i;
1215 "fatal flex scanner internal error--end of buffer missed" );
1241 for ( i = 0; i < number_to_move; ++i )
1242 *(dest++) = *(source++);
1255 while ( num_to_read <= 0 )
1261 int yy_c_buf_p_offset =
1268 if ( new_size <= 0 )
1284 "fatal error - scanner input buffer overflow" );
1328 YY_FATAL_ERROR(
"out of dynamic memory in yy_get_next_buffer()" );
1359 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state )
1361 yy_current_state = (int)
yy_def[yy_current_state];
1362 if ( yy_current_state >= 43 )
1365 yy_current_state =
yy_nxt[
yy_base[yy_current_state] + yy_c];
1368 return yy_current_state;
1387 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state )
1389 yy_current_state = (int)
yy_def[yy_current_state];
1390 if ( yy_current_state >= 43 )
1393 yy_current_state =
yy_nxt[
yy_base[yy_current_state] + yy_c];
1394 yy_is_jam = (yy_current_state == 42);
1396 return yy_is_jam ? 0 : yy_current_state;
1405 static int yyinput (
void)
1407 static int input (
void)
1650 if (new_buffer == NULL)
1712 YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()" );
1732 YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()" );
1809 for ( i = 0; i < _yybytes_len; ++i )
1810 buf[i] = yybytes[i];
1826 #ifndef YY_EXIT_FAILURE 1827 #define YY_EXIT_FAILURE 2 1832 fprintf( stderr,
"%s\n", msg );
1843 int yyless_macro_arg = (n); \ 1844 YY_LESS_LINENO(yyless_macro_arg);\ 1845 yytext[yyleng] = (yy_hold_char); \ 1846 (yy_c_buf_p) = yytext + yyless_macro_arg; \ 1847 (yy_hold_char) = *(yy_c_buf_p); \ 1848 *(yy_c_buf_p) = '\0'; \ 1849 yyleng = yyless_macro_arg; \ 1988 static void yy_flex_strncpy (
char*
s1,
const char *
s2,
int n )
1992 for ( i = 0; i < n; ++i )
1997 #ifdef YY_NEED_STRLEN 1998 static int yy_flex_strlen (
const char * s )
2001 for ( n = 0; s[n]; ++n )
2023 return realloc(ptr, size);
2028 free( (
char *) ptr );
2031 #define YYTABLES_NAME "yytables" 2033 #line 50 "scanner.l" unsigned int flex_uint32_t
#define YY_INPUT(buf, result, max_size)
static char * yy_last_accepting_cpos
#define yy_switch_to_buffer
unsigned char flex_uint8_t
static const flex_int16_t yy_accept[43]
static int yy_init_globals(void)
unsigned short int flex_uint16_t
#define YY_STATE_EOF(state)
int yy_bs_lineno
The line count.
#define YY_BUFFER_EOF_PENDING
unsigned char flex_uint8_t
#define YY_DO_BEFORE_ACTION
#define YY_END_OF_BUFFER_CHAR
static void yy_fatal_error(const char *msg)
static YY_BUFFER_STATE * yy_buffer_stack
Stack as an array.
static int yy_did_buffer_switch_on_eof
static const YY_CHAR yy_meta[21]
static yy_state_type yy_last_accepting_state
int yy_bs_column
The column count.
static size_t yy_buffer_stack_top
index of top of stack.
#define YY_CURRENT_BUFFER
static const flex_int16_t yy_nxt[93]
#define yyensure_buffer_stack
#define YY_CURRENT_BUFFER_LVALUE
static size_t yy_buffer_stack_max
capacity of stack.
static yy_state_type yy_try_NUL_trans(yy_state_type current_state)
static const flex_int16_t yy_chk[93]
static yy_state_type yy_get_previous_state(void)
#define yypush_buffer_state
#define yy_load_buffer_state
struct yy_buffer_state * YY_BUFFER_STATE
static int yy_get_next_buffer(void)
#define YY_RESTORE_YY_MORE_OFFSET
#define EOB_ACT_LAST_MATCH
#define YY_FATAL_ERROR(msg)
#define EOB_ACT_END_OF_FILE
static const flex_int16_t yy_base[44]
#define EOB_ACT_CONTINUE_SCAN
#define yypop_buffer_state
static const YY_CHAR yy_ec[256]
static const flex_int16_t yy_def[44]