Vcsn  2.4
Be Rational
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
scan.cc File Reference
#include <lib/vcsn/rat/parse.hh>
#include <iostream>
#include <errno.h>
#include <cstdlib>
#include <cstdio>
#include <cstring>
#include <lib/vcsn/rat/scan.hh>
#include <cassert>
#include <stack>
#include <string>
#include <boost/lexical_cast.hpp>
#include <vcsn/misc/escape.hh>
#include <vcsn/misc/regex.hh>
#include <lib/vcsn/rat/driver.hh>
#include <unistd.h>
Include dependency graph for scan.cc:

Go to the source code of this file.

Classes

struct  yy_buffer_state
 
struct  yy_trans_info
 

Namespaces

 YY_FLEX_NAMESPACE_BEGIN
 

Macros

#define yyterminate()   return parser::make_END(loc)
 
#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   39
 
#define FLEX_BETA
 
#define yyFlexLexer   yyFlexLexer
 
#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
 
#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   yyrestart( yyin )
 
#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_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 FLEX_DEBUG
 
#define yytext_ptr   yytext
 
#define YY_INTERACTIVE
 
#define YY_DO_BEFORE_ACTION
 
#define YY_NUM_RULES   58
 
#define YY_END_OF_BUFFER   59
 
#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 LINE(Line)
 
#define YY_USER_ACTION   loc.columns(yyleng);
 
#define TOK(Token)   parser::make_ ## Token (loc)
 
#define INITIAL   0
 
#define SC_CLASS   1
 
#define SC_CONTEXT   2
 
#define SC_EXPONENT   3
 
#define SC_WEIGHT   4
 
#define YY_EXTRA_TYPE   void *
 
#define YY_READ_BUF_SIZE   8192
 
#define ECHO   LexerOutput( yytext, yyleng )
 
#define YY_INPUT(buf, result, max_size)
 
#define YY_START_STACK_INCR   25
 
#define YY_FATAL_ERROR(msg)   LexerError( msg )
 
#define YY_DECL_IS_OURS   1
 
#define YY_DECL   int yyFlexLexer::yylex()
 
#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_stateYY_BUFFER_STATE
 
typedef size_t yy_size_t
 
typedef unsigned char YY_CHAR
 

Functions

irange_type YY_FLEX_NAMESPACE_BEGIN::quantifier (driver &d, const location &loc, const std::string &s)
 
void * yyalloc (yy_size_t size)
 
void * yyrealloc (void *ptr, yy_size_t size)
 
void yyfree (void *ptr)
 

Variables

yy_size_t yyleng
 
static flex_int16_t yy_accept [125]
 
static flex_int32_t yy_ec [256]
 
static flex_int32_t yy_meta [60]
 
static flex_int16_t yy_base [134]
 
static flex_int16_t yy_def [134]
 
static flex_int16_t yy_nxt [313]
 
static flex_int16_t yy_chk [313]
 
static flex_int16_t yy_rule_linenum [58]
 

Macro Definition Documentation

#define BEGIN   (yy_start) = 1 + 2 *

Definition at line 197 of file scan.cc.

#define ECHO   LexerOutput( yytext, yyleng )

Definition at line 745 of file scan.cc.

#define EOB_ACT_CONTINUE_SCAN   0

Definition at line 250 of file scan.cc.

#define EOB_ACT_END_OF_FILE   1

Definition at line 251 of file scan.cc.

#define EOB_ACT_LAST_MATCH   2

Definition at line 252 of file scan.cc.

#define FLEX_BETA

Definition at line 43 of file scan.cc.

#define FLEX_DEBUG

Definition at line 407 of file scan.cc.

#define FLEX_SCANNER

Definition at line 38 of file scan.cc.

#define FLEXINT_H

Definition at line 76 of file scan.cc.

#define INITIAL   0

Definition at line 673 of file scan.cc.

#define INT16_MAX   (32767)

Definition at line 118 of file scan.cc.

#define INT16_MIN   (-32767-1)

Definition at line 109 of file scan.cc.

#define INT32_MAX   (2147483647)

Definition at line 121 of file scan.cc.

#define INT32_MIN   (-2147483647-1)

Definition at line 112 of file scan.cc.

#define INT8_MAX   (127)

Definition at line 115 of file scan.cc.

#define INT8_MIN   (-128)

Definition at line 106 of file scan.cc.

#define LINE (   Line)
Value:
do { \
loc.end.column = 1; \
loc.lines(Line); \
} while (false)

Definition at line 653 of file scan.cc.

#define REJECT   reject_used_but_not_detected

Definition at line 632 of file scan.cc.

#define SC_CLASS   1

Definition at line 674 of file scan.cc.

#define SC_CONTEXT   2

Definition at line 675 of file scan.cc.

#define SC_EXPONENT   3

Definition at line 676 of file scan.cc.

#define SC_WEIGHT   4

Definition at line 677 of file scan.cc.

#define TOK (   Token)    parser::make_ ## Token (loc)

Definition at line 662 of file scan.cc.

#define UINT16_MAX   (65535U)

Definition at line 127 of file scan.cc.

#define UINT32_MAX   (4294967295U)

Definition at line 130 of file scan.cc.

#define UINT8_MAX   (255U)

Definition at line 124 of file scan.cc.

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

Definition at line 271 of file scan.cc.

#define YY_AT_BOL ( )    (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)

Definition at line 402 of file scan.cc.

#define YY_BREAK   break;

Definition at line 819 of file scan.cc.

#define YY_BUF_SIZE   16384

Definition at line 223 of file scan.cc.

#define YY_BUFFER_EOF_PENDING   2

Definition at line 338 of file scan.cc.

#define YY_BUFFER_NEW   0

Definition at line 326 of file scan.cc.

#define YY_BUFFER_NORMAL   1

Definition at line 327 of file scan.cc.

#define YY_CURRENT_BUFFER
Value:
( (yy_buffer_stack) \
? (yy_buffer_stack)[(yy_buffer_stack_top)] \
: NULL)

Definition at line 358 of file scan.cc.

#define YY_CURRENT_BUFFER_LVALUE   (yy_buffer_stack)[(yy_buffer_stack_top)]

Definition at line 365 of file scan.cc.

#define YY_DECL   int yyFlexLexer::yylex()

Definition at line 806 of file scan.cc.

#define YY_DECL_IS_OURS   1

Definition at line 802 of file scan.cc.

#define YY_DO_BEFORE_ACTION
Value:
(yytext_ptr) = yy_bp; \
/* %% [2.0] code to fiddle yytext and yyleng for yymore() goes here \ */\
yyleng = (size_t) (yy_cp - yy_bp); \
(yy_hold_char) = *yy_cp; \
*yy_cp = '\0'; \
/* %% [3.0] code to copy yytext_ptr to yytext[] goes here, if %array \ */\
(yy_c_buf_p) = yy_cp;
#define yytext_ptr
Definition: scan.cc:411
yy_size_t yyleng

Definition at line 424 of file scan.cc.

#define YY_END_OF_BUFFER   59

Definition at line 435 of file scan.cc.

#define YY_END_OF_BUFFER_CHAR   0

Definition at line 212 of file scan.cc.

#define YY_EXIT_FAILURE   2

Definition at line 2273 of file scan.cc.

#define YY_EXTRA_TYPE   void *

Definition at line 692 of file scan.cc.

#define YY_FATAL_ERROR (   msg)    LexerError( msg )

Definition at line 781 of file scan.cc.

#define YY_FLEX_MAJOR_VERSION   2

Definition at line 39 of file scan.cc.

#define YY_FLEX_MINOR_VERSION   5

Definition at line 40 of file scan.cc.

#define YY_FLEX_SUBMINOR_VERSION   39

Definition at line 41 of file scan.cc.

#define YY_INPUT (   buf,
  result,
  max_size 
)
Value:
/* %% [5.0] fread()/read() definition of YY_INPUT goes here unless we're doing C++ \ */\
\
/* %if-c++-only C++ definition \ */\
if ( (result = LexerInput( (char *) buf, max_size )) < 0 ) \
YY_FATAL_ERROR( "input in flex scanner failed" );
#define YY_FATAL_ERROR(msg)
Definition: scan.cc:781
if(exp.max==-1)
Definition: multiply.hh:381

Definition at line 753 of file scan.cc.

#define YY_INT_ALIGNED   short int

Definition at line 26 of file scan.cc.

#define YY_INTERACTIVE

Definition at line 412 of file scan.cc.

#define YY_LESS_LINENO (   n)

Definition at line 254 of file scan.cc.

#define YY_LINENO_REWIND_TO (   ptr)

Definition at line 255 of file scan.cc.

#define YY_MORE_ADJ   0

Definition at line 634 of file scan.cc.

#define yy_new_buffer   yy_create_buffer

Definition at line 380 of file scan.cc.

#define YY_NEW_FILE   yyrestart( yyin )

Definition at line 210 of file scan.cc.

#define YY_NO_INPUT   1

Definition at line 637 of file scan.cc.

#define YY_NULL   0

Definition at line 173 of file scan.cc.

#define YY_NUM_RULES   58

Definition at line 434 of file scan.cc.

#define YY_READ_BUF_SIZE   8192

Definition at line 736 of file scan.cc.

#define YY_RESTORE_YY_MORE_OFFSET

Definition at line 635 of file scan.cc.

#define YY_RULE_SETUP   YY_USER_ACTION

Definition at line 823 of file scan.cc.

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

Definition at line 183 of file scan.cc.

#define yy_set_bol (   at_bol)
Value:
{ \
yyensure_buffer_stack (); \
yy_create_buffer( yyin, YY_BUF_SIZE ); \
} \
YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
}
#define YY_CURRENT_BUFFER_LVALUE
Definition: scan.cc:365
#define YY_BUF_SIZE
Definition: scan.cc:223
if(exp.max==-1)
Definition: multiply.hh:381
#define YY_CURRENT_BUFFER
Definition: scan.cc:358

Definition at line 392 of file scan.cc.

#define yy_set_interactive (   is_interactive)
Value:
{ \
yyensure_buffer_stack (); \
yy_create_buffer( yyin, YY_BUF_SIZE ); \
} \
YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
}
#define YY_CURRENT_BUFFER_LVALUE
Definition: scan.cc:365
#define YY_BUF_SIZE
Definition: scan.cc:223
if(exp.max==-1)
Definition: multiply.hh:381
#define YY_CURRENT_BUFFER
Definition: scan.cc:358

Definition at line 382 of file scan.cc.

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

Definition at line 203 of file scan.cc.

#define YY_START_STACK_INCR   25

Definition at line 773 of file scan.cc.

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

Definition at line 229 of file scan.cc.

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

Definition at line 207 of file scan.cc.

#define YY_STRUCT_YY_BUFFER_STATE

Definition at line 274 of file scan.cc.

#define YY_TYPEDEF_YY_BUFFER_STATE

Definition at line 232 of file scan.cc.

#define YY_TYPEDEF_YY_SIZE_T

Definition at line 237 of file scan.cc.

#define YY_USER_ACTION   loc.columns(yyleng);

Definition at line 659 of file scan.cc.

#define yyconst

Definition at line 167 of file scan.cc.

#define yyFlexLexer   yyFlexLexer

Definition at line 53 of file scan.cc.

#define yyless (   n)
Value:
do \
{ \
/* Undo effects of setting up yytext. */ \
int yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
*yy_cp = (yy_hold_char); \
(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: scan.cc:634
#define YY_RESTORE_YY_MORE_OFFSET
Definition: scan.cc:635
#define YY_LESS_LINENO(n)
Definition: scan.cc:254
#define YY_DO_BEFORE_ACTION
Definition: scan.cc:424

Definition at line 2289 of file scan.cc.

#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_hold_char) = *(yy_c_buf_p); \
*(yy_c_buf_p) = '\0'; \
yyleng = yyless_macro_arg; \
} \
while ( 0 )
#define YY_LESS_LINENO(n)
Definition: scan.cc:254
yy_size_t yyleng

Definition at line 2289 of file scan.cc.

#define yymore ( )    yymore_used_but_not_detected

Definition at line 633 of file scan.cc.

#define YYSTATE   YY_START

Definition at line 204 of file scan.cc.

#define YYTABLES_NAME   "yytables"

Definition at line 2373 of file scan.cc.

#define yyterminate ( )    return parser::make_END(loc)

Definition at line 20 of file scan.cc.

#define yytext_ptr   yytext

Definition at line 411 of file scan.cc.

Typedef Documentation

typedef short int flex_int16_t

Definition at line 98 of file scan.cc.

typedef int flex_int32_t

Definition at line 99 of file scan.cc.

typedef signed char flex_int8_t

Definition at line 97 of file scan.cc.

typedef unsigned short int flex_uint16_t

Definition at line 101 of file scan.cc.

typedef unsigned int flex_uint32_t

Definition at line 102 of file scan.cc.

typedef unsigned char flex_uint8_t

Definition at line 100 of file scan.cc.

Definition at line 233 of file scan.cc.

typedef unsigned char YY_CHAR

Definition at line 409 of file scan.cc.

typedef size_t yy_size_t

Definition at line 238 of file scan.cc.

Function Documentation

void* yyalloc ( yy_size_t  size)

Definition at line 2349 of file scan.cc.

void yyfree ( void *  ptr)

Definition at line 2366 of file scan.cc.

void* yyrealloc ( void *  ptr,
yy_size_t  size 
)

Definition at line 2354 of file scan.cc.

Variable Documentation

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

Definition at line 443 of file scan.cc.

flex_int16_t yy_base[134]
static
Initial value:
=
{ 0,
0, 0, 58, 0, 73, 86, 7, 32, 54, 77,
252, 253, 249, 247, 253, 253, 230, 206, 209, 253,
253, 253, 253, 253, 253, 214, 253, 253, 253, 73,
126, 253, 53, 171, 58, 80, 253, 253, 86, 253,
253, 0, 200, 253, 253, 253, 73, 164, 0, 253,
253, 158, 198, 196, 253, 84, 97, 107, 253, 253,
181, 253, 116, 253, 160, 157, 108, 156, 137, 155,
154, 153, 151, 150, 253, 253, 253, 253, 145, 131,
114, 88, 126, 0, 156, 253, 253, 253, 125, 0,
87, 253, 133, 144, 154, 139, 253, 118, 165, 253,
253, 167, 253, 253, 253, 253, 253, 253, 253, 253,
253, 253, 253, 253, 253, 253, 253, 253, 253, 69,
253, 253, 253, 253, 204, 209, 214, 219, 224, 229,
234, 238, 243
}

Definition at line 503 of file scan.cc.

flex_int16_t yy_chk[313]
static

Definition at line 580 of file scan.cc.

flex_int16_t yy_def[134]
static
Initial value:
=
{ 0,
124, 1, 1, 3, 125, 125, 126, 126, 127, 127,
124, 124, 124, 124, 124, 124, 124, 128, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124, 124, 129,
124, 124, 124, 124, 124, 124, 124, 124, 129, 124,
124, 130, 124, 124, 124, 124, 124, 124, 131, 124,
124, 124, 124, 124, 124, 128, 132, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124, 124, 124,
124, 124, 124, 130, 124, 124, 124, 124, 124, 131,
124, 124, 128, 128, 132, 133, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124, 124, 133,
124, 124, 124, 0, 124, 124, 124, 124, 124, 124,
124, 124, 124
}

Definition at line 522 of file scan.cc.

flex_int32_t yy_ec[256]
static

Definition at line 461 of file scan.cc.

flex_int32_t yy_meta[60]
static
Initial value:
=
{ 0,
1, 1, 2, 1, 1, 1, 1, 3, 4, 4,
1, 1, 1, 1, 1, 1, 1, 1, 1, 5,
5, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 5
}

Definition at line 493 of file scan.cc.

flex_int16_t yy_nxt[313]
static

Definition at line 541 of file scan.cc.

flex_int16_t yy_rule_linenum[58]
static
Initial value:
=
{ 0,
62, 63, 65, 66, 67, 68, 69, 70, 71, 72,
73, 74, 75, 76, 77, 78, 81, 82, 83, 84,
89, 98, 99, 100, 101, 104, 105, 108, 111, 114,
115, 119, 123, 124, 134, 138, 139, 140, 141, 146,
150, 163, 164, 173, 174, 175, 176, 177, 178, 179,
180, 181, 182, 183, 197, 202, 216
}

Definition at line 619 of file scan.cc.

yy_size_t yyleng