cprover
json_lex.yy.cpp File Reference
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <stdlib.h>
#include "json_parser.h"
#include "json_y.tab.h"
#include <util/pragma_wsign_compare.def>
#include <util/pragma_wnull_conversion.def>
#include <util/pragma_wdeprecated_register.def>
#include <unistd.h>
Include dependency graph for json_lex.yy.cpp:

Go to the source code of this file.

Classes

struct  yy_buffer_state
 
struct  yy_trans_info
 

Macros

#define YY_INT_ALIGNED   short int
 
#define yy_create_buffer   yyjson_create_buffer
 
#define yy_delete_buffer   yyjson_delete_buffer
 
#define yy_flex_debug   yyjson_flex_debug
 
#define yy_init_buffer   yyjson_init_buffer
 
#define yy_flush_buffer   yyjson_flush_buffer
 
#define yy_load_buffer_state   yyjson_load_buffer_state
 
#define yy_switch_to_buffer   yyjson_switch_to_buffer
 
#define yyin   yyjsonin
 
#define yyleng   yyjsonleng
 
#define yylex   yyjsonlex
 
#define yylineno   yyjsonlineno
 
#define yyout   yyjsonout
 
#define yyrestart   yyjsonrestart
 
#define yytext   yyjsontext
 
#define yywrap   yyjsonwrap
 
#define yyalloc   yyjsonalloc
 
#define yyrealloc   yyjsonrealloc
 
#define yyfree   yyjsonfree
 
#define FLEX_SCANNER
 
#define YY_FLEX_MAJOR_VERSION   2
 
#define YY_FLEX_MINOR_VERSION   6
 
#define YY_FLEX_SUBMINOR_VERSION   1
 
#define FLEX_BETA
 
#define FLEXINT_H
 
#define INT8_MIN   (-128)
 
#define INT16_MIN   (-32767-1)
 
#define INT32_MIN   (-2147483647-1)
 
#define INT8_MAX   (127)
 
#define INT16_MAX   (32767)
 
#define INT32_MAX   (2147483647)
 
#define UINT8_MAX   (255U)
 
#define UINT16_MAX   (65535U)
 
#define UINT32_MAX   (4294967295U)
 
#define yyconst   const
 
#define yynoreturn
 
#define YY_NULL   0
 
#define YY_SC_TO_UI(c)   ((unsigned int) (unsigned char) c)
 
#define BEGIN   (yy_start) = 1 + 2 *
 
#define YY_START   (((yy_start) - 1) / 2)
 
#define YYSTATE   YY_START
 
#define YY_STATE_EOF(state)   (YY_END_OF_BUFFER + state + 1)
 
#define YY_NEW_FILE   yyjsonrestart(yyjsonin )
 
#define YY_END_OF_BUFFER_CHAR   0
 
#define YY_BUF_SIZE   16384
 
#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
 
#define YY_TYPEDEF_YY_BUFFER_STATE
 
#define YY_TYPEDEF_YY_SIZE_T
 
#define EOB_ACT_CONTINUE_SCAN   0
 
#define EOB_ACT_END_OF_FILE   1
 
#define EOB_ACT_LAST_MATCH   2
 
#define YY_LESS_LINENO(n)
 
#define YY_LINENO_REWIND_TO(ptr)
 
#define yyless(n)
 
#define unput(c)   yyunput( c, (yytext_ptr) )
 
#define YY_STRUCT_YY_BUFFER_STATE
 
#define YY_BUFFER_NEW   0
 
#define YY_BUFFER_NORMAL   1
 
#define YY_BUFFER_EOF_PENDING   2
 
#define YY_CURRENT_BUFFER
 
#define YY_CURRENT_BUFFER_LVALUE   (yy_buffer_stack)[(yy_buffer_stack_top)]
 
#define YY_FLUSH_BUFFER   yyjson_flush_buffer(YY_CURRENT_BUFFER )
 
#define yy_new_buffer   yyjson_create_buffer
 
#define yy_set_interactive(is_interactive)
 
#define yy_set_bol(at_bol)
 
#define YY_AT_BOL()   (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
 
#define yyjsonwrap()   (/*CONSTCOND*/1)
 
#define YY_SKIP_YYWRAP
 
#define yytext_ptr   yyjsontext
 
#define YY_DO_BEFORE_ACTION
 
#define YY_NUM_RULES   8
 
#define YY_END_OF_BUFFER   9
 
#define REJECT   reject_used_but_not_detected
 
#define yymore()   yymore_used_but_not_detected
 
#define YY_MORE_ADJ   0
 
#define YY_RESTORE_YY_MORE_OFFSET
 
#define YY_NO_INPUT   1
 
#define PARSER   json_parser
 
#define INITIAL   0
 
#define YY_EXTRA_TYPE   void *
 
#define YY_READ_BUF_SIZE   8192
 
#define ECHO   do { if (fwrite( yyjsontext, (size_t) yyjsonleng, 1, yyjsonout )) {} } while (0)
 
#define YY_INPUT(buf, result, max_size)
 
#define yyterminate()   return YY_NULL
 
#define YY_START_STACK_INCR   25
 
#define YY_FATAL_ERROR(msg)   yy_fatal_error( msg )
 
#define YY_DECL_IS_OURS   1
 
#define YY_DECL   int yyjsonlex (void)
 
#define YY_USER_ACTION
 
#define YY_BREAK   /*LINTED*/break;
 
#define YY_RULE_SETUP   YY_USER_ACTION
 
#define YY_EXIT_FAILURE   2
 
#define yyless(n)
 
#define YYTABLES_NAME   "yytables"
 

Typedefs

typedef signed char flex_int8_t
 
typedef short int flex_int16_t
 
typedef int flex_int32_t
 
typedef unsigned char flex_uint8_t
 
typedef unsigned short int flex_uint16_t
 
typedef unsigned int flex_uint32_t
 
typedef struct yy_buffer_stateYY_BUFFER_STATE
 
typedef size_t yy_size_t
 
typedef unsigned char YY_CHAR
 
typedef int yy_state_type
 

Functions

void yyjsonrestart (FILE *input_file)
 Immediately switch to a different input stream. More...
 
void yyjson_switch_to_buffer (YY_BUFFER_STATE new_buffer)
 Switch to a different input buffer. More...
 
YY_BUFFER_STATE yyjson_create_buffer (FILE *file, int size)
 Allocate and initialize an input buffer state. More...
 
void yyjson_delete_buffer (YY_BUFFER_STATE b)
 Destroy the buffer. More...
 
void yyjson_flush_buffer (YY_BUFFER_STATE b)
 Discard all buffered characters. More...
 
void yyjsonpush_buffer_state (YY_BUFFER_STATE new_buffer)
 Pushes the new state onto the stack. More...
 
void yyjsonpop_buffer_state (void)
 Removes and deletes the top of the stack, if present. More...
 
static void yyjsonensure_buffer_stack (void)
 
static void yyjson_load_buffer_state (void)
 
static void yyjson_init_buffer (YY_BUFFER_STATE b, FILE *file)
 
YY_BUFFER_STATE yyjson_scan_buffer (char *base, yy_size_t size)
 Setup the input buffer state to scan directly from a user-specified character buffer. More...
 
YY_BUFFER_STATE yyjson_scan_string (const char *yystr)
 Setup the input buffer state to scan a string. More...
 
YY_BUFFER_STATE yyjson_scan_bytes (const char *yybytes, int _yybytes_len)
 Setup the input buffer state to scan the given bytes. More...
 
void * yyjsonalloc (yy_size_t)
 
void * yyjsonrealloc (void *, yy_size_t)
 
void yyjsonfree (void *)
 
static yy_state_type yy_get_previous_state (void)
 
static yy_state_type yy_try_NUL_trans (yy_state_type current_state)
 
static int yy_get_next_buffer (void)
 
static void yy_fatal_error (const char *msg)
 
static int yy_init_globals (void)
 
int yyjsonlex_destroy (void)
 
int yyjsonget_debug (void)
 
void yyjsonset_debug (int debug_flag)
 
void * yyjsonget_extra (void)
 
void yyjsonset_extra (void *user_defined)
 
FILE * yyjsonget_in (void)
 Get the input stream. More...
 
void yyjsonset_in (FILE *_in_str)
 Set the input stream. More...
 
FILE * yyjsonget_out (void)
 Get the output stream. More...
 
void yyjsonset_out (FILE *_out_str)
 
int yyjsonget_leng (void)
 Get the length of the current token. More...
 
char * yyjsonget_text (void)
 Get the current token. More...
 
int yyjsonget_lineno (void)
 Get the current line number. More...
 
void yyjsonset_lineno (int _line_number)
 Set the current line number. More...
 
int yyjsonlex (void)
 The main scanner function which does all the work. More...
 

Variables

int yyjsonleng
 
FILE * yyjsonin = NULL
 
FILE * yyjsonout = NULL
 
static size_t yy_buffer_stack_top = 0
 index of top of stack. More...
 
static size_t yy_buffer_stack_max = 0
 capacity of stack. More...
 
static YY_BUFFER_STATEyy_buffer_stack = NULL
 Stack as an array. More...
 
static char yy_hold_char
 
static int yy_n_chars
 
static char * yy_c_buf_p = NULL
 
static int yy_init = 0
 
static int yy_start = 0
 
static int yy_did_buffer_switch_on_eof
 
int yyjsonlineno = 1
 
char * yyjsontext
 
static const flex_int16_t yy_accept [43]
 
static const YY_CHAR yy_ec [256]
 
static const YY_CHAR yy_meta [21]
 
static const flex_uint16_t yy_base [44]
 
static const flex_int16_t yy_def [44]
 
static const flex_uint16_t yy_nxt [93]
 
static const flex_int16_t yy_chk [93]
 
static yy_state_type yy_last_accepting_state
 
static char * yy_last_accepting_cpos
 
int yyjson_flex_debug = 0
 

Macro Definition Documentation

§ BEGIN

#define BEGIN   (yy_start) = 1 + 2 *

Definition at line 133 of file json_lex.yy.cpp.

§ ECHO

#define ECHO   do { if (fwrite( yyjsontext, (size_t) yyjsonleng, 1, yyjsonout )) {} } while (0)

Definition at line 617 of file json_lex.yy.cpp.

§ EOB_ACT_CONTINUE_SCAN

#define EOB_ACT_CONTINUE_SCAN   0

Definition at line 181 of file json_lex.yy.cpp.

Referenced by yy_get_next_buffer(), yy_try_NUL_trans(), and yyjsonlex().

§ EOB_ACT_END_OF_FILE

#define EOB_ACT_END_OF_FILE   1

Definition at line 182 of file json_lex.yy.cpp.

Referenced by yy_get_next_buffer(), yy_try_NUL_trans(), and yyjsonlex().

§ EOB_ACT_LAST_MATCH

#define EOB_ACT_LAST_MATCH   2

Definition at line 183 of file json_lex.yy.cpp.

Referenced by yy_get_next_buffer(), yy_try_NUL_trans(), and yyjsonlex().

§ FLEX_BETA

#define FLEX_BETA

Definition at line 33 of file json_lex.yy.cpp.

§ FLEX_SCANNER

#define FLEX_SCANNER

Definition at line 28 of file json_lex.yy.cpp.

§ FLEXINT_H

#define FLEXINT_H

Definition at line 49 of file json_lex.yy.cpp.

§ INITIAL

#define INITIAL   0

Definition at line 523 of file json_lex.yy.cpp.

Referenced by yyjsonlex().

§ INT16_MAX

#define INT16_MAX   (32767)

Definition at line 91 of file json_lex.yy.cpp.

§ INT16_MIN

#define INT16_MIN   (-32767-1)

Definition at line 82 of file json_lex.yy.cpp.

§ INT32_MAX

#define INT32_MAX   (2147483647)

Definition at line 94 of file json_lex.yy.cpp.

§ INT32_MIN

#define INT32_MIN   (-2147483647-1)

Definition at line 85 of file json_lex.yy.cpp.

§ INT8_MAX

#define INT8_MAX   (127)

Definition at line 88 of file json_lex.yy.cpp.

§ INT8_MIN

#define INT8_MIN   (-128)

Definition at line 79 of file json_lex.yy.cpp.

§ PARSER

#define PARSER   json_parser

Definition at line 512 of file json_lex.yy.cpp.

§ REJECT

#define REJECT   reject_used_but_not_detected

Definition at line 497 of file json_lex.yy.cpp.

§ UINT16_MAX

#define UINT16_MAX   (65535U)

Definition at line 100 of file json_lex.yy.cpp.

§ UINT32_MAX

#define UINT32_MAX   (4294967295U)

Definition at line 103 of file json_lex.yy.cpp.

§ UINT8_MAX

#define UINT8_MAX   (255U)

Definition at line 97 of file json_lex.yy.cpp.

§ unput

#define unput (   c)    yyunput( c, (yytext_ptr) )

Definition at line 202 of file json_lex.yy.cpp.

§ YY_AT_BOL

#define YY_AT_BOL ( )    (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)

Definition at line 348 of file json_lex.yy.cpp.

§ YY_BREAK

#define YY_BREAK   /*LINTED*/break;

Definition at line 696 of file json_lex.yy.cpp.

Referenced by yyjsonlex().

§ YY_BUF_SIZE

#define YY_BUF_SIZE   16384

Definition at line 159 of file json_lex.yy.cpp.

Referenced by yyjsonlex(), and yyjsonrestart().

§ YY_BUFFER_EOF_PENDING

#define YY_BUFFER_EOF_PENDING   2

Definition at line 264 of file json_lex.yy.cpp.

Referenced by yy_get_next_buffer().

§ YY_BUFFER_NEW

#define YY_BUFFER_NEW   0

Definition at line 252 of file json_lex.yy.cpp.

Referenced by yyjson_flush_buffer(), yyjson_scan_buffer(), and yyjsonlex().

§ YY_BUFFER_NORMAL

#define YY_BUFFER_NORMAL   1

Definition at line 253 of file json_lex.yy.cpp.

Referenced by yyjsonlex().

§ yy_create_buffer

#define yy_create_buffer   yyjson_create_buffer

Definition at line 9 of file json_lex.yy.cpp.

§ YY_CURRENT_BUFFER

#define YY_CURRENT_BUFFER
Value:
: NULL)
static YY_BUFFER_STATE * yy_buffer_stack
Stack as an array.
static size_t yy_buffer_stack_top
index of top of stack.

Definition at line 280 of file json_lex.yy.cpp.

Referenced by yyjson_delete_buffer(), yyjson_flush_buffer(), yyjson_init_buffer(), yyjson_switch_to_buffer(), yyjsonlex(), yyjsonlex_destroy(), yyjsonpop_buffer_state(), yyjsonpush_buffer_state(), and yyjsonrestart().

§ YY_CURRENT_BUFFER_LVALUE

§ YY_DECL

#define YY_DECL   int yyjsonlex (void)

Definition at line 684 of file json_lex.yy.cpp.

§ YY_DECL_IS_OURS

#define YY_DECL_IS_OURS   1

Definition at line 680 of file json_lex.yy.cpp.

§ yy_delete_buffer

#define yy_delete_buffer   yyjson_delete_buffer

Definition at line 10 of file json_lex.yy.cpp.

§ YY_DO_BEFORE_ACTION

#define YY_DO_BEFORE_ACTION
Value:
(yytext_ptr) = yy_bp; \
yyjsonleng = (int) (yy_cp - yy_bp); \
(yy_hold_char) = *yy_cp; \
*yy_cp = '\0'; \
(yy_c_buf_p) = yy_cp;
static char yy_hold_char
static char * yy_c_buf_p
#define yytext_ptr

Definition at line 377 of file json_lex.yy.cpp.

Referenced by yyjsonlex().

§ YY_END_OF_BUFFER

#define YY_END_OF_BUFFER   9

Definition at line 385 of file json_lex.yy.cpp.

Referenced by yyjsonlex().

§ YY_END_OF_BUFFER_CHAR

#define YY_END_OF_BUFFER_CHAR   0

§ YY_EXIT_FAILURE

#define YY_EXIT_FAILURE   2

Definition at line 1597 of file json_lex.yy.cpp.

Referenced by yy_fatal_error().

§ YY_EXTRA_TYPE

#define YY_EXTRA_TYPE   void *

Definition at line 534 of file json_lex.yy.cpp.

§ YY_FATAL_ERROR

#define YY_FATAL_ERROR (   msg)    yy_fatal_error( msg )

§ yy_flex_debug

#define yy_flex_debug   yyjson_flex_debug

Definition at line 11 of file json_lex.yy.cpp.

§ YY_FLEX_MAJOR_VERSION

#define YY_FLEX_MAJOR_VERSION   2

Definition at line 29 of file json_lex.yy.cpp.

§ YY_FLEX_MINOR_VERSION

#define YY_FLEX_MINOR_VERSION   6

Definition at line 30 of file json_lex.yy.cpp.

§ YY_FLEX_SUBMINOR_VERSION

#define YY_FLEX_SUBMINOR_VERSION   1

Definition at line 31 of file json_lex.yy.cpp.

§ yy_flush_buffer

#define yy_flush_buffer   yyjson_flush_buffer

Definition at line 13 of file json_lex.yy.cpp.

§ YY_FLUSH_BUFFER

#define YY_FLUSH_BUFFER   yyjson_flush_buffer(YY_CURRENT_BUFFER )

Definition at line 316 of file json_lex.yy.cpp.

§ yy_init_buffer

#define yy_init_buffer   yyjson_init_buffer

Definition at line 12 of file json_lex.yy.cpp.

§ YY_INPUT

#define YY_INPUT (   buf,
  result,
  max_size 
)
Value:
if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
{ \
int c = '*'; \
int n; \
for ( n = 0; n < max_size && \
(c = getc( yyjsonin )) != EOF && c != '\n'; ++n ) \
buf[n] = (char) c; \
if ( c == '\n' ) \
buf[n++] = (char) c; \
if ( c == EOF && ferror( yyjsonin ) ) \
YY_FATAL_ERROR( "input in flex scanner failed" ); \
result = n; \
} \
else \
{ \
errno=0; \
while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyjsonin)) == 0 && ferror(yyjsonin)) \
{ \
if( errno != EINTR) \
{ \
YY_FATAL_ERROR( "input in flex scanner failed" ); \
break; \
} \
errno=0; \
clearerr(yyjsonin); \
} \
}\
\
size_t yy_size_t
FILE * yyjsonin
#define YY_CURRENT_BUFFER_LVALUE
#define YY_FATAL_ERROR(msg)

Definition at line 624 of file json_lex.yy.cpp.

Referenced by yy_get_next_buffer().

§ YY_INT_ALIGNED

#define YY_INT_ALIGNED   short int

Definition at line 5 of file json_lex.yy.cpp.

§ YY_LESS_LINENO

#define YY_LESS_LINENO (   n)

Definition at line 185 of file json_lex.yy.cpp.

§ YY_LINENO_REWIND_TO

#define YY_LINENO_REWIND_TO (   ptr)

Definition at line 186 of file json_lex.yy.cpp.

§ yy_load_buffer_state

#define yy_load_buffer_state   yyjson_load_buffer_state

Definition at line 14 of file json_lex.yy.cpp.

§ YY_MORE_ADJ

#define YY_MORE_ADJ   0

Definition at line 499 of file json_lex.yy.cpp.

Referenced by yy_get_next_buffer(), yy_get_previous_state(), and yyjsonlex().

§ yy_new_buffer

#define yy_new_buffer   yyjson_create_buffer

Definition at line 326 of file json_lex.yy.cpp.

§ YY_NEW_FILE

#define YY_NEW_FILE   yyjsonrestart(yyjsonin )

Definition at line 146 of file json_lex.yy.cpp.

Referenced by yy_try_NUL_trans(), and yyjsonlex().

§ YY_NO_INPUT

#define YY_NO_INPUT   1

Definition at line 505 of file json_lex.yy.cpp.

§ YY_NULL

#define YY_NULL   0

Definition at line 120 of file json_lex.yy.cpp.

§ YY_NUM_RULES

#define YY_NUM_RULES   8

Definition at line 384 of file json_lex.yy.cpp.

§ YY_READ_BUF_SIZE

#define YY_READ_BUF_SIZE   8192

Definition at line 608 of file json_lex.yy.cpp.

Referenced by yy_get_next_buffer().

§ YY_RESTORE_YY_MORE_OFFSET

#define YY_RESTORE_YY_MORE_OFFSET

Definition at line 500 of file json_lex.yy.cpp.

Referenced by yyjsonlex().

§ YY_RULE_SETUP

#define YY_RULE_SETUP   YY_USER_ACTION

Definition at line 699 of file json_lex.yy.cpp.

Referenced by yyjsonlex().

§ YY_SC_TO_UI

#define YY_SC_TO_UI (   c)    ((unsigned int) (unsigned char) c)

Definition at line 127 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), and yyjsonlex().

§ yy_set_bol

#define yy_set_bol (   at_bol)
Value:
{ \
if ( ! YY_CURRENT_BUFFER ){\
yyjsonensure_buffer_stack (); \
YY_CURRENT_BUFFER_LVALUE = \
yyjson_create_buffer(yyjsonin,YY_BUF_SIZE ); \
} \
YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
}
FILE * yyjsonin
#define YY_CURRENT_BUFFER
#define YY_BUF_SIZE

Definition at line 338 of file json_lex.yy.cpp.

§ yy_set_interactive

#define yy_set_interactive (   is_interactive)
Value:
{ \
if ( ! YY_CURRENT_BUFFER ){ \
yyjsonensure_buffer_stack (); \
YY_CURRENT_BUFFER_LVALUE = \
yyjson_create_buffer(yyjsonin,YY_BUF_SIZE ); \
} \
YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
}
FILE * yyjsonin
#define YY_CURRENT_BUFFER
#define YY_BUF_SIZE

Definition at line 328 of file json_lex.yy.cpp.

§ YY_SKIP_YYWRAP

#define YY_SKIP_YYWRAP

Definition at line 351 of file json_lex.yy.cpp.

§ YY_START

#define YY_START   (((yy_start) - 1) / 2)

Definition at line 139 of file json_lex.yy.cpp.

Referenced by yyjsonlex().

§ YY_START_STACK_INCR

#define YY_START_STACK_INCR   25

Definition at line 666 of file json_lex.yy.cpp.

§ YY_STATE_BUF_SIZE

#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))

Definition at line 165 of file json_lex.yy.cpp.

§ YY_STATE_EOF

#define YY_STATE_EOF (   state)    (YY_END_OF_BUFFER + state + 1)

Definition at line 143 of file json_lex.yy.cpp.

Referenced by yyjsonlex().

§ YY_STRUCT_YY_BUFFER_STATE

#define YY_STRUCT_YY_BUFFER_STATE

Definition at line 205 of file json_lex.yy.cpp.

§ yy_switch_to_buffer

#define yy_switch_to_buffer   yyjson_switch_to_buffer

Definition at line 15 of file json_lex.yy.cpp.

§ YY_TYPEDEF_YY_BUFFER_STATE

#define YY_TYPEDEF_YY_BUFFER_STATE

Definition at line 168 of file json_lex.yy.cpp.

§ YY_TYPEDEF_YY_SIZE_T

#define YY_TYPEDEF_YY_SIZE_T

Definition at line 173 of file json_lex.yy.cpp.

§ YY_USER_ACTION

#define YY_USER_ACTION

Definition at line 691 of file json_lex.yy.cpp.

§ yyalloc

#define yyalloc   yyjsonalloc

Definition at line 24 of file json_lex.yy.cpp.

§ yyconst

#define yyconst   const

Definition at line 111 of file json_lex.yy.cpp.

Referenced by yyjsonlex_destroy().

§ yyfree

#define yyfree   yyjsonfree

Definition at line 26 of file json_lex.yy.cpp.

§ yyin

#define yyin   yyjsonin

Definition at line 16 of file json_lex.yy.cpp.

§ yyjsonwrap

#define yyjsonwrap ( )    (/*CONSTCOND*/1)

Definition at line 350 of file json_lex.yy.cpp.

Referenced by yy_try_NUL_trans(), and yyjsonlex().

§ yyleng

#define yyleng   yyjsonleng

Definition at line 17 of file json_lex.yy.cpp.

§ yyless [1/2]

#define yyless (   n)
Value:
do \
{ \
/* Undo effects of setting up yyjsontext. */ \
yy_size_t yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
*yy_cp = (yy_hold_char); \
YY_RESTORE_YY_MORE_OFFSET \
(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
YY_DO_BEFORE_ACTION; /* set up yyjsontext again */ \
} \
while ( 0 )
static char yy_hold_char
static char * yy_c_buf_p
#define YY_MORE_ADJ

Definition at line 1609 of file json_lex.yy.cpp.

§ yyless [2/2]

#define yyless (   n)
Value:
do \
{ \
/* Undo effects of setting up yyjsontext. */ \
yy_size_t yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
yyjsontext[yyjsonleng] = (yy_hold_char); \
(yy_c_buf_p) = yyjsontext + yyless_macro_arg; \
*(yy_c_buf_p) = '\0'; \
yyjsonleng = yyless_macro_arg; \
} \
while ( 0 )
static char yy_hold_char
static char * yy_c_buf_p
char * yyjsontext
int yyjsonleng

Definition at line 1609 of file json_lex.yy.cpp.

§ yylex

#define yylex   yyjsonlex

Definition at line 18 of file json_lex.yy.cpp.

§ yylineno

#define yylineno   yyjsonlineno

Definition at line 19 of file json_lex.yy.cpp.

§ yymore

#define yymore ( )    yymore_used_but_not_detected

Definition at line 498 of file json_lex.yy.cpp.

§ yynoreturn

#define yynoreturn

Definition at line 116 of file json_lex.yy.cpp.

§ yyout

#define yyout   yyjsonout

Definition at line 20 of file json_lex.yy.cpp.

§ yyrealloc

#define yyrealloc   yyjsonrealloc

Definition at line 25 of file json_lex.yy.cpp.

§ yyrestart

#define yyrestart   yyjsonrestart

Definition at line 21 of file json_lex.yy.cpp.

§ YYSTATE

#define YYSTATE   YY_START

Definition at line 140 of file json_lex.yy.cpp.

§ YYTABLES_NAME

#define YYTABLES_NAME   "yytables"

Definition at line 1801 of file json_lex.yy.cpp.

§ yyterminate

#define yyterminate ( )    return YY_NULL

Definition at line 661 of file json_lex.yy.cpp.

Referenced by yyjsonlex().

§ yytext

#define yytext   yyjsontext

Definition at line 22 of file json_lex.yy.cpp.

§ yytext_ptr

#define yytext_ptr   yyjsontext

§ yywrap

#define yywrap   yyjsonwrap

Definition at line 23 of file json_lex.yy.cpp.

Typedef Documentation

§ flex_int16_t

typedef short int flex_int16_t

Definition at line 71 of file json_lex.yy.cpp.

§ flex_int32_t

typedef int flex_int32_t

Definition at line 72 of file json_lex.yy.cpp.

§ flex_int8_t

typedef signed char flex_int8_t

Definition at line 70 of file json_lex.yy.cpp.

§ flex_uint16_t

typedef unsigned short int flex_uint16_t

Definition at line 74 of file json_lex.yy.cpp.

§ flex_uint32_t

typedef unsigned int flex_uint32_t

Definition at line 75 of file json_lex.yy.cpp.

§ flex_uint8_t

typedef unsigned char flex_uint8_t

Definition at line 73 of file json_lex.yy.cpp.

§ YY_BUFFER_STATE

Definition at line 169 of file json_lex.yy.cpp.

§ YY_CHAR

typedef unsigned char YY_CHAR

Definition at line 353 of file json_lex.yy.cpp.

§ yy_size_t

typedef size_t yy_size_t

Definition at line 174 of file json_lex.yy.cpp.

§ yy_state_type

typedef int yy_state_type

Definition at line 357 of file json_lex.yy.cpp.

Function Documentation

§ yy_fatal_error()

static void yy_fatal_error ( const char *  msg)
static

Definition at line 1600 of file json_lex.yy.cpp.

References YY_EXIT_FAILURE.

§ yy_get_next_buffer()

§ yy_get_previous_state()

static yy_state_type yy_get_previous_state ( void  )
static

§ yy_init_globals()

static int yy_init_globals ( void  )
static

§ yy_try_NUL_trans()

§ yyjson_create_buffer()

YY_BUFFER_STATE yyjson_create_buffer ( FILE *  file,
int  size 
)

Allocate and initialize an input buffer state.

Parameters
fileA readable stream.
sizeThe character buffer size in bytes. When in doubt, use YY_BUF_SIZE.
Returns
the allocated buffer state.

Definition at line 1314 of file json_lex.yy.cpp.

References yy_buffer_state::yy_buf_size, yy_buffer_state::yy_ch_buf, YY_FATAL_ERROR, yy_buffer_state::yy_is_our_buffer, yyjson_init_buffer(), and yyjsonalloc().

Referenced by yyjsonlex(), and yyjsonrestart().

§ yyjson_delete_buffer()

void yyjson_delete_buffer ( YY_BUFFER_STATE  b)

Destroy the buffer.

Parameters
ba buffer created with yyjson_create_buffer()

Definition at line 1342 of file json_lex.yy.cpp.

References yy_buffer_state::yy_ch_buf, YY_CURRENT_BUFFER, YY_CURRENT_BUFFER_LVALUE, yy_buffer_state::yy_is_our_buffer, and yyjsonfree().

Referenced by yyjsonlex_destroy(), and yyjsonpop_buffer_state().

§ yyjson_flush_buffer()

void yyjson_flush_buffer ( YY_BUFFER_STATE  b)

Discard all buffered characters.

On the next scan, YY_INPUT will be called.

Parameters
bthe buffer state to be flushed, usually YY_CURRENT_BUFFER.

Definition at line 1389 of file json_lex.yy.cpp.

References yy_buffer_state::yy_at_bol, yy_buffer_state::yy_buf_pos, YY_BUFFER_NEW, yy_buffer_state::yy_buffer_status, yy_buffer_state::yy_ch_buf, YY_CURRENT_BUFFER, YY_END_OF_BUFFER_CHAR, yy_buffer_state::yy_n_chars, and yyjson_load_buffer_state().

Referenced by yyjson_init_buffer().

§ yyjson_init_buffer()

§ yyjson_load_buffer_state()

§ yyjson_scan_buffer()

YY_BUFFER_STATE yyjson_scan_buffer ( char *  base,
yy_size_t  size 
)

Setup the input buffer state to scan directly from a user-specified character buffer.

Parameters
basethe character buffer
sizethe size in bytes of the character buffer
Returns
the newly allocated buffer state object.

Definition at line 1516 of file json_lex.yy.cpp.

References yy_buffer_state::yy_at_bol, yy_buffer_state::yy_buf_pos, yy_buffer_state::yy_buf_size, YY_BUFFER_NEW, yy_buffer_state::yy_buffer_status, yy_buffer_state::yy_ch_buf, YY_END_OF_BUFFER_CHAR, YY_FATAL_ERROR, yy_buffer_state::yy_fill_buffer, yy_buffer_state::yy_input_file, yy_buffer_state::yy_is_interactive, yy_buffer_state::yy_is_our_buffer, yy_buffer_state::yy_n_chars, yyjson_switch_to_buffer(), and yyjsonalloc().

Referenced by yyjson_scan_bytes().

§ yyjson_scan_bytes()

YY_BUFFER_STATE yyjson_scan_bytes ( const char *  yybytes,
int  _yybytes_len 
)

Setup the input buffer state to scan the given bytes.

The next call to yyjsonlex() will scan from a copy of bytes.

Parameters
yybytesthe byte buffer to scan
_yybytes_lenthe number of bytes in the buffer pointed to by bytes.
Returns
the newly allocated buffer state object.

Definition at line 1566 of file json_lex.yy.cpp.

References YY_END_OF_BUFFER_CHAR, YY_FATAL_ERROR, yy_buffer_state::yy_is_our_buffer, yyjson_scan_buffer(), and yyjsonalloc().

Referenced by yyjson_scan_string().

§ yyjson_scan_string()

YY_BUFFER_STATE yyjson_scan_string ( const char *  yystr)

Setup the input buffer state to scan a string.

The next call to yyjsonlex() will scan from a copy of str.

Parameters
yystra NUL-terminated string to scan
Returns
the newly allocated buffer state object.
Note
If you want to scan bytes that may contain NUL values, then use yyjson_scan_bytes() instead.

Definition at line 1553 of file json_lex.yy.cpp.

References yyjson_scan_bytes().

§ yyjson_switch_to_buffer()

void yyjson_switch_to_buffer ( YY_BUFFER_STATE  new_buffer)

Switch to a different input buffer.

Parameters
new_bufferThe new input buffer.

Definition at line 1269 of file json_lex.yy.cpp.

References yy_c_buf_p, YY_CURRENT_BUFFER, YY_CURRENT_BUFFER_LVALUE, yy_did_buffer_switch_on_eof, yy_hold_char, yy_buffer_state::yy_n_chars, yyjson_load_buffer_state(), and yyjsonensure_buffer_stack().

Referenced by yyjson_scan_buffer().

§ yyjsonalloc()

void * yyjsonalloc ( yy_size_t  size)

§ yyjsonensure_buffer_stack()

static void yyjsonensure_buffer_stack ( void  )
static

§ yyjsonfree()

void yyjsonfree ( void *  ptr)

Definition at line 1796 of file json_lex.yy.cpp.

References free().

Referenced by yyjson_delete_buffer(), and yyjsonlex_destroy().

§ yyjsonget_debug()

int yyjsonget_debug ( void  )

Definition at line 1693 of file json_lex.yy.cpp.

References yyjson_flex_debug.

§ yyjsonget_extra()

void* yyjsonget_extra ( void  )

§ yyjsonget_in()

FILE * yyjsonget_in ( void  )

Get the input stream.

Definition at line 1637 of file json_lex.yy.cpp.

References yyjsonin.

§ yyjsonget_leng()

int yyjsonget_leng ( void  )

Get the length of the current token.

Definition at line 1653 of file json_lex.yy.cpp.

References yyjsonleng.

§ yyjsonget_lineno()

int yyjsonget_lineno ( void  )

Get the current line number.

Definition at line 1628 of file json_lex.yy.cpp.

References yyjsonlineno.

§ yyjsonget_out()

FILE * yyjsonget_out ( void  )

Get the output stream.

Definition at line 1645 of file json_lex.yy.cpp.

References yyjsonout.

§ yyjsonget_text()

char * yyjsonget_text ( void  )

Get the current token.

Definition at line 1662 of file json_lex.yy.cpp.

References yyjsontext.

§ yyjsonlex()

§ yyjsonlex_destroy()

§ yyjsonpop_buffer_state()

void yyjsonpop_buffer_state ( void  )

Removes and deletes the top of the stack, if present.

The next element becomes the new top.

Definition at line 1448 of file json_lex.yy.cpp.

References yy_buffer_stack_top, YY_CURRENT_BUFFER, YY_CURRENT_BUFFER_LVALUE, yy_did_buffer_switch_on_eof, yyjson_delete_buffer(), and yyjson_load_buffer_state().

Referenced by yyjsonlex_destroy().

§ yyjsonpush_buffer_state()

void yyjsonpush_buffer_state ( YY_BUFFER_STATE  new_buffer)

Pushes the new state onto the stack.

The new state becomes the current state. This function will allocate the stack if necessary.

Parameters
new_bufferThe new state.

Definition at line 1418 of file json_lex.yy.cpp.

References yy_buffer_stack_top, yy_c_buf_p, YY_CURRENT_BUFFER, YY_CURRENT_BUFFER_LVALUE, yy_did_buffer_switch_on_eof, yy_hold_char, yy_buffer_state::yy_n_chars, yyjson_load_buffer_state(), and yyjsonensure_buffer_stack().

§ yyjsonrealloc()

void * yyjsonrealloc ( void *  ptr,
yy_size_t  size 
)

Definition at line 1783 of file json_lex.yy.cpp.

Referenced by yy_get_next_buffer(), and yyjsonensure_buffer_stack().

§ yyjsonrestart()

void yyjsonrestart ( FILE *  input_file)

Immediately switch to a different input stream.

Parameters
input_fileA readable stream.
Note
This function does not reset the start condition to INITIAL .

Definition at line 1252 of file json_lex.yy.cpp.

References YY_BUF_SIZE, YY_CURRENT_BUFFER, YY_CURRENT_BUFFER_LVALUE, yyjson_create_buffer(), yyjson_init_buffer(), yyjson_load_buffer_state(), yyjsonensure_buffer_stack(), and yyjsonin.

Referenced by yy_get_next_buffer(), and yy_try_NUL_trans().

§ yyjsonset_debug()

void yyjsonset_debug ( int  debug_flag)

Definition at line 1698 of file json_lex.yy.cpp.

References yyjson_flex_debug.

§ yyjsonset_extra()

void yyjsonset_extra ( void *  user_defined)

§ yyjsonset_in()

void yyjsonset_in ( FILE *  _in_str)

Set the input stream.

This does not discard the current input buffer.

Parameters
_in_strA readable stream.
See also
yyjson_switch_to_buffer

Definition at line 1683 of file json_lex.yy.cpp.

References yyjsonin.

§ yyjsonset_lineno()

void yyjsonset_lineno ( int  _line_number)

Set the current line number.

Parameters
_line_numberline number

Definition at line 1671 of file json_lex.yy.cpp.

References yyjsonlineno.

§ yyjsonset_out()

void yyjsonset_out ( FILE *  _out_str)

Definition at line 1688 of file json_lex.yy.cpp.

References yyjsonout.

Variable Documentation

§ yy_accept

const flex_int16_t yy_accept[43]
static
Initial value:
=
{ 0,
0, 0, 9, 7, 6, 6, 6, 7, 2, 2,
7, 7, 7, 0, 1, 0, 2, 2, 0, 0,
0, 2, 0, 0, 0, 1, 2, 2, 0, 2,
0, 0, 0, 0, 0, 0, 5, 3, 0, 2,
4, 0
}

Definition at line 393 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), yy_try_NUL_trans(), and yyjsonlex().

§ yy_base

const flex_uint16_t yy_base[44]
static
Initial value:
=
{ 0,
0, 0, 71, 72, 72, 72, 17, 14, 17, 17,
58, 49, 51, 25, 72, 27, 0, 24, 26, 34,
0, 0, 52, 51, 45, 33, 0, 37, 40, 43,
46, 48, 49, 48, 0, 42, 72, 72, 50, 52,
72, 72, 40
}

Definition at line 440 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), yy_try_NUL_trans(), and yyjsonlex().

§ yy_buffer_stack

YY_BUFFER_STATE* yy_buffer_stack = NULL
static

Stack as an array.

Definition at line 272 of file json_lex.yy.cpp.

Referenced by yy_init_globals(), yyjsonensure_buffer_stack(), and yyjsonlex_destroy().

§ yy_buffer_stack_max

size_t yy_buffer_stack_max = 0
static

capacity of stack.

Definition at line 271 of file json_lex.yy.cpp.

Referenced by yy_init_globals(), and yyjsonensure_buffer_stack().

§ yy_buffer_stack_top

size_t yy_buffer_stack_top = 0
static

index of top of stack.

Definition at line 270 of file json_lex.yy.cpp.

Referenced by yy_init_globals(), yyjsonensure_buffer_stack(), yyjsonpop_buffer_state(), and yyjsonpush_buffer_state().

§ yy_c_buf_p

§ yy_chk

const flex_int16_t yy_chk[93]
static
Initial value:
=
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
7, 8, 8, 9, 10, 10, 9, 7, 14, 9,
16, 18, 18, 19, 19, 14, 26, 16, 20, 20,
43, 20, 20, 26, 28, 28, 28, 29, 29, 28,
30, 30, 34, 34, 36, 34, 34, 39, 39, 40,
40, 33, 32, 31, 25, 24, 23, 13, 12, 11,
3, 42, 42, 42, 42, 42, 42, 42, 42, 42,
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
42, 42
}

Definition at line 473 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), yy_try_NUL_trans(), and yyjsonlex().

§ yy_def

const flex_int16_t yy_def[44]
static
Initial value:
=
{ 0,
42, 1, 42, 42, 42, 42, 43, 42, 42, 9,
42, 42, 42, 43, 42, 43, 9, 9, 42, 42,
20, 10, 42, 42, 42, 43, 18, 42, 42, 42,
42, 42, 42, 42, 34, 42, 42, 42, 42, 42,
42, 0, 42
}

Definition at line 449 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), yy_try_NUL_trans(), and yyjsonlex().

§ yy_did_buffer_switch_on_eof

int yy_did_buffer_switch_on_eof
static

§ yy_ec

const YY_CHAR yy_ec[256]
static

Definition at line 402 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), and yyjsonlex().

§ yy_hold_char

char yy_hold_char
static

§ yy_init

int yy_init = 0
static

Definition at line 296 of file json_lex.yy.cpp.

Referenced by yy_init_globals(), and yyjsonlex().

§ yy_last_accepting_cpos

char* yy_last_accepting_cpos
static

Definition at line 489 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), yy_try_NUL_trans(), and yyjsonlex().

§ yy_last_accepting_state

yy_state_type yy_last_accepting_state
static

Definition at line 488 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), yy_try_NUL_trans(), and yyjsonlex().

§ yy_meta

const YY_CHAR yy_meta[21]
static
Initial value:
=
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1
}

Definition at line 434 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), yy_try_NUL_trans(), and yyjsonlex().

§ yy_n_chars

int yy_n_chars
static

Definition at line 291 of file json_lex.yy.cpp.

§ yy_nxt

const flex_uint16_t yy_nxt[93]
static
Initial value:
=
{ 0,
4, 5, 6, 7, 4, 8, 4, 9, 10, 4,
4, 4, 4, 11, 4, 12, 4, 4, 13, 4,
15, 17, 18, 19, 22, 22, 20, 16, 15, 21,
26, 27, 27, 28, 28, 16, 15, 16, 29, 29,
14, 30, 30, 16, 28, 28, 34, 30, 30, 35,
30, 30, 39, 39, 41, 40, 40, 40, 40, 40,
40, 38, 37, 36, 33, 32, 31, 25, 24, 23,
42, 3, 42, 42, 42, 42, 42, 42, 42, 42,
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
42, 42
}

Definition at line 458 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), yy_try_NUL_trans(), and yyjsonlex().

§ yy_start

int yy_start = 0
static

Definition at line 297 of file json_lex.yy.cpp.

Referenced by yy_get_previous_state(), yy_init_globals(), and yyjsonlex().

§ yyjson_flex_debug

int yyjson_flex_debug = 0

Definition at line 492 of file json_lex.yy.cpp.

Referenced by yyjsonget_debug(), and yyjsonset_debug().

§ yyjsonin

§ yyjsonleng

int yyjsonleng

Definition at line 292 of file json_lex.yy.cpp.

Referenced by yyjsonget_leng().

§ yyjsonlineno

int yyjsonlineno = 1

Definition at line 361 of file json_lex.yy.cpp.

Referenced by yyjsonget_lineno(), and yyjsonset_lineno().

§ yyjsonout

FILE * yyjsonout = NULL

Definition at line 355 of file json_lex.yy.cpp.

Referenced by yy_init_globals(), yyjsonget_out(), yyjsonlex(), and yyjsonset_out().

§ yyjsontext

char * yyjsontext

Definition at line 501 of file json_lex.yy.cpp.

Referenced by yyjsonget_text(), and yyjsonlex().