ct_common  1.0.1
Common library for combinatorial testing
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Friends
lexer Class Reference

#include <ct_lexer.hpp>

List of all members.

Public Types

typedef QUEX_TYPE_TOKEN token_type
typedef QUEX_TYPE_TOKEN_ID token_id_type
typedef QUEX_TYPE_CHARACTER char_type

Public Member Functions

 QUEX_NAME (TokenQueue) _token_queue
 QUEX_NAME (Buffer) buffer
 QUEX_NAME (AnalyzerFunctionP) DEBUG_analyzer_function_at_entry
 QUEX_NAME (AnalyzerFunctionP) current_analyzer_function
struct QUEX_NAME (Mode_tag)*__current_mode_p
struct QUEX_NAME (Mode_tag)*mode_db[__QUEX_SETTING_MAX_MODE_CLASS_N]
 QUEX_NAME (Accumulator) accumulator
struct QUEX_NAME (Memento_tag)*_parent_memento
 lexer (const lexer &)
 lexer (QUEX_TYPE_CHARACTER *BufferMemoryBegin, size_t BufferMemorySize, QUEX_TYPE_CHARACTER *BufferEndOfContentP=0x0, const char *CharacterEncodingName=0x0, bool ByteOrderReversionF=false)
 lexer (const std::string &Filename, const char *CharacterEncodingName=0x0, bool ByteOrderReversionF=false)
 lexer (std::istream *p_input_stream, const char *CharacterEncodingName=0x0, bool ByteOrderReversionF=false)
 lexer (std::FILE *input_fh, const char *CharacterEncodingName=0x0, bool ByteOrderReversionF=false)
virtual ~lexer ()
void * buffer_fill_region_append (void *ContentBegin, void *ContentEnd)
void * buffer_fill_region_append_conversion (void *ContentBegin, void *ContentEnd)
void * buffer_fill_region_append_conversion_direct (void *ContentBegin, void *ContentEnd)
void buffer_fill_region_prepare ()
QUEX_TYPE_CHARACTERbuffer_fill_region_begin ()
QUEX_TYPE_CHARACTERbuffer_fill_region_end ()
size_t buffer_fill_region_size ()
void buffer_fill_region_finish (const size_t LoadedN)
void buffer_conversion_fill_region_prepare ()
uint8_t * buffer_conversion_fill_region_begin ()
uint8_t * buffer_conversion_fill_region_end ()
size_t buffer_conversion_fill_region_size ()
void buffer_conversion_fill_region_finish (const size_t ByteN)
QUEX_TYPE_CHARACTERbuffer_lexeme_start_pointer_get ()
void buffer_input_pointer_set (QUEX_TYPE_CHARACTER *)
bool byte_order_reversion ()
void byte_order_reversion_set (bool Value)
void receive (QUEX_TYPE_TOKEN **)
QUEX_TYPE_TOKENtoken_p ()
bool token_queue_is_empty ()
void token_queue_remainder_get (QUEX_TYPE_TOKEN **begin, QUEX_TYPE_TOKEN **end)
 QUEX_NAME (Mode)&mode()
int mode_id () const
const char * mode_name () const
void set_mode_brutally (const int LexerMode)
void set_mode_brutally (const QUEX_NAME(Mode)&Mode)
void operator<< (const int MODE_ID)
void operator<< (QUEX_NAME(Mode)&Mode)
void pop_mode ()
void pop_drop_mode ()
void push_mode (QUEX_NAME(Mode)&new_mode)
void enter_mode (QUEX_NAME(Mode)&TargetMode)
 QUEX_NAME (Mode)&map_mode_id_to_mode(const int ModeID)
int map_mode_to_mode_id (const QUEX_NAME(Mode)&Mode) const
void send (const QUEX_TYPE_TOKEN_ID TokenID)
size_t line_number () const
size_t line_number_at_begin () const
size_t line_number_at_end () const
void line_number_set (size_t Y)
size_t column_number () const
size_t column_number_at_begin () const
size_t column_number_at_end () const
void column_number_set (size_t X)
const char * version () const
size_t tell ()
void seek (const size_t)
void seek_forward (const size_t)
void seek_backward (const size_t)
void undo ()
void undo (size_t DeltaN_Backward)
void move_forward (const size_t)
void move_backward (const size_t)
void set_callback_on_buffer_content_change (void(*callback)(QUEX_TYPE_CHARACTER *, QUEX_TYPE_CHARACTER *))
template<class InputHandleT >
void reset (InputHandleT *input_handle, const char *CharacterEncodingName=0x0)
void reset (const char *CharacterEncodingName=0x0)
QUEX_TYPE_CHARACTERreset_buffer (QUEX_TYPE_CHARACTER *BufferMemoryBegin, size_t BufferMemorySize, QUEX_TYPE_CHARACTER *BufferEndOfContentP, const char *CharacterEncodingName=0x0)
template<class InputHandleT >
void include_push (QUEX_TYPE_CHARACTER *InputName, const QUEX_NAME(Mode)*Mode=0x0, const char *IANA_CodingName=0x0)
template<class InputHandleT >
void include_push (InputHandleT *sh, const QUEX_NAME(Mode)*Mode=0x0, const char *IANA_CodingName=0x0)
bool include_pop ()
void print_this ()
void get_token ()
void get_token (QUEX_TYPE_TOKEN *result_p)
void get_token (QUEX_TYPE_TOKEN **result_pp)

Public Attributes

uint8_t __memory_token_queue [sizeof(QUEX_TYPE_TOKEN)*QUEX_SETTING_TOKEN_QUEUE_SIZE]
struct {
_mode_stack
FILE * __file_handle_allocated_by_constructor

Protected Member Functions

void include_stack_delete ()

Friends

QUEX_TYPE_CHARACTER
InputHandleT **friend void
QUEX_NAME() 
memento_unpack (QUEX_TYPE_ANALYZER *, QUEX_NAME(Memento)*)
template<class InputHandleT >
void QUEX_NAME() reset (QUEX_TYPE_ANALYZER *, InputHandleT *, const char *)
__QUEX_TYPE_ANALYZER_RETURN_VALUE
QUEX_NAME() 
NORMAL_analyzer_function (QUEX_TYPE_ANALYZER *)
bool QUEX_NAME() NORMAL_has_base (const QUEX_NAME(Mode)*)
bool QUEX_NAME() NORMAL_has_entry_from (const QUEX_NAME(Mode)*)
bool QUEX_NAME() NORMAL_has_exit_to (const QUEX_NAME(Mode)*)

Detailed Description

Definition at line 112 of file ct_lexer.hpp.


Member Typedef Documentation

Definition at line 120 of file ct_lexer.hpp.

Definition at line 119 of file ct_lexer.hpp.

Definition at line 118 of file ct_lexer.hpp.


Constructor & Destructor Documentation

lexer::lexer ( const lexer )
lexer::lexer ( QUEX_TYPE_CHARACTER BufferMemoryBegin,
size_t  BufferMemorySize,
QUEX_TYPE_CHARACTER BufferEndOfContentP = 0x0,
const char *  CharacterEncodingName = 0x0,
bool  ByteOrderReversionF = false 
)
lexer::lexer ( const std::string &  Filename,
const char *  CharacterEncodingName = 0x0,
bool  ByteOrderReversionF = false 
)
lexer::lexer ( std::istream *  p_input_stream,
const char *  CharacterEncodingName = 0x0,
bool  ByteOrderReversionF = false 
)
lexer::lexer ( std::FILE *  input_fh,
const char *  CharacterEncodingName = 0x0,
bool  ByteOrderReversionF = false 
)
virtual lexer::~lexer ( ) [virtual]

Member Function Documentation

void lexer::buffer_conversion_fill_region_finish ( const size_t  ByteN)
void* lexer::buffer_fill_region_append ( void *  ContentBegin,
void *  ContentEnd 
)
void* lexer::buffer_fill_region_append_conversion ( void *  ContentBegin,
void *  ContentEnd 
)
void* lexer::buffer_fill_region_append_conversion_direct ( void *  ContentBegin,
void *  ContentEnd 
)
void lexer::buffer_fill_region_finish ( const size_t  LoadedN)
void lexer::byte_order_reversion_set ( bool  Value)
size_t lexer::column_number ( ) const [inline]

Definition at line 259 of file ct_lexer.hpp.

size_t lexer::column_number_at_begin ( ) const [inline]

Definition at line 260 of file ct_lexer.hpp.

size_t lexer::column_number_at_end ( ) const [inline]

Definition at line 261 of file ct_lexer.hpp.

void lexer::column_number_set ( size_t  X) [inline]

Definition at line 263 of file ct_lexer.hpp.

void lexer::enter_mode ( QUEX_NAME(Mode)&  TargetMode)
void lexer::get_token ( ) [inline]

Definition at line 356 of file ct_lexer.hpp.

void lexer::get_token ( QUEX_TYPE_TOKEN result_p) [inline]

Definition at line 358 of file ct_lexer.hpp.

void lexer::get_token ( QUEX_TYPE_TOKEN **  result_pp) [inline]

Definition at line 359 of file ct_lexer.hpp.

template<class InputHandleT >
void lexer::include_push ( QUEX_TYPE_CHARACTER InputName,
const QUEX_NAME(Mode)*  Mode = 0x0,
const char *  IANA_CodingName = 0x0 
)
template<class InputHandleT >
void lexer::include_push ( InputHandleT *  sh,
const QUEX_NAME(Mode)*  Mode = 0x0,
const char *  IANA_CodingName = 0x0 
)
void lexer::include_stack_delete ( ) [protected]
size_t lexer::line_number ( ) const [inline]

Definition at line 252 of file ct_lexer.hpp.

size_t lexer::line_number_at_begin ( ) const [inline]

Definition at line 253 of file ct_lexer.hpp.

size_t lexer::line_number_at_end ( ) const [inline]

Definition at line 254 of file ct_lexer.hpp.

void lexer::line_number_set ( size_t  Y) [inline]

Definition at line 256 of file ct_lexer.hpp.

int lexer::map_mode_to_mode_id ( const QUEX_NAME(Mode)&  Mode) const
int lexer::mode_id ( ) const
const char* lexer::mode_name ( ) const
void lexer::move_backward ( const size_t  ) [inline]

Definition at line 282 of file ct_lexer.hpp.

void lexer::move_forward ( const size_t  ) [inline]

Definition at line 281 of file ct_lexer.hpp.

void lexer::operator<< ( const int  MODE_ID)
void lexer::operator<< ( QUEX_NAME(Mode)&  Mode)
void lexer::pop_mode ( )
void lexer::push_mode ( QUEX_NAME(Mode)&  new_mode)
lexer::QUEX_NAME ( TokenQueue  )
lexer::QUEX_NAME ( Buffer  )
lexer::QUEX_NAME ( AnalyzerFunctionP  )
lexer::QUEX_NAME ( AnalyzerFunctionP  )
struct lexer::QUEX_NAME ( Mode_tag  ) [read]
struct lexer::QUEX_NAME ( Mode_tag  ) [read]
lexer::QUEX_NAME ( Accumulator  )
struct lexer::QUEX_NAME ( Memento_tag  ) [read]
lexer::QUEX_NAME ( Mode  )
lexer::QUEX_NAME ( Mode  ) const
template<class InputHandleT >
void lexer::reset ( InputHandleT *  input_handle,
const char *  CharacterEncodingName = 0x0 
)
void lexer::reset ( const char *  CharacterEncodingName = 0x0) [inline]

Definition at line 291 of file ct_lexer.hpp.

QUEX_TYPE_CHARACTER* lexer::reset_buffer ( QUEX_TYPE_CHARACTER BufferMemoryBegin,
size_t  BufferMemorySize,
QUEX_TYPE_CHARACTER BufferEndOfContentP,
const char *  CharacterEncodingName = 0x0 
)
void lexer::seek ( const size_t  )
void lexer::seek_backward ( const size_t  )
void lexer::seek_forward ( const size_t  )
void lexer::send ( const QUEX_TYPE_TOKEN_ID  TokenID) [inline]

Definition at line 248 of file ct_lexer.hpp.

void lexer::set_mode_brutally ( const int  LexerMode)
void lexer::set_mode_brutally ( const QUEX_NAME(Mode)&  Mode)
size_t lexer::tell ( )
void lexer::undo ( )
void lexer::undo ( size_t  DeltaN_Backward)
const char* lexer::version ( ) const

Friends And Related Function Documentation

QUEX_TYPE_CHARACTER InputHandleT** friend void QUEX_NAME() memento_unpack ( QUEX_TYPE_ANALYZER ,
QUEX_NAME(Memento)*   
) [friend]
__QUEX_TYPE_ANALYZER_RETURN_VALUE QUEX_NAME() NORMAL_analyzer_function ( QUEX_TYPE_ANALYZER ) [friend]

Definition at line 91 of file ct_lexer.cpp.

bool QUEX_NAME() NORMAL_has_base ( const QUEX_NAME(Mode)*  ) [friend]

Definition at line 45 of file ct_lexer.cpp.

bool QUEX_NAME() NORMAL_has_entry_from ( const QUEX_NAME(Mode)*  ) [friend]

Definition at line 50 of file ct_lexer.cpp.

bool QUEX_NAME() NORMAL_has_exit_to ( const QUEX_NAME(Mode)*  ) [friend]

Definition at line 55 of file ct_lexer.cpp.

template<class InputHandleT >
void QUEX_NAME() reset ( QUEX_TYPE_ANALYZER ,
InputHandleT *  ,
const char *   
) [friend]

Member Data Documentation

Definition at line 103 of file ct_lexer.hpp.

Definition at line 21 of file ct_lexer.hpp.

struct { ... } lexer::_mode_stack

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines