|
|
|
@@ -42,7 +42,7 @@ typedef uint32_t flex_uint32_t;
|
|
|
|
|
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 char flex_uint8_t;
|
|
|
|
|
typedef unsigned short int flex_uint16_t;
|
|
|
|
|
typedef unsigned int flex_uint32_t;
|
|
|
|
|
#endif /* ! C99 */
|
|
|
|
@@ -148,7 +148,7 @@ extern FILE *zconfin, *zconfout;
|
|
|
|
|
#define EOB_ACT_LAST_MATCH 2
|
|
|
|
|
|
|
|
|
|
#define YY_LESS_LINENO(n)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* Return all but the first "n" matched characters back to the input stream. */
|
|
|
|
|
#define yyless(n) \
|
|
|
|
|
do \
|
|
|
|
@@ -215,7 +215,7 @@ struct yy_buffer_state
|
|
|
|
|
|
|
|
|
|
int yy_bs_lineno; /**< The line count. */
|
|
|
|
|
int yy_bs_column; /**< The column count. */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* Whether to try to fill the input buffer when we reach the
|
|
|
|
|
* end of it.
|
|
|
|
|
*/
|
|
|
|
@@ -833,7 +833,7 @@ extern int zconfwrap (void );
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
static void yyunput (int c,char *buf_ptr );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef yytext_ptr
|
|
|
|
|
static void yy_flex_strncpy (char *,yyconst char *,int );
|
|
|
|
|
#endif
|
|
|
|
@@ -938,7 +938,7 @@ YY_DECL
|
|
|
|
|
register yy_state_type yy_current_state;
|
|
|
|
|
register char *yy_cp, *yy_bp;
|
|
|
|
|
register int yy_act;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int str = 0;
|
|
|
|
|
int ts, i;
|
|
|
|
|
|
|
|
|
@@ -1536,7 +1536,7 @@ static int yy_get_next_buffer (void)
|
|
|
|
|
{
|
|
|
|
|
register yy_state_type yy_current_state;
|
|
|
|
|
register char *yy_cp;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
yy_current_state = (yy_start);
|
|
|
|
|
|
|
|
|
|
for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
|
|
|
|
@@ -1555,7 +1555,7 @@ static int yy_get_next_buffer (void)
|
|
|
|
|
static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
|
|
|
|
|
{
|
|
|
|
|
register int yy_is_jam;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
yy_current_state = yy_nxt[yy_current_state][1];
|
|
|
|
|
yy_is_jam = (yy_current_state <= 0);
|
|
|
|
|
|
|
|
|
@@ -1565,7 +1565,7 @@ static int yy_get_next_buffer (void)
|
|
|
|
|
static void yyunput (int c, register char * yy_bp )
|
|
|
|
|
{
|
|
|
|
|
register char *yy_cp;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
yy_cp = (yy_c_buf_p);
|
|
|
|
|
|
|
|
|
|
/* undo effects of setting up zconftext */
|
|
|
|
@@ -1608,7 +1608,7 @@ static int yy_get_next_buffer (void)
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
int c;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*(yy_c_buf_p) = (yy_hold_char);
|
|
|
|
|
|
|
|
|
|
if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
|
|
|
|
@@ -1675,12 +1675,12 @@ static int yy_get_next_buffer (void)
|
|
|
|
|
|
|
|
|
|
/** Immediately switch to a different input stream.
|
|
|
|
|
* @param input_file A readable stream.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
* @note This function does not reset the start condition to @c INITIAL .
|
|
|
|
|
*/
|
|
|
|
|
void zconfrestart (FILE * input_file )
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ( ! YY_CURRENT_BUFFER ){
|
|
|
|
|
zconfensure_buffer_stack ();
|
|
|
|
|
YY_CURRENT_BUFFER_LVALUE =
|
|
|
|
@@ -1693,11 +1693,11 @@ static int yy_get_next_buffer (void)
|
|
|
|
|
|
|
|
|
|
/** Switch to a different input buffer.
|
|
|
|
|
* @param new_buffer The new input buffer.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
void zconf_switch_to_buffer (YY_BUFFER_STATE new_buffer )
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* TODO. We should be able to replace this entire function body
|
|
|
|
|
* with
|
|
|
|
|
* zconfpop_buffer_state();
|
|
|
|
@@ -1737,13 +1737,13 @@ static void zconf_load_buffer_state (void)
|
|
|
|
|
/** Allocate and initialize an input buffer state.
|
|
|
|
|
* @param file A readable stream.
|
|
|
|
|
* @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
* @return the allocated buffer state.
|
|
|
|
|
*/
|
|
|
|
|
YY_BUFFER_STATE zconf_create_buffer (FILE * file, int size )
|
|
|
|
|
{
|
|
|
|
|
YY_BUFFER_STATE b;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
b = (YY_BUFFER_STATE) zconfalloc(sizeof( struct yy_buffer_state ) );
|
|
|
|
|
if ( ! b )
|
|
|
|
|
YY_FATAL_ERROR( "out of dynamic memory in zconf_create_buffer()" );
|
|
|
|
@@ -1766,11 +1766,11 @@ static void zconf_load_buffer_state (void)
|
|
|
|
|
|
|
|
|
|
/** Destroy the buffer.
|
|
|
|
|
* @param b a buffer created with zconf_create_buffer()
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
void zconf_delete_buffer (YY_BUFFER_STATE b )
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ( ! b )
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
@@ -1791,7 +1791,7 @@ static void zconf_load_buffer_state (void)
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
int oerrno = errno;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
zconf_flush_buffer(b );
|
|
|
|
|
|
|
|
|
|
b->yy_input_file = file;
|
|
|
|
@@ -1807,13 +1807,13 @@ static void zconf_load_buffer_state (void)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
b->yy_is_interactive = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
errno = oerrno;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** Discard all buffered characters. On the next scan, YY_INPUT will be called.
|
|
|
|
|
* @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
void zconf_flush_buffer (YY_BUFFER_STATE b )
|
|
|
|
|
{
|
|
|
|
@@ -1842,7 +1842,7 @@ static void zconf_load_buffer_state (void)
|
|
|
|
|
* the current state. This function will allocate the stack
|
|
|
|
|
* if necessary.
|
|
|
|
|
* @param new_buffer The new state.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
void zconfpush_buffer_state (YY_BUFFER_STATE new_buffer )
|
|
|
|
|
{
|
|
|
|
@@ -1872,7 +1872,7 @@ void zconfpush_buffer_state (YY_BUFFER_STATE new_buffer )
|
|
|
|
|
|
|
|
|
|
/** Removes and deletes the top of the stack, if present.
|
|
|
|
|
* The next element becomes the new top.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
void zconfpop_buffer_state (void)
|
|
|
|
|
{
|
|
|
|
@@ -1896,7 +1896,7 @@ void zconfpop_buffer_state (void)
|
|
|
|
|
static void zconfensure_buffer_stack (void)
|
|
|
|
|
{
|
|
|
|
|
int num_to_alloc;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!(yy_buffer_stack)) {
|
|
|
|
|
|
|
|
|
|
/* First allocation is just for 2 elements, since we don't know if this
|
|
|
|
@@ -1907,9 +1907,9 @@ static void zconfensure_buffer_stack (void)
|
|
|
|
|
(yy_buffer_stack) = (struct yy_buffer_state**)zconfalloc
|
|
|
|
|
(num_to_alloc * sizeof(struct yy_buffer_state*)
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(yy_buffer_stack_max) = num_to_alloc;
|
|
|
|
|
(yy_buffer_stack_top) = 0;
|
|
|
|
|
return;
|
|
|
|
@@ -1935,13 +1935,13 @@ static void zconfensure_buffer_stack (void)
|
|
|
|
|
/** Setup the input buffer state to scan directly from a user-specified character buffer.
|
|
|
|
|
* @param base the character buffer
|
|
|
|
|
* @param size the size in bytes of the character buffer
|
|
|
|
|
*
|
|
|
|
|
* @return the newly allocated buffer state object.
|
|
|
|
|
*
|
|
|
|
|
* @return the newly allocated buffer state object.
|
|
|
|
|
*/
|
|
|
|
|
YY_BUFFER_STATE zconf_scan_buffer (char * base, yy_size_t size )
|
|
|
|
|
{
|
|
|
|
|
YY_BUFFER_STATE b;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ( size < 2 ||
|
|
|
|
|
base[size-2] != YY_END_OF_BUFFER_CHAR ||
|
|
|
|
|
base[size-1] != YY_END_OF_BUFFER_CHAR )
|
|
|
|
@@ -1970,14 +1970,14 @@ YY_BUFFER_STATE zconf_scan_buffer (char * base, yy_size_t size )
|
|
|
|
|
/** Setup the input buffer state to scan a string. The next call to zconflex() will
|
|
|
|
|
* scan from a @e copy of @a str.
|
|
|
|
|
* @param yy_str a NUL-terminated string to scan
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
* @return the newly allocated buffer state object.
|
|
|
|
|
* @note If you want to scan bytes that may contain NUL values, then use
|
|
|
|
|
* zconf_scan_bytes() instead.
|
|
|
|
|
*/
|
|
|
|
|
YY_BUFFER_STATE zconf_scan_string (yyconst char * yy_str )
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return zconf_scan_bytes(yy_str,strlen(yy_str) );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -1985,7 +1985,7 @@ YY_BUFFER_STATE zconf_scan_string (yyconst char * yy_str )
|
|
|
|
|
* scan from a @e copy of @a bytes.
|
|
|
|
|
* @param bytes the byte buffer to scan
|
|
|
|
|
* @param len the number of bytes in the buffer pointed to by @a bytes.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
* @return the newly allocated buffer state object.
|
|
|
|
|
*/
|
|
|
|
|
YY_BUFFER_STATE zconf_scan_bytes (yyconst char * bytes, int len )
|
|
|
|
@@ -1994,7 +1994,7 @@ YY_BUFFER_STATE zconf_scan_bytes (yyconst char * bytes, int len )
|
|
|
|
|
char *buf;
|
|
|
|
|
yy_size_t n;
|
|
|
|
|
int i;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* Get memory for full buffer, including space for trailing EOB's. */
|
|
|
|
|
n = len + 2;
|
|
|
|
|
buf = (char *) zconfalloc(n );
|
|
|
|
@@ -2048,16 +2048,16 @@ static void yy_fatal_error (yyconst char* msg )
|
|
|
|
|
/* Accessor methods (get/set functions) to struct members. */
|
|
|
|
|
|
|
|
|
|
/** Get the current line number.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
int zconfget_lineno (void)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return zconflineno;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** Get the input stream.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
FILE *zconfget_in (void)
|
|
|
|
|
{
|
|
|
|
@@ -2065,7 +2065,7 @@ FILE *zconfget_in (void)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** Get the output stream.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
FILE *zconfget_out (void)
|
|
|
|
|
{
|
|
|
|
@@ -2073,7 +2073,7 @@ FILE *zconfget_out (void)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** Get the length of the current token.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
int zconfget_leng (void)
|
|
|
|
|
{
|
|
|
|
@@ -2081,7 +2081,7 @@ int zconfget_leng (void)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** Get the current token.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
char *zconfget_text (void)
|
|
|
|
@@ -2091,18 +2091,18 @@ char *zconfget_text (void)
|
|
|
|
|
|
|
|
|
|
/** Set the current line number.
|
|
|
|
|
* @param line_number
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
void zconfset_lineno (int line_number )
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
zconflineno = line_number;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** Set the input stream. This does not discard the current
|
|
|
|
|
* input buffer.
|
|
|
|
|
* @param in_str A readable stream.
|
|
|
|
|
*
|
|
|
|
|
*
|
|
|
|
|
* @see zconf_switch_to_buffer
|
|
|
|
|
*/
|
|
|
|
|
void zconfset_in (FILE * in_str )
|
|
|
|
@@ -2128,7 +2128,7 @@ void zconfset_debug (int bdebug )
|
|
|
|
|
/* zconflex_destroy is for both reentrant and non-reentrant scanners. */
|
|
|
|
|
int zconflex_destroy (void)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* Pop the buffer stack, destroying each element. */
|
|
|
|
|
while(YY_CURRENT_BUFFER){
|
|
|
|
|
zconf_delete_buffer(YY_CURRENT_BUFFER );
|
|
|
|
|