Index

C++ Code Documentation

vrml::Lexer

Children: vrml::Parser

File: BASE/vrml/Lexer.H

public:
  • Lexer();
  • virtual ~Lexer();
  • typedef char unsigned UCHAR;
  • typedef char CHAR;
protected:
  • typedef double Real;
  • struct LvalStruct;
  • type;
  • base::String _string;
  • bool _bool;
  • int _int;
  • Real _float;
  • Real _floatp[4];
  • base::vector<Real> _floatv;
  • base::vector<int> _intv;
  • base::vector<base::String> _stringv;
  • };
  • int _lineno;
  • int expectToken;
  • int expectCoordIndex;
  • bool parsing_mf;
  • base::String tmpString;
  • virtual void error( char const message[] ) = 0;
  • io::Istream *_stream;
  • void _initialize();
  • void _deinitialize();
  • enum ParserKeys;
  • enum StartConditions;
  • int lex( LvalStruct &lval );
  • void fatal_error( const CHAR msg[] );
private:
  • static char const *format;
  • static char const *format2;
  • char *skip_ws( char * );
  • struct BufferState;
  • BufferState *current_buffer;
  • int leng;
  • UCHAR hold_char;
  • size_t n_chars;
  • CHAR *c_buf_p;
  • int init;
  • int start;
  • int did_buffer_switch_on_eof;
  • int last_accepting_state;
  • CHAR *last_accepting_cpos;
  • int start_stack_ptr;
  • int start_stack_depth;
  • int *start_stack;
  • void *flex_alloc( size_t );
  • void *flex_realloc( void *, size_t );
  • void flex_free( void * );
  • int get_previous_state();
  • int try_NUL_trans( int current_state );
  • int get_next_buffer();
  • void push_state( int new_state );
  • void pop_state();
  • int top_state();
  • void switch_to_buffer( BufferState *new_buffer );
  • void load_buffer_state();
  • BufferState *create_buffer( int size );
  • void delete_buffer( BufferState * b );
  • void init_buffer( BufferState * b );
  • void flush_buffer( BufferState * b );
  • void restart();
  • void unput( int c, CHAR *bp );
  • void input( CHAR *buf, size_t &result, size_t max_size);
  • int input();
  • int wrap();
  • void less( int, CHAR *bp, CHAR *cp );
  • void DO_BEFORE_ACTION( CHAR *bp, CHAR *cp );
  • BufferState *scan_buffer( CHAR *base, size_t size );
  • BufferState *scan_string( const CHAR *str );
  • BufferState *scan_bytes( const CHAR *bytes, int len );
  • static const short int accept[];
  • static const int ec[];
  • static const int meta[];
  • static const short int base[];
  • static const short int def[];
  • static const short int nxt[];
  • static const short int chk[];
  • static int const BUFFER_NEW;
  • static int const BUFFER_NORMAL;
  • static int const BUFFER_EOF_PENDING;
  • static int const END_OF_BUFFER_CHAR;
  • static int const BUF_SIZE;
  • static int const EOB_ACT_CONTINUE_SCAN;
  • static int const EOB_ACT_END_OF_FILE;
  • static int const EOB_ACT_LAST_MATCH;
  • static int const READ_BUF_SIZE;
  • static int const NUM_RULES;
  • static int const END_OF_BUFFER;
  • static int const MORE_ADJ;
  • static int const INITIAL;
  • static int const START_STACK_INCR;
  • static int const EXIT_FAILURE_;
  • static int const CONSTANT1;
  • static int const CONSTANT2;
  • inline int BEGIN(int x);
  • inline int START();
  • inline int STATE_EOF(int state);
  • inline int AT_BOL();
  • CHAR *text;
  • Lexer( Lexer const & );
    disabled
  • Lexer &operator=( Lexer const & );


vrml::Lexer GANG