#include <stdio.h>#include <string.h>#include <errno.h>#include <stdlib.h>#include <unistd.h>| Classes | |
| struct | yy_buffer_state | 
| struct | yy_trans_info | 
| Defines | |
| #define | YY_INT_ALIGNED short int | 
| #define | FLEX_SCANNER | 
| #define | YY_FLEX_MAJOR_VERSION 2 | 
| #define | YY_FLEX_MINOR_VERSION 5 | 
| #define | YY_FLEX_SUBMINOR_VERSION 33 | 
| #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 | 
| #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 statrestart(statin ) | 
| #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 | EOB_ACT_CONTINUE_SCAN 0 | 
| #define | EOB_ACT_END_OF_FILE 1 | 
| #define | EOB_ACT_LAST_MATCH 2 | 
| #define | YY_LESS_LINENO(n) | 
| #define | yyless(n) | 
| #define | unput(c) yyunput( c, (yytext_ptr) ) | 
| #define | YY_TYPEDEF_YY_SIZE_T | 
| #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 stat_flush_buffer(YY_CURRENT_BUFFER ) | 
| #define | yy_new_buffer stat_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 stattext | 
| #define | YY_DO_BEFORE_ACTION | 
| #define | YY_NUM_RULES 12 | 
| #define | YY_END_OF_BUFFER 13 | 
| #define | REJECT | 
| #define | yymore() yymore_used_but_not_detected | 
| #define | YY_MORE_ADJ 0 | 
| #define | YY_RESTORE_YY_MORE_OFFSET | 
| #define | YY_NO_UNPUT 1 | 
| #define | YY_DECL int statlex (YYSTYPE *yylval) | 
| #define | INITIAL 0 | 
| #define | YY_EXTRA_TYPE void * | 
| #define | YY_READ_BUF_SIZE 8192 | 
| #define | ECHO (void) fwrite( stattext, statleng, 1, statout ) | 
| #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 statlex (void) | 
| #define | YY_USER_ACTION | 
| #define | YY_BREAK 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_state * | YY_BUFFER_STATE | 
| typedef unsigned int | yy_size_t | 
| typedef unsigned char | YY_CHAR | 
| typedef int | yy_state_type | 
| Functions | |
| void | statrestart (FILE *input_file) | 
| Immediately switch to a different input stream. | |
| void | stat_switch_to_buffer (YY_BUFFER_STATE new_buffer) | 
| Switch to a different input buffer. | |
| YY_BUFFER_STATE | stat_create_buffer (FILE *file, int size) | 
| Allocate and initialize an input buffer state. | |
| void | stat_delete_buffer (YY_BUFFER_STATE b) | 
| Destroy the buffer. | |
| void | stat_flush_buffer (YY_BUFFER_STATE b) | 
| Discard all buffered characters. | |
| void | statpush_buffer_state (YY_BUFFER_STATE new_buffer) | 
| Pushes the new state onto the stack. | |
| void | statpop_buffer_state (void) | 
| Removes and deletes the top of the stack, if present. | |
| YY_BUFFER_STATE | stat_scan_buffer (char *base, yy_size_t size) | 
| Setup the input buffer state to scan directly from a user-specified character buffer. | |
| YY_BUFFER_STATE | stat_scan_string (yyconst char *yystr) | 
| Setup the input buffer state to scan a string. | |
| YY_BUFFER_STATE | stat_scan_bytes (yyconst char *yybytes, int _yybytes_len) | 
| Setup the input buffer state to scan the given bytes. | |
| void * | statalloc (yy_size_t) | 
| void * | statrealloc (void *, yy_size_t) | 
| void | statfree (void *) | 
| int | statwrap (void) | 
| int | statlex (void) | 
| if (!(yy_init)) | |
| while (1) | |
| int | isatty (int) | 
| int | statget_lineno (void) | 
| Get the current line number. | |
| FILE * | statget_in (void) | 
| Get the input stream. | |
| FILE * | statget_out (void) | 
| Get the output stream. | |
| int | statget_leng (void) | 
| Get the length of the current token. | |
| char * | statget_text (void) | 
| Get the current token. | |
| void | statset_lineno (int line_number) | 
| Set the current line number. | |
| void | statset_in (FILE *in_str) | 
| Set the input stream. | |
| void | statset_out (FILE *out_str) | 
| int | statget_debug (void) | 
| void | statset_debug (int bdebug) | 
| int | statlex_destroy (void) | 
| void | stat_scanner_set_debug () | 
| Variables | |
| int | statleng | 
| FILE * | statin = (FILE *) 0 | 
| FILE * | statout = (FILE *) 0 | 
| int | statlineno = 1 | 
| char * | stattext | 
| int | stat_flex_debug = 0 | 
| YY_DECL register yy_state_type | yy_current_state | 
| The main scanner function which does all the work. | |
| register char * | yy_cp | 
| register char * | yy_bp | 
| register int | yy_act | 
| #define BEGIN (yy_start) = 1 + 2 * | 
| #define EOB_ACT_CONTINUE_SCAN 0 | 
Referenced by while().
| #define EOB_ACT_END_OF_FILE 1 | 
Referenced by while().
| #define EOB_ACT_LAST_MATCH 2 | 
Referenced by while().
| #define FLEX_SCANNER | 
| #define INITIAL 0 | 
Referenced by while().
| #define INT16_MAX (32767) | 
| #define INT16_MIN (-32767-1) | 
| #define INT32_MAX (2147483647) | 
| #define INT32_MIN (-2147483647-1) | 
| #define INT8_MAX (127) | 
| #define REJECT | 
| #define UINT16_MAX (65535U) | 
| #define UINT32_MAX (4294967295U) | 
| #define UINT8_MAX (255U) | 
| #define unput | ( | c | ) | yyunput( c, (yytext_ptr) ) | 
| #define YY_AT_BOL | ( | ) | (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) | 
| #define YY_BREAK break; | 
Referenced by while().
| #define YY_BUF_SIZE 16384 | 
Referenced by if(), and statrestart().
| #define YY_BUFFER_EOF_PENDING 2 | 
| #define YY_BUFFER_NEW 0 | 
Referenced by stat_flush_buffer(), stat_scan_buffer(), and while().
| #define YY_BUFFER_NORMAL 1 | 
Referenced by while().
| #define YY_CURRENT_BUFFER | 
( (yy_buffer_stack) \
                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
                          : NULL)
Referenced by if(), stat_delete_buffer(), stat_flush_buffer(), stat_switch_to_buffer(), statlex_destroy(), statpop_buffer_state(), statpush_buffer_state(), and statrestart().
| #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] | 
Referenced by if(), stat_delete_buffer(), stat_switch_to_buffer(), statlex_destroy(), statpop_buffer_state(), statpush_buffer_state(), statrestart(), and while().
| #define YY_DECL int statlex (void) | 
| #define YY_DECL int statlex (YYSTYPE *yylval) | 
| #define YY_DECL_IS_OURS 1 | 
| #define YY_DO_BEFORE_ACTION | 
| #define YY_END_OF_BUFFER 13 | 
Referenced by while().
| #define YY_END_OF_BUFFER_CHAR 0 | 
Referenced by stat_flush_buffer(), stat_scan_buffer(), and stat_scan_bytes().
| #define YY_EXIT_FAILURE 2 | 
| #define YY_EXTRA_TYPE void * | 
| #define YY_FATAL_ERROR | ( | msg | ) | yy_fatal_error( msg ) | 
Referenced by stat_create_buffer(), stat_scan_buffer(), stat_scan_bytes(), and while().
| #define YY_FLEX_MAJOR_VERSION 2 | 
| #define YY_FLEX_MINOR_VERSION 5 | 
| #define YY_FLEX_SUBMINOR_VERSION 33 | 
| #define YY_FLUSH_BUFFER stat_flush_buffer(YY_CURRENT_BUFFER ) | 
| #define YY_INPUT | ( | buf, | |||
| result, | |||||
| max_size | ) | 
if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ int c = '*'; \ size_t n; \ for ( n = 0; n < max_size && \ (c = getc( statin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ if ( c == '\n' ) \ buf[n++] = (char) c; \ if ( c == EOF && ferror( statin ) ) \ YY_FATAL_ERROR( "input in flex scanner failed" ); \ result = n; \ } \ else \ { \ errno=0; \ while ( (result = fread(buf, 1, max_size, statin))==0 && ferror(statin)) \ { \ if( errno != EINTR) \ { \ YY_FATAL_ERROR( "input in flex scanner failed" ); \ break; \ } \ errno=0; \ clearerr(statin); \ } \ }\ \
| #define YY_INT_ALIGNED short int | 
| #define YY_LESS_LINENO | ( | n | ) | 
| #define YY_MORE_ADJ 0 | 
Referenced by while().
| #define yy_new_buffer stat_create_buffer | 
| #define YY_NO_UNPUT 1 | 
| #define YY_NULL 0 | 
| #define YY_NUM_RULES 12 | 
| #define YY_READ_BUF_SIZE 8192 | 
| #define YY_RESTORE_YY_MORE_OFFSET | 
Referenced by while().
| #define YY_RULE_SETUP YY_USER_ACTION | 
Referenced by while().
| #define YY_SC_TO_UI | ( | c | ) | ((unsigned int) (unsigned char) c) | 
Referenced by while().
| #define yy_set_bol | ( | at_bol | ) | 
{ \
        if ( ! YY_CURRENT_BUFFER ){\
        statensure_buffer_stack (); \
                YY_CURRENT_BUFFER_LVALUE =    \
            stat_create_buffer(statin,YY_BUF_SIZE ); \
        } \
        YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
        }
| #define yy_set_interactive | ( | is_interactive | ) | 
{ \
        if ( ! YY_CURRENT_BUFFER ){ \
        statensure_buffer_stack (); \
                YY_CURRENT_BUFFER_LVALUE =    \
            stat_create_buffer(statin,YY_BUF_SIZE ); \
        } \
        YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
        }
| #define YY_START (((yy_start) - 1) / 2) | 
Referenced by while().
| #define YY_START_STACK_INCR 25 | 
| #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) | 
Referenced by if().
| #define YY_STATE_EOF | ( | state | ) | (YY_END_OF_BUFFER + state + 1) | 
Referenced by while().
| #define YY_STRUCT_YY_BUFFER_STATE | 
| #define YY_TYPEDEF_YY_BUFFER_STATE | 
| #define YY_TYPEDEF_YY_SIZE_T | 
| #define YY_USER_ACTION | 
| #define yyconst | 
| #define yyless | ( | n | ) | 
do \ { \ /* Undo effects of setting up stattext. */ \ int yyless_macro_arg = (n); \ YY_LESS_LINENO(yyless_macro_arg);\ stattext[statleng] = (yy_hold_char); \ (yy_c_buf_p) = stattext + yyless_macro_arg; \ (yy_hold_char) = *(yy_c_buf_p); \ *(yy_c_buf_p) = '\0'; \ statleng = yyless_macro_arg; \ } \ while ( 0 )
| #define yyless | ( | n | ) | 
do \ { \ /* Undo effects of setting up stattext. */ \ int 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 stattext again */ \ } \ while ( 0 )
| #define yymore | ( | ) | yymore_used_but_not_detected | 
| #define YYSTATE YY_START | 
| #define YYTABLES_NAME "yytables" | 
| typedef short int flex_int16_t | 
| typedef int flex_int32_t | 
| typedef signed char flex_int8_t | 
| typedef unsigned short int flex_uint16_t | 
| typedef unsigned int flex_uint32_t | 
| typedef unsigned char flex_uint8_t | 
| typedef struct yy_buffer_state* YY_BUFFER_STATE | 
| typedef unsigned char YY_CHAR | 
| typedef unsigned int yy_size_t | 
| typedef int yy_state_type | 
| if | ( | ! | yy_init | ) | 
References stat_create_buffer(), statalloc(), statin, statout, YY_BUF_SIZE, YY_CURRENT_BUFFER, YY_CURRENT_BUFFER_LVALUE, and YY_STATE_BUF_SIZE.
| int isatty | ( | int | ) | 
| YY_BUFFER_STATE stat_create_buffer | ( | FILE * | file, | |
| int | size | |||
| ) | 
Allocate and initialize an input buffer state.
| file | A readable stream. | |
| size | The character buffer size in bytes. When in doubt, use YY_BUF_SIZE. | 
References statalloc(), yy_buffer_state::yy_buf_size, yy_buffer_state::yy_ch_buf, YY_FATAL_ERROR, and yy_buffer_state::yy_is_our_buffer.
Referenced by if(), and statrestart().
| void stat_delete_buffer | ( | YY_BUFFER_STATE | b | ) | 
Destroy the buffer.
| b | a buffer created with stat_create_buffer() | 
References statfree(), yy_buffer_state::yy_ch_buf, YY_CURRENT_BUFFER, YY_CURRENT_BUFFER_LVALUE, and yy_buffer_state::yy_is_our_buffer.
Referenced by statlex_destroy(), and statpop_buffer_state().
| void stat_flush_buffer | ( | YY_BUFFER_STATE | b | ) | 
Discard all buffered characters.
On the next scan, YY_INPUT will be called.
| b | the buffer state to be flushed, usually YY_CURRENT_BUFFER. | 
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, and yy_buffer_state::yy_n_chars.
| YY_BUFFER_STATE stat_scan_buffer | ( | char * | base, | |
| yy_size_t | size | |||
| ) | 
Setup the input buffer state to scan directly from a user-specified character buffer.
| base | the character buffer | |
| size | the size in bytes of the character buffer | 
References stat_switch_to_buffer(), statalloc(), 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, and yy_buffer_state::yy_n_chars.
Referenced by stat_scan_bytes().
| YY_BUFFER_STATE stat_scan_bytes | ( | yyconst char * | yybytes, | |
| int | _yybytes_len | |||
| ) | 
Setup the input buffer state to scan the given bytes.
The next call to statlex() will scan from a copy of bytes.
| bytes | the byte buffer to scan | |
| len | the number of bytes in the buffer pointed to by bytes. | 
References stat_scan_buffer(), statalloc(), YY_END_OF_BUFFER_CHAR, YY_FATAL_ERROR, and yy_buffer_state::yy_is_our_buffer.
Referenced by stat_scan_string().
| YY_BUFFER_STATE stat_scan_string | ( | yyconst char * | yystr | ) | 
Setup the input buffer state to scan a string.
The next call to statlex() will scan from a copy of str.
| str | a NUL-terminated string to scan | 
References stat_scan_bytes().
| void stat_scanner_set_debug | ( | void | ) | 
| void stat_switch_to_buffer | ( | YY_BUFFER_STATE | new_buffer | ) | 
Switch to a different input buffer.
| new_buffer | The new input buffer. | 
References YY_CURRENT_BUFFER, and YY_CURRENT_BUFFER_LVALUE.
Referenced by stat_scan_buffer().
| void * statalloc | ( | yy_size_t | size | ) | 
Referenced by if(), stat_create_buffer(), stat_scan_buffer(), and stat_scan_bytes().
| void statfree | ( | void * | ptr | ) | 
Referenced by stat_delete_buffer(), and statlex_destroy().
| int statget_debug | ( | void | ) | 
| FILE* statget_in | ( | void | ) | 
Get the input stream.
References statin.
| int statget_leng | ( | void | ) | 
Get the length of the current token.
References statleng.
| int statget_lineno | ( | void | ) | 
Get the current line number.
| FILE* statget_out | ( | void | ) | 
Get the output stream.
References statout.
| char* statget_text | ( | void | ) | 
Get the current token.
| int statlex | ( | void | ) | 
| int statlex_destroy | ( | void | ) | 
References stat_delete_buffer(), statfree(), statpop_buffer_state(), YY_CURRENT_BUFFER, and YY_CURRENT_BUFFER_LVALUE.
| void statpop_buffer_state | ( | void | ) | 
Removes and deletes the top of the stack, if present.
The next element becomes the new top.
References stat_delete_buffer(), YY_CURRENT_BUFFER, and YY_CURRENT_BUFFER_LVALUE.
Referenced by statlex_destroy().
| void statpush_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.
| new_buffer | The new state. | 
References YY_CURRENT_BUFFER, and YY_CURRENT_BUFFER_LVALUE.
| void * statrealloc | ( | void * | ptr, | |
| yy_size_t | size | |||
| ) | 
| void statrestart | ( | FILE * | input_file | ) | 
Immediately switch to a different input stream.
| input_file | A readable stream. | 
INITIAL . References stat_create_buffer(), statin, YY_BUF_SIZE, YY_CURRENT_BUFFER, and YY_CURRENT_BUFFER_LVALUE.
| void statset_debug | ( | int | bdebug | ) | 
| void statset_in | ( | FILE * | in_str | ) | 
Set the input stream.
This does not discard the current input buffer.
| in_str | A readable stream. | 
References statin.
| void statset_lineno | ( | int | line_number | ) | 
Set the current line number.
| line_number | 
| void statset_out | ( | FILE * | out_str | ) | 
References statout.
| int statwrap | ( | void | ) | 
Referenced by while().
| while | ( | 1 | ) | 
References _symrec< data_type >::dvalue, ECHO, EOB_ACT_CONTINUE_SCAN, EOB_ACT_END_OF_FILE, EOB_ACT_LAST_MATCH, INITIAL, _symrec< data_type >::ivalue, REJECT, RETURN_ERROR, statin, statwrap(), TOK_DOUBLE, TOK_INTEGER, TOK_OP_POWER, TOK_PLANES, TOK_VOLUME, _symrec< data_type >::type, _symrec< data_type >::vdata, YY_BREAK, YY_BUFFER_NEW, YY_BUFFER_NORMAL, YY_CURRENT_BUFFER_LVALUE, YY_DO_BEFORE_ACTION, YY_END_OF_BUFFER, YY_FATAL_ERROR, YY_MORE_ADJ, YY_NEW_FILE, YY_RESTORE_YY_MORE_OFFSET, YY_RULE_SETUP, YY_SC_TO_UI, YY_START, YY_STATE_EOF, YYLEX_PARAM, yylval, yyterminate, and yytext_ptr.
| int stat_flex_debug = 0 | 
| FILE * statin = (FILE *) 0 | 
Referenced by if(), statget_in(), statrestart(), statset_in(), and while().
| int statleng | 
Referenced by statget_leng().
| int statlineno = 1 | 
| FILE * statout = (FILE *) 0 | 
Referenced by if(), statget_out(), and statset_out().
| char * stattext | 
| register int yy_act | 
| register char * yy_bp | 
| register char* yy_cp | 
| YY_DECL register yy_state_type yy_current_state | 
The main scanner function which does all the work.