PIPS
lexer.c File Reference
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <stdlib.h>
#include "genC.h"
#include "linear.h"
#include "ri.h"
#include "resources.h"
#include "ri-util.h"
#include "sac.h"
#include "patterns.h"
#include <unistd.h>
+ Include dependency graph for lexer.c:

Go to the source code of this file.

Data Structures

struct  yy_buffer_state
 
struct  yy_trans_info
 This struct is not used in this scanner, but its presence is necessary. More...
 

Macros

#define YY_INT_ALIGNED   short int
 
#define yy_create_buffer   patterns_yy_create_buffer
 A lexical scanner generated by flex. More...
 
#define yy_delete_buffer   patterns_yy_delete_buffer
 
#define yy_scan_buffer   patterns_yy_scan_buffer
 
#define yy_scan_string   patterns_yy_scan_string
 
#define yy_scan_bytes   patterns_yy_scan_bytes
 
#define yy_init_buffer   patterns_yy_init_buffer
 
#define yy_flush_buffer   patterns_yy_flush_buffer
 
#define yy_load_buffer_state   patterns_yy_load_buffer_state
 
#define yy_switch_to_buffer   patterns_yy_switch_to_buffer
 
#define yypush_buffer_state   patterns_yypush_buffer_state
 
#define yypop_buffer_state   patterns_yypop_buffer_state
 
#define yyensure_buffer_stack   patterns_yyensure_buffer_stack
 
#define yy_flex_debug   patterns_yy_flex_debug
 
#define yyin   patterns_yyin
 
#define yyleng   patterns_yyleng
 
#define yylex   patterns_yylex
 
#define yylineno   patterns_yylineno
 
#define yyout   patterns_yyout
 
#define yyrestart   patterns_yyrestart
 
#define yytext   patterns_yytext
 
#define yywrap(void)   patterns_yywrap
 Macros after this point can all be overridden by user definitions in section 1. More...
 
#define yyalloc   patterns_yyalloc
 
#define yyrealloc   patterns_yyrealloc
 
#define yyfree   patterns_yyfree
 
#define FLEX_SCANNER
 
#define YY_FLEX_MAJOR_VERSION   2
 
#define YY_FLEX_MINOR_VERSION   6
 
#define YY_FLEX_SUBMINOR_VERSION   4
 
#define FLEX_BETA
 
#define patterns_yy_create_buffer_ALREADY_DEFINED
 
#define patterns_yy_delete_buffer_ALREADY_DEFINED
 
#define patterns_yy_scan_buffer_ALREADY_DEFINED
 
#define patterns_yy_scan_string_ALREADY_DEFINED
 
#define patterns_yy_scan_bytes_ALREADY_DEFINED
 
#define patterns_yy_init_buffer_ALREADY_DEFINED
 
#define patterns_yy_flush_buffer_ALREADY_DEFINED
 
#define patterns_yy_load_buffer_state_ALREADY_DEFINED
 
#define patterns_yy_switch_to_buffer_ALREADY_DEFINED
 
#define patterns_yypush_buffer_state_ALREADY_DEFINED
 
#define patterns_yypop_buffer_state_ALREADY_DEFINED
 
#define patterns_yyensure_buffer_stack_ALREADY_DEFINED
 
#define patterns_yylex_ALREADY_DEFINED
 
#define patterns_yyrestart_ALREADY_DEFINED
 
#define yylex_init   patterns_yylex_init
 
#define yylex_init_extra   patterns_yylex_init_extra
 
#define yylex_destroy(void)   patterns_yylex_destroy
 Accessor methods to globals. More...
 
#define yyget_debug   patterns_yyget_debug
 
#define yyset_debug   patterns_yyset_debug
 
#define yyget_extra   patterns_yyget_extra
 
#define yyset_extra   patterns_yyset_extra
 
#define yyget_in   patterns_yyget_in
 
#define yyset_in   patterns_yyset_in
 
#define yyget_out   patterns_yyget_out
 
#define yyset_out   patterns_yyset_out
 
#define yyget_leng   patterns_yyget_leng
 
#define yyget_text   patterns_yyget_text
 
#define yyget_lineno   patterns_yyget_lineno
 
#define yyset_lineno   patterns_yyset_lineno
 
#define patterns_yywrap_ALREADY_DEFINED
 
#define patterns_yyalloc_ALREADY_DEFINED
 
#define patterns_yyrealloc_ALREADY_DEFINED
 
#define patterns_yyfree_ALREADY_DEFINED
 
#define patterns_yytext_ALREADY_DEFINED
 
#define patterns_yyleng_ALREADY_DEFINED
 
#define patterns_yyin_ALREADY_DEFINED
 
#define patterns_yyout_ALREADY_DEFINED
 
#define patterns_yy_flex_debug_ALREADY_DEFINED
 
#define patterns_yylineno_ALREADY_DEFINED
 
#define FLEXINT_H
 First, we deal with platform-specific or compiler-specific issues. More...
 
#define INT8_MIN   (-128)
 Limits of integral types. More...
 
#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 SIZE_MAX   (~(size_t)0)
 
#define yyconst   const
 ! C99 More...
 
#define yynoreturn
 
#define YY_NULL   0
 Returned upon end-of-file. More...
 
#define YY_SC_TO_UI(c)   ((YY_CHAR) (c))
 Promotes a possibly negative, possibly signed char to an integer in range [0..255] for use as an array index. More...
 
#define BEGIN   (yy_start) = 1 + 2 *
 Enter a start condition. More...
 
#define YY_START   (((yy_start) - 1) / 2)
 Translate the current start state into a value that can be later handed to BEGIN to return to the state. More...
 
#define YYSTATE   YY_START
 
#define YY_STATE_EOF(state)   (YY_END_OF_BUFFER + state + 1)
 Action number for EOF rule of a given start state. More...
 
#define YY_NEW_FILE   yyrestart( yyin )
 Special action meaning "start processing a new file". More...
 
#define YY_END_OF_BUFFER_CHAR   0
 
#define YY_BUF_SIZE   16384
 Size of default input buffer. More...
 
#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
 ia64 More...
 
#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)
 Return all but the first "n" matched characters back to the input stream. More...
 
#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
 When an EOF's been seen but there's still some text to process then we mark the buffer as YY_EOF_PENDING, to indicate that we shouldn't try reading from the input source any more. More...
 
#define YY_CURRENT_BUFFER
 We provide macros for accessing buffer states in case in the future we want to put the buffer states in a more general "scanner state". More...
 
#define YY_CURRENT_BUFFER_LVALUE   (yy_buffer_stack)[(yy_buffer_stack_top)]
 Same as previous macro, but useful when we know that the buffer stack is not NULL or when we need an lvalue. More...
 
#define YY_FLUSH_BUFFER   yy_flush_buffer( YY_CURRENT_BUFFER )
 
#define yy_new_buffer   yy_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 yytext_ptr   yytext
 
#define YY_DO_BEFORE_ACTION
 Done after the current pattern has been matched and before the corresponding action - sets up yytext. More...
 
#define YY_NUM_RULES   56
 
#define YY_END_OF_BUFFER   57
 
#define REJECT   reject_used_but_not_detected
 The intent behind this definition is that it'll catch any uses of REJECT which flex missed. More...
 
#define yymore()   yymore_used_but_not_detected
 
#define YY_MORE_ADJ   0
 
#define YY_RESTORE_YY_MORE_OFFSET
 
#define YY_NO_INPUT   1
 
#define INITIAL   0
 
#define YY_EXTRA_TYPE   void *
 Special case for "unistd.h", since it is non-ANSI. More...
 
#define YY_READ_BUF_SIZE   8192
 Amount of stuff to slurp up with each read. More...
 
#define ECHO   do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
 ia64 More...
 
#define YY_INPUT(buf, result, max_size)
 Gets input and stuffs it into "buf". More...
 
#define yyterminate()   return YY_NULL
 No semi-colon after return; correct usage is to write "yyterminate();" - we don't want an extra ';' after the "return" because that will cause some compilers to complain about unreachable statements. More...
 
#define YY_START_STACK_INCR   25
 Number of entries by which start-condition stack grows. More...
 
#define YY_FATAL_ERROR(msg)   yy_fatal_error( msg )
 Report a fatal error. More...
 
#define YY_DECL_IS_OURS   1
 end tables serialization structures and prototypes More...
 
#define YY_DECL   int yylex (void)
 
#define YY_USER_ACTION
 !YY_DECL More...
 
#define YY_BREAK   /**INTED*/break;
 Code executed at the end of each rule. More...
 
#define YY_RULE_SETUP    YY_USER_ACTION
 
#define YY_EXIT_FAILURE   2
 
#define yyless(n)
 Return all but the first "n" matched characters back to the input stream. More...
 
#define YYTABLES_NAME   "yytables"
 

Typedefs

typedef signed char flex_int8_t
 C99 systems have <inttypes.h>. More...
 
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 flex_uint8_t YY_CHAR
 Begin user sect3. More...
 
typedef int yy_state_type
 

Functions

void yyrestart (FILE *input_file)
 
void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer)
 
YY_BUFFER_STATE yy_create_buffer (FILE *file, int size)
 
void yy_delete_buffer (YY_BUFFER_STATE b)
 
void yy_flush_buffer (YY_BUFFER_STATE b)
 
void yypush_buffer_state (YY_BUFFER_STATE new_buffer)
 
static void yy_init_buffer (YY_BUFFER_STATE b, FILE *file)
 
YY_BUFFER_STATE yy_scan_buffer (char *base, yy_size_t size)
 
YY_BUFFER_STATE yy_scan_string (const char *yy_str)
 
YY_BUFFER_STATE yy_scan_bytes (const char *bytes, int len)
 
void * yyalloc (yy_size_t)
 
void * yyrealloc (void *, yy_size_t)
 
void yyfree (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 yynoreturn yy_fatal_error (const char *msg)
 
static int yy_init_globals (void)
 
void yyset_debug (int debug_flag)
 
void yyset_extra (YY_EXTRA_TYPE user_defined)
 
void yyset_in (FILE *_in_str)
 
void yyset_out (FILE *_out_str)
 
void yyset_lineno (int _line_number)
 
 if (!(yy_init))
 

Variables

int yyleng
 number of characters read into yy_ch_buf More...
 
FILE * yyin
 
FILE * yyout
 
static size_t yy_buffer_stack_top = 0
 !YY_STRUCT_YY_BUFFER_STATE 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
 yy_hold_char holds the character lost when yytext is formed. More...
 
static int yy_n_chars
 
static char * yy_c_buf_p = NULL
 Points to current character in buffer. More...
 
static int yy_init = 0
 
static int yy_start = 0
 whether we need to initialize More...
 
static int yy_did_buffer_switch_on_eof
 start state number More...
 
int yylineno = 1
 Begin user sect3. More...
 
char * yytext
 
static const flex_int16_t yy_nxt [][128]
 
static const flex_int16_t yy_accept [191]
 
static yy_state_type yy_last_accepting_state
 
static char * yy_last_accepting_cpos
 
static const yy_state_type yy_NUL_trans [191]
 
int yy_flex_debug = 0
 
 YY_DECL
 The main scanner function which does all the work. More...
 
char * yy_cp
 
char * yy_bp
 
int yy_act
 

Macro Definition Documentation

◆ BEGIN

#define BEGIN   (yy_start) = 1 + 2 *

Enter a start condition.

This macro really ought to take a parameter, but we do it the disgusting crufty way forced on us by the ()-less definition of BEGIN.

Definition at line 376 of file lexer.c.

◆ ECHO

#define ECHO   do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)

ia64

Copy whatever the last rule matched to the standard output. This used to be an fputs(), but since the string might contain NUL's, we now use fwrite().

Definition at line 4131 of file lexer.c.

◆ EOB_ACT_CONTINUE_SCAN

#define EOB_ACT_CONTINUE_SCAN   0

Definition at line 420 of file lexer.c.

◆ EOB_ACT_END_OF_FILE

#define EOB_ACT_END_OF_FILE   1

Definition at line 421 of file lexer.c.

◆ EOB_ACT_LAST_MATCH

#define EOB_ACT_LAST_MATCH   2

Definition at line 422 of file lexer.c.

◆ FLEX_BETA

#define FLEX_BETA

Definition at line 38 of file lexer.c.

◆ FLEX_SCANNER

#define FLEX_SCANNER

Definition at line 33 of file lexer.c.

◆ FLEXINT_H

#define FLEXINT_H

First, we deal with platform-specific or compiler-specific issues.

begin standard C headers. end standard C headers. flex integer type definitions

Definition at line 288 of file lexer.c.

◆ INITIAL

#define INITIAL   0

Definition at line 4038 of file lexer.c.

◆ INT16_MAX

#define INT16_MAX   (32767)

Definition at line 330 of file lexer.c.

◆ INT16_MIN

#define INT16_MIN   (-32767-1)

Definition at line 321 of file lexer.c.

◆ INT32_MAX

#define INT32_MAX   (2147483647)

Definition at line 333 of file lexer.c.

◆ INT32_MIN

#define INT32_MIN   (-2147483647-1)

Definition at line 324 of file lexer.c.

◆ INT8_MAX

#define INT8_MAX   (127)

Definition at line 327 of file lexer.c.

◆ INT8_MIN

#define INT8_MIN   (-128)

Limits of integral types.

Definition at line 318 of file lexer.c.

◆ patterns_yy_create_buffer_ALREADY_DEFINED

#define patterns_yy_create_buffer_ALREADY_DEFINED

Definition at line 42 of file lexer.c.

◆ patterns_yy_delete_buffer_ALREADY_DEFINED

#define patterns_yy_delete_buffer_ALREADY_DEFINED

Definition at line 48 of file lexer.c.

◆ patterns_yy_flex_debug_ALREADY_DEFINED

#define patterns_yy_flex_debug_ALREADY_DEFINED

Definition at line 264 of file lexer.c.

◆ patterns_yy_flush_buffer_ALREADY_DEFINED

#define patterns_yy_flush_buffer_ALREADY_DEFINED

Definition at line 78 of file lexer.c.

◆ patterns_yy_init_buffer_ALREADY_DEFINED

#define patterns_yy_init_buffer_ALREADY_DEFINED

Definition at line 72 of file lexer.c.

◆ patterns_yy_load_buffer_state_ALREADY_DEFINED

#define patterns_yy_load_buffer_state_ALREADY_DEFINED

Definition at line 84 of file lexer.c.

◆ patterns_yy_scan_buffer_ALREADY_DEFINED

#define patterns_yy_scan_buffer_ALREADY_DEFINED

Definition at line 54 of file lexer.c.

◆ patterns_yy_scan_bytes_ALREADY_DEFINED

#define patterns_yy_scan_bytes_ALREADY_DEFINED

Definition at line 66 of file lexer.c.

◆ patterns_yy_scan_string_ALREADY_DEFINED

#define patterns_yy_scan_string_ALREADY_DEFINED

Definition at line 60 of file lexer.c.

◆ patterns_yy_switch_to_buffer_ALREADY_DEFINED

#define patterns_yy_switch_to_buffer_ALREADY_DEFINED

Definition at line 90 of file lexer.c.

◆ patterns_yyalloc_ALREADY_DEFINED

#define patterns_yyalloc_ALREADY_DEFINED

Definition at line 222 of file lexer.c.

◆ patterns_yyensure_buffer_stack_ALREADY_DEFINED

#define patterns_yyensure_buffer_stack_ALREADY_DEFINED

Definition at line 108 of file lexer.c.

◆ patterns_yyfree_ALREADY_DEFINED

#define patterns_yyfree_ALREADY_DEFINED

Definition at line 234 of file lexer.c.

◆ patterns_yyin_ALREADY_DEFINED

#define patterns_yyin_ALREADY_DEFINED

Definition at line 252 of file lexer.c.

◆ patterns_yyleng_ALREADY_DEFINED

#define patterns_yyleng_ALREADY_DEFINED

Definition at line 246 of file lexer.c.

◆ patterns_yylex_ALREADY_DEFINED

#define patterns_yylex_ALREADY_DEFINED

Definition at line 114 of file lexer.c.

◆ patterns_yylineno_ALREADY_DEFINED

#define patterns_yylineno_ALREADY_DEFINED

Definition at line 270 of file lexer.c.

◆ patterns_yyout_ALREADY_DEFINED

#define patterns_yyout_ALREADY_DEFINED

Definition at line 258 of file lexer.c.

◆ patterns_yypop_buffer_state_ALREADY_DEFINED

#define patterns_yypop_buffer_state_ALREADY_DEFINED

Definition at line 102 of file lexer.c.

◆ patterns_yypush_buffer_state_ALREADY_DEFINED

#define patterns_yypush_buffer_state_ALREADY_DEFINED

Definition at line 96 of file lexer.c.

◆ patterns_yyrealloc_ALREADY_DEFINED

#define patterns_yyrealloc_ALREADY_DEFINED

Definition at line 228 of file lexer.c.

◆ patterns_yyrestart_ALREADY_DEFINED

#define patterns_yyrestart_ALREADY_DEFINED

Definition at line 120 of file lexer.c.

◆ patterns_yytext_ALREADY_DEFINED

#define patterns_yytext_ALREADY_DEFINED

Definition at line 240 of file lexer.c.

◆ patterns_yywrap_ALREADY_DEFINED

#define patterns_yywrap_ALREADY_DEFINED

Definition at line 216 of file lexer.c.

◆ REJECT

#define REJECT   reject_used_but_not_detected

The intent behind this definition is that it'll catch any uses of REJECT which flex missed.

Definition at line 3987 of file lexer.c.

◆ SIZE_MAX

#define SIZE_MAX   (~(size_t)0)

Definition at line 346 of file lexer.c.

◆ UINT16_MAX

#define UINT16_MAX   (65535U)

Definition at line 339 of file lexer.c.

◆ UINT32_MAX

#define UINT32_MAX   (4294967295U)

Definition at line 342 of file lexer.c.

◆ UINT8_MAX

#define UINT8_MAX   (255U)

Definition at line 336 of file lexer.c.

◆ unput

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

Definition at line 440 of file lexer.c.

◆ YY_AT_BOL

#define YY_AT_BOL ( )    (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)

Definition at line 581 of file lexer.c.

◆ YY_BREAK

#define YY_BREAK   /**INTED*/break;

Code executed at the end of each rule.

Definition at line 4210 of file lexer.c.

◆ YY_BUF_SIZE

#define YY_BUF_SIZE   16384

Size of default input buffer.

Definition at line 398 of file lexer.c.

◆ YY_BUFFER_EOF_PENDING

#define YY_BUFFER_EOF_PENDING   2

When an EOF's been seen but there's still some text to process then we mark the buffer as YY_EOF_PENDING, to indicate that we shouldn't try reading from the input source any more.

We might still have a bunch of tokens to match, though, because of possible backing-up.

When we actually see the EOF, we change the status to "new" (via yyrestart()), so that the user can continue scanning by just pointing yyin at a new input file.

Definition at line 502 of file lexer.c.

◆ YY_BUFFER_NEW

#define YY_BUFFER_NEW   0

Definition at line 490 of file lexer.c.

◆ YY_BUFFER_NORMAL

#define YY_BUFFER_NORMAL   1

Definition at line 491 of file lexer.c.

◆ yy_create_buffer

#define yy_create_buffer   patterns_yy_create_buffer

A lexical scanner generated by flex.

Definition at line 8 of file lexer.c.

◆ YY_CURRENT_BUFFER

#define YY_CURRENT_BUFFER
Value:
: NULL)
static YY_BUFFER_STATE * yy_buffer_stack
Stack as an array.
Definition: lexer.c:510
static size_t yy_buffer_stack_top
!YY_STRUCT_YY_BUFFER_STATE
Definition: lexer.c:508

We provide macros for accessing buffer states in case in the future we want to put the buffer states in a more general "scanner state".

Returns the top of the stack, or NULL.

Definition at line 518 of file lexer.c.

◆ YY_CURRENT_BUFFER_LVALUE

#define YY_CURRENT_BUFFER_LVALUE   (yy_buffer_stack)[(yy_buffer_stack_top)]

Same as previous macro, but useful when we know that the buffer stack is not NULL or when we need an lvalue.

For internal use only.

Definition at line 524 of file lexer.c.

◆ YY_DECL

#define YY_DECL   int yylex (void)

Definition at line 4198 of file lexer.c.

◆ YY_DECL_IS_OURS

#define YY_DECL_IS_OURS   1

end tables serialization structures and prototypes

Default declaration of generated scanner - a define so the user can easily add parameters.

Definition at line 4194 of file lexer.c.

◆ yy_delete_buffer

#define yy_delete_buffer   patterns_yy_delete_buffer

Definition at line 9 of file lexer.c.

◆ YY_DO_BEFORE_ACTION

#define YY_DO_BEFORE_ACTION
Value:
yyleng = (int) (yy_cp - yy_bp); \
*yy_cp = '\0'; \
void const char const char const int
char * yy_cp
Definition: lexer.c:976
char * yy_bp
Definition: lexer.c:976
static char yy_hold_char
yy_hold_char holds the character lost when yytext is formed.
Definition: lexer.c:527
#define yytext_ptr
Definition: lexer.c:597
static char * yy_c_buf_p
Points to current character in buffer.
Definition: lexer.c:532

Done after the current pattern has been matched and before the corresponding action - sets up yytext.

Definition at line 3915 of file lexer.c.

◆ YY_END_OF_BUFFER

#define YY_END_OF_BUFFER   57

Definition at line 3922 of file lexer.c.

◆ YY_END_OF_BUFFER_CHAR

#define YY_END_OF_BUFFER_CHAR   0

Definition at line 387 of file lexer.c.

◆ YY_EXIT_FAILURE

#define YY_EXIT_FAILURE   2

◆ YY_EXTRA_TYPE

#define YY_EXTRA_TYPE   void *

Special case for "unistd.h", since it is non-ANSI.

We include it way down here because we want the user's section 1 to have been scanned first. The user has a chance to override it with an option.

Definition at line 4049 of file lexer.c.

◆ YY_FATAL_ERROR

#define YY_FATAL_ERROR (   msg)    yy_fatal_error( msg )

Report a fatal error.

Definition at line 4185 of file lexer.c.

◆ yy_flex_debug

#define yy_flex_debug   patterns_yy_flex_debug

Definition at line 20 of file lexer.c.

◆ YY_FLEX_MAJOR_VERSION

#define YY_FLEX_MAJOR_VERSION   2

Definition at line 34 of file lexer.c.

◆ YY_FLEX_MINOR_VERSION

#define YY_FLEX_MINOR_VERSION   6

Definition at line 35 of file lexer.c.

◆ YY_FLEX_SUBMINOR_VERSION

#define YY_FLEX_SUBMINOR_VERSION   4

Definition at line 36 of file lexer.c.

◆ yy_flush_buffer

#define yy_flush_buffer   patterns_yy_flush_buffer

Definition at line 14 of file lexer.c.

◆ YY_FLUSH_BUFFER

#define YY_FLUSH_BUFFER   yy_flush_buffer( YY_CURRENT_BUFFER )

Definition at line 552 of file lexer.c.

◆ yy_init_buffer

#define yy_init_buffer   patterns_yy_init_buffer

Definition at line 13 of file lexer.c.

◆ 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( yyin )) != EOF && c != '\n'; ++n ) \
buf[n] = (char) c; \
if ( c == '\n' ) \
buf[n++] = (char) c; \
if ( c == EOF && ferror( yyin ) ) \
YY_FATAL_ERROR( "input in flex scanner failed" ); \
result = n; \
} \
else \
{ \
errno=0; \
while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
{ \
if( errno != EINTR) \
{ \
YY_FATAL_ERROR( "input in flex scanner failed" ); \
break; \
} \
errno=0; \
clearerr(yyin); \
} \
}\
\
size_t yy_size_t
Definition: genread_lex.c:413
#define YY_CURRENT_BUFFER_LVALUE
Same as previous macro, but useful when we know that the buffer stack is not NULL or when we need an ...
Definition: lexer.c:524
#define yyin
Definition: lexer.c:21
static char buf[BSZ]
Definition: split_file.c:157

Gets input and stuffs it into "buf".

number of characters read, or YY_NULL, is returned in "result".

Definition at line 4138 of file lexer.c.

◆ YY_INT_ALIGNED

#define YY_INT_ALIGNED   short int

Definition at line 4 of file lexer.c.

◆ YY_LESS_LINENO

#define YY_LESS_LINENO (   n)

Definition at line 424 of file lexer.c.

◆ YY_LINENO_REWIND_TO

#define YY_LINENO_REWIND_TO (   ptr)

Definition at line 425 of file lexer.c.

◆ yy_load_buffer_state

#define yy_load_buffer_state (   void)    patterns_yy_load_buffer_state

Definition at line 15 of file lexer.c.

Referenced by if().

◆ YY_MORE_ADJ

#define YY_MORE_ADJ   0

Definition at line 3989 of file lexer.c.

◆ yy_new_buffer

#define yy_new_buffer   yy_create_buffer

Definition at line 562 of file lexer.c.

◆ YY_NEW_FILE

#define YY_NEW_FILE   yyrestart( yyin )

Special action meaning "start processing a new file".

Definition at line 386 of file lexer.c.

◆ YY_NO_INPUT

#define YY_NO_INPUT   1

Definition at line 4016 of file lexer.c.

◆ YY_NULL

#define YY_NULL   0

Returned upon end-of-file.

Definition at line 365 of file lexer.c.

◆ YY_NUM_RULES

#define YY_NUM_RULES   56

Definition at line 3921 of file lexer.c.

◆ YY_READ_BUF_SIZE

#define YY_READ_BUF_SIZE   8192

Amount of stuff to slurp up with each read.

Definition at line 4122 of file lexer.c.

◆ YY_RESTORE_YY_MORE_OFFSET

#define YY_RESTORE_YY_MORE_OFFSET

Definition at line 3990 of file lexer.c.

◆ YY_RULE_SETUP

#define YY_RULE_SETUP    YY_USER_ACTION

Definition at line 4213 of file lexer.c.

◆ YY_SC_TO_UI

#define YY_SC_TO_UI (   c)    ((YY_CHAR) (c))

Promotes a possibly negative, possibly signed char to an integer in range [0..255] for use as an array index.

Definition at line 370 of file lexer.c.

◆ yy_scan_buffer

#define yy_scan_buffer   patterns_yy_scan_buffer

Definition at line 10 of file lexer.c.

◆ yy_scan_bytes

#define yy_scan_bytes   patterns_yy_scan_bytes

Definition at line 12 of file lexer.c.

◆ yy_scan_string

#define yy_scan_string   patterns_yy_scan_string

Definition at line 11 of file lexer.c.

◆ yy_set_bol

#define yy_set_bol (   at_bol)
Value:
{ \
if ( ! YY_CURRENT_BUFFER ){\
yyensure_buffer_stack (); \
YY_CURRENT_BUFFER_LVALUE = \
yy_create_buffer( yyin, YY_BUF_SIZE ); \
} \
YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
}
#define YY_CURRENT_BUFFER
We provide macros for accessing buffer states in case in the future we want to put the buffer states ...
Definition: lexer.c:518
#define YY_BUF_SIZE
Size of default input buffer.
Definition: lexer.c:398

Definition at line 572 of file lexer.c.

◆ yy_set_interactive

#define yy_set_interactive (   is_interactive)
Value:
{ \
if ( ! YY_CURRENT_BUFFER ){ \
yyensure_buffer_stack (); \
YY_CURRENT_BUFFER_LVALUE = \
yy_create_buffer( yyin, YY_BUF_SIZE ); \
} \
YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
}

Definition at line 563 of file lexer.c.

◆ YY_START

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

Translate the current start state into a value that can be later handed to BEGIN to return to the state.

The YYSTATE alias is for lex compatibility.

Definition at line 381 of file lexer.c.

◆ YY_START_STACK_INCR

#define YY_START_STACK_INCR   25

Number of entries by which start-condition stack grows.

Definition at line 4180 of file lexer.c.

◆ YY_STATE_BUF_SIZE

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

ia64

The state buf must be large enough to hold one state per character in the main buffer.

Definition at line 404 of file lexer.c.

◆ YY_STATE_EOF

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

Action number for EOF rule of a given start state.

Definition at line 384 of file lexer.c.

◆ YY_STRUCT_YY_BUFFER_STATE

#define YY_STRUCT_YY_BUFFER_STATE

Definition at line 443 of file lexer.c.

◆ yy_switch_to_buffer

#define yy_switch_to_buffer   patterns_yy_switch_to_buffer

Definition at line 16 of file lexer.c.

◆ YY_TYPEDEF_YY_BUFFER_STATE

#define YY_TYPEDEF_YY_BUFFER_STATE

Definition at line 407 of file lexer.c.

◆ YY_TYPEDEF_YY_SIZE_T

#define YY_TYPEDEF_YY_SIZE_T

Definition at line 412 of file lexer.c.

◆ YY_USER_ACTION

#define YY_USER_ACTION

!YY_DECL

Code executed at the beginning of each rule, after yytext and yyleng have been set up.

Definition at line 4205 of file lexer.c.

◆ yyalloc

#define yyalloc   patterns_yyalloc

Definition at line 29 of file lexer.c.

◆ yyconst

#define yyconst   const

! C99

! FLEXINT_H begin standard C++ headers. TODO: this is always defined, so inline it

Definition at line 356 of file lexer.c.

◆ yyensure_buffer_stack

#define yyensure_buffer_stack (   void)    patterns_yyensure_buffer_stack

Definition at line 19 of file lexer.c.

Referenced by if().

◆ yyfree

#define yyfree   patterns_yyfree

Definition at line 31 of file lexer.c.

◆ yyget_debug

#define yyget_debug (   void)    patterns_yyget_debug

Definition at line 146 of file lexer.c.

◆ yyget_extra

#define yyget_extra (   void)    patterns_yyget_extra

Definition at line 158 of file lexer.c.

◆ yyget_in

#define yyget_in (   void)    patterns_yyget_in

Definition at line 170 of file lexer.c.

◆ yyget_leng

#define yyget_leng (   void)    patterns_yyget_leng

Definition at line 194 of file lexer.c.

◆ yyget_lineno

#define yyget_lineno (   void)    patterns_yyget_lineno

Definition at line 206 of file lexer.c.

◆ yyget_out

#define yyget_out (   void)    patterns_yyget_out

Definition at line 182 of file lexer.c.

◆ yyget_text

#define yyget_text (   void)    patterns_yyget_text

Definition at line 200 of file lexer.c.

◆ yyin

#define yyin   patterns_yyin

Definition at line 21 of file lexer.c.

◆ yyleng

#define yyleng   patterns_yyleng

Definition at line 22 of file lexer.c.

◆ yyless [1/2]

#define yyless (   n)
Value:
do \
{ \
/**Undo effects of setting up yytext. */ \
int yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
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 yytext again */ \
} \
while ( 0 )
#define YY_MORE_ADJ
Definition: lexer.c:3989

Return all but the first "n" matched characters back to the input stream.

Definition at line 428 of file lexer.c.

◆ yyless [2/2]

#define yyless (   n)
Value:
do \
{ \
/**Undo effects of setting up yytext. */ \
int yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
yytext[yyleng] = (yy_hold_char); \
(yy_c_buf_p) = yytext + yyless_macro_arg; \
*(yy_c_buf_p) = '\0'; \
yyleng = yyless_macro_arg; \
} \
while ( 0 )
#define yytext
Definition: lexer.c:27
#define yyleng
Definition: lexer.c:22

Return all but the first "n" matched characters back to the input stream.

Definition at line 428 of file lexer.c.

◆ yylex

#define yylex (   void)    patterns_yylex

Definition at line 23 of file lexer.c.

◆ yylex_destroy

#define yylex_destroy (   void)    patterns_yylex_destroy

Accessor methods to globals.

These are made visible to non-reentrant scanners for convenience.

Definition at line 140 of file lexer.c.

◆ yylex_init

#define yylex_init   patterns_yylex_init

Definition at line 128 of file lexer.c.

◆ yylex_init_extra

#define yylex_init_extra   patterns_yylex_init_extra

Definition at line 134 of file lexer.c.

◆ yylineno

#define yylineno   patterns_yylineno

Definition at line 24 of file lexer.c.

◆ yymore

#define yymore ( )    yymore_used_but_not_detected

Definition at line 3988 of file lexer.c.

◆ yynoreturn

#define yynoreturn

Definition at line 361 of file lexer.c.

◆ yyout

#define yyout   patterns_yyout

Definition at line 25 of file lexer.c.

◆ yypop_buffer_state

#define yypop_buffer_state (   void)    patterns_yypop_buffer_state

Definition at line 18 of file lexer.c.

◆ yypush_buffer_state

#define yypush_buffer_state   patterns_yypush_buffer_state

Definition at line 17 of file lexer.c.

◆ yyrealloc

#define yyrealloc   patterns_yyrealloc

Definition at line 30 of file lexer.c.

◆ yyrestart

#define yyrestart   patterns_yyrestart

Definition at line 26 of file lexer.c.

◆ yyset_debug

#define yyset_debug   patterns_yyset_debug

Definition at line 152 of file lexer.c.

◆ yyset_extra

#define yyset_extra   patterns_yyset_extra

Definition at line 164 of file lexer.c.

◆ yyset_in

#define yyset_in   patterns_yyset_in

Definition at line 176 of file lexer.c.

◆ yyset_lineno

#define yyset_lineno   patterns_yyset_lineno

Definition at line 212 of file lexer.c.

◆ yyset_out

#define yyset_out   patterns_yyset_out

Definition at line 188 of file lexer.c.

◆ YYSTATE

#define YYSTATE   YY_START

Definition at line 382 of file lexer.c.

◆ YYTABLES_NAME

#define YYTABLES_NAME   "yytables"

◆ yyterminate

#define yyterminate ( )    return YY_NULL

No semi-colon after return; correct usage is to write "yyterminate();" - we don't want an extra ';' after the "return" because that will cause some compilers to complain about unreachable statements.

Definition at line 4175 of file lexer.c.

◆ yytext

#define yytext   patterns_yytext

Definition at line 27 of file lexer.c.

◆ yytext_ptr

#define yytext_ptr   yytext

Definition at line 597 of file lexer.c.

◆ yywrap

#define yywrap (   void)    patterns_yywrap

Macros after this point can all be overridden by user definitions in section 1.

Definition at line 28 of file lexer.c.

Typedef Documentation

◆ flex_int16_t

typedef short int flex_int16_t

Definition at line 310 of file lexer.c.

◆ flex_int32_t

typedef int flex_int32_t

Definition at line 311 of file lexer.c.

◆ flex_int8_t

typedef signed char flex_int8_t

C99 systems have <inttypes.h>.

Non-C99 systems may or may not.

Definition at line 309 of file lexer.c.

◆ flex_uint16_t

typedef unsigned short int flex_uint16_t

Definition at line 313 of file lexer.c.

◆ flex_uint32_t

typedef unsigned int flex_uint32_t

Definition at line 314 of file lexer.c.

◆ flex_uint8_t

typedef unsigned char flex_uint8_t

Definition at line 312 of file lexer.c.

◆ YY_BUFFER_STATE

Definition at line 408 of file lexer.c.

◆ YY_CHAR

Begin user sect3.

Definition at line 584 of file lexer.c.

◆ yy_size_t

typedef size_t yy_size_t

Definition at line 413 of file lexer.c.

◆ yy_state_type

typedef int yy_state_type

Definition at line 588 of file lexer.c.

Function Documentation

◆ if()

if ( yy_init)

first start state

Definition at line 4224 of file lexer.c.

4225  {
4226  (yy_init) = 1;
4227 
4228 #ifdef YY_USER_INIT
4229  YY_USER_INIT;
4230 #endif
4231 
4232  if ( ! (yy_start) )
4233  (yy_start) = 1; /* first start state */
4234 
4235  if ( ! yyin )
4236  yyin = stdin;
4237 
4238  if ( ! yyout )
4239  yyout = stdout;
4240 
4241  if ( ! YY_CURRENT_BUFFER ) {
4245  }
4246 
4248  }
#define yy_load_buffer_state
Definition: lexer.c:15
static int yy_start
whether we need to initialize
Definition: lexer.c:534
#define yyout
Definition: lexer.c:25
#define yyensure_buffer_stack
Definition: lexer.c:19
#define yy_create_buffer
A lexical scanner generated by flex.
Definition: lexer.c:8
static int yy_init
Definition: lexer.c:533

References YY_BUF_SIZE, yy_create_buffer, YY_CURRENT_BUFFER, YY_CURRENT_BUFFER_LVALUE, yy_init, yy_load_buffer_state, yy_start, yyensure_buffer_stack, yyin, and yyout.

◆ yy_create_buffer()

YY_BUFFER_STATE yy_create_buffer ( FILE *  file,
int  size 
)

◆ yy_delete_buffer()

void yy_delete_buffer ( YY_BUFFER_STATE  b)

◆ yy_fatal_error()

static void yynoreturn yy_fatal_error ( const char *  msg)
static

◆ yy_flush_buffer()

void yy_flush_buffer ( YY_BUFFER_STATE  b)

◆ yy_get_next_buffer()

static int yy_get_next_buffer ( void  )
static

◆ yy_get_previous_state()

static yy_state_type yy_get_previous_state ( void  )
static

◆ yy_init_buffer()

static void yy_init_buffer ( YY_BUFFER_STATE  b,
FILE *  file 
)
static

◆ yy_init_globals()

static int yy_init_globals ( void  )
static

◆ yy_scan_buffer()

YY_BUFFER_STATE yy_scan_buffer ( char *  base,
yy_size_t  size 
)

◆ yy_scan_bytes()

YY_BUFFER_STATE yy_scan_bytes ( const char *  bytes,
int  len 
)

◆ yy_scan_string()

YY_BUFFER_STATE yy_scan_string ( const char *  yy_str)

◆ yy_switch_to_buffer()

void yy_switch_to_buffer ( YY_BUFFER_STATE  new_buffer)

◆ yy_try_NUL_trans()

static yy_state_type yy_try_NUL_trans ( yy_state_type  current_state)
static

◆ yyalloc()

void* yyalloc ( yy_size_t  )

◆ yyfree()

void yyfree ( void *  )

◆ yypush_buffer_state()

void yypush_buffer_state ( YY_BUFFER_STATE  new_buffer)

◆ yyrealloc()

void* yyrealloc ( void *  ,
yy_size_t   
)

◆ yyrestart()

void yyrestart ( FILE *  input_file)

◆ yyset_debug()

void yyset_debug ( int  debug_flag)

◆ yyset_extra()

void yyset_extra ( YY_EXTRA_TYPE  user_defined)

◆ yyset_in()

void yyset_in ( FILE *  _in_str)

◆ yyset_lineno()

void yyset_lineno ( int  _line_number)

◆ yyset_out()

void yyset_out ( FILE *  _out_str)

Variable Documentation

◆ yy_accept

const flex_int16_t yy_accept[191]
static
Initial value:
=
{ 0,
0, 0, 57, 55, 52, 53, 38, 54, 21, 36,
16, 13, 14, 50, 18, 47, 12, 45, 49, 51,
51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
51, 51, 51, 51, 51, 20, 55, 37, 39, 54,
50, 46, 48, 44, 51, 51, 51, 51, 51, 51,
51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
0, 32, 51, 51, 51, 51, 23, 51, 51, 51,
51, 51, 51, 51, 51, 51, 51, 51, 51, 28,
22, 51, 51, 51, 51, 51, 24, 51, 51, 51,
0, 51, 51, 35, 51, 34, 51, 51, 51, 51,
51, 51, 51, 51, 33, 51, 51, 29, 25, 51,
51, 51, 51, 51, 51, 42, 51, 0, 30, 26,
51, 51, 51, 51, 31, 27, 40, 43, 51, 51,
51, 51, 51, 51, 51, 51, 51, 51, 0, 51,
9, 7, 5, 3, 51, 51, 51, 2, 51, 8,
6, 4, 51, 0, 51, 19, 10, 51, 51, 51,
0, 11, 51, 51, 51, 0, 41, 1, 51, 0,
51, 0, 15, 0, 0, 0, 0, 0, 0, 17
}

Definition at line 3930 of file lexer.c.

◆ yy_act

int yy_act

Definition at line 4222 of file lexer.c.

◆ yy_bp

char * yy_bp

Definition at line 4221 of file lexer.c.

◆ yy_buffer_stack

YY_BUFFER_STATE* yy_buffer_stack = NULL
static

Stack as an array.

Definition at line 510 of file lexer.c.

◆ yy_buffer_stack_max

size_t yy_buffer_stack_max = 0
static

capacity of stack.

Definition at line 509 of file lexer.c.

◆ yy_buffer_stack_top

size_t yy_buffer_stack_top = 0
static

!YY_STRUCT_YY_BUFFER_STATE

Stack of input buffers. index of top of stack.

Definition at line 508 of file lexer.c.

◆ yy_c_buf_p

char* yy_c_buf_p = NULL
static

Points to current character in buffer.

Definition at line 532 of file lexer.c.

◆ yy_cp

char* yy_cp

Definition at line 4221 of file lexer.c.

◆ YY_DECL

YY_DECL
Initial value:
{
yy_state_type yy_current_state
int yy_state_type
Definition: genread_lex.c:588

The main scanner function which does all the work.

Definition at line 4218 of file lexer.c.

◆ yy_did_buffer_switch_on_eof

int yy_did_buffer_switch_on_eof
static

start state number

Flag which is used to allow yywrap()'s to do buffer switches instead of setting up a fresh yyin. A bit of a hack ...

Definition at line 539 of file lexer.c.

◆ yy_flex_debug

int yy_flex_debug = 0

Definition at line 3982 of file lexer.c.

◆ yy_hold_char

char yy_hold_char
static

yy_hold_char holds the character lost when yytext is formed.

Definition at line 527 of file lexer.c.

◆ yy_init

int yy_init = 0
static

Definition at line 533 of file lexer.c.

Referenced by if().

◆ yy_last_accepting_cpos

char* yy_last_accepting_cpos
static

Definition at line 3955 of file lexer.c.

◆ yy_last_accepting_state

yy_state_type yy_last_accepting_state
static

Definition at line 3954 of file lexer.c.

◆ yy_n_chars

int yy_n_chars
static

Definition at line 528 of file lexer.c.

◆ yy_NUL_trans

const yy_state_type yy_NUL_trans[191]
static
Initial value:
=
{ 0,
4, 4, 0, 0, 0, 0, 0, 40, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 40,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0
}

Definition at line 3957 of file lexer.c.

◆ yy_nxt

const flex_int16_t yy_nxt[][128]
static

Definition at line 599 of file lexer.c.

◆ yy_start

int yy_start = 0
static

whether we need to initialize

Definition at line 534 of file lexer.c.

Referenced by if().

◆ yyin

FILE* yyin

Definition at line 586 of file lexer.c.

◆ yyleng

int yyleng

number of characters read into yy_ch_buf

Definition at line 529 of file lexer.c.

◆ yylineno

int yylineno = 1

Begin user sect3.

Definition at line 591 of file lexer.c.

◆ yyout

FILE * yyout

Definition at line 418 of file lexer.c.

◆ yytext

char* yytext

Definition at line 3991 of file lexer.c.