textwolf  0.2
Classes | Public Types | Public Member Functions | List of all members
textwolf::ScannerStatemachine Class Reference

Class to build up the XML element scanner state machine in a descriptive way. More...

#include <xmlscanner.hpp>

Inheritance diagram for textwolf::ScannerStatemachine:
textwolf::throws_exception textwolf::XMLScannerBase::Statemachine

Classes

class  Element
 One state in the state machine. More...
 

Public Types

enum  { MaxNofStates =64 }
 
- Public Types inherited from textwolf::throws_exception
enum  Cause {
  Unknown, DimOutOfRange, StateNumbersNotAscending, InvalidParamState,
  InvalidParamChar, DuplicateStateTransition, InvalidState, IllegalParam,
  IllegalAttributeName, OutOfMem, ArrayBoundsReadWrite, NotAllowedOperation,
  FileReadError, IllegalXmlHeader, InvalidTagOffset, CorruptTagStack,
  CodePageIndexNotSupported
}
 Enumeration of error cases. More...
 

Public Member Functions

Elementget (int stateIdx) throw (exception)
 Get state addressed by its index. More...
 
 ScannerStatemachine ()
 Constructor. More...
 
ScannerStatemachineoperator[] (int stateIdx)
 See ScannerStatemachine::newState(int) More...
 
ScannerStatemachineoperator() (ControlCharacter inputchr, int ns)
 See ScannerStatemachine::addTransition(ControlCharacter,int) More...
 
ScannerStatemachineoperator() (ControlCharacter i1, ControlCharacter i2, int ns)
 See ScannerStatemachine::addTransition(ControlCharacter,int) More...
 
ScannerStatemachineoperator() (ControlCharacter i1, ControlCharacter i2, ControlCharacter i3, int ns)
 See ScannerStatemachine::addTransition(ControlCharacter,int) More...
 
ScannerStatemachineoperator() (ControlCharacter inputchr)
 See ScannerStatemachine::addTransition(ControlCharacter) More...
 
ScannerStatemachineaction (int aa, int arg=0)
 See ScannerStatemachine::addAction(int,int) More...
 
ScannerStatemachinemiss (int ee)
 See ScannerStatemachine::addMiss(int) More...
 
ScannerStatemachinefallback (int stateIdx)
 See ScannerStatemachine::addFallback(int) More...
 
ScannerStatemachineother (int stateIdx)
 See ScannerStatemachine::addOtherTransition(int) More...
 

Detailed Description

Class to build up the XML element scanner state machine in a descriptive way.

Member Enumeration Documentation

anonymous enum
Enumerator
MaxNofStates 

maximum number of states (fixed allocated array for state machine)

Constructor & Destructor Documentation

textwolf::ScannerStatemachine::ScannerStatemachine ( )
inline

Constructor.

Member Function Documentation

ScannerStatemachine& textwolf::ScannerStatemachine::action ( int  aa,
int  arg = 0 
)
inline

See ScannerStatemachine::addAction(int,int)

ScannerStatemachine& textwolf::ScannerStatemachine::fallback ( int  stateIdx)
inline

See ScannerStatemachine::addFallback(int)

Element* textwolf::ScannerStatemachine::get ( int  stateIdx)
throw (exception
)
inline

Get state addressed by its index.

Parameters
[in]stateIdxindex of the state
Returns
state defintion reference
ScannerStatemachine& textwolf::ScannerStatemachine::miss ( int  ee)
inline

See ScannerStatemachine::addMiss(int)

ScannerStatemachine& textwolf::ScannerStatemachine::operator() ( ControlCharacter  inputchr,
int  ns 
)
inline

See ScannerStatemachine::addTransition(ControlCharacter,int)

ScannerStatemachine& textwolf::ScannerStatemachine::operator() ( ControlCharacter  i1,
ControlCharacter  i2,
int  ns 
)
inline

See ScannerStatemachine::addTransition(ControlCharacter,int)

ScannerStatemachine& textwolf::ScannerStatemachine::operator() ( ControlCharacter  i1,
ControlCharacter  i2,
ControlCharacter  i3,
int  ns 
)
inline

See ScannerStatemachine::addTransition(ControlCharacter,int)

ScannerStatemachine& textwolf::ScannerStatemachine::operator() ( ControlCharacter  inputchr)
inline

See ScannerStatemachine::addTransition(ControlCharacter)

ScannerStatemachine& textwolf::ScannerStatemachine::operator[] ( int  stateIdx)
inline

See ScannerStatemachine::newState(int)

ScannerStatemachine& textwolf::ScannerStatemachine::other ( int  stateIdx)
inline

See ScannerStatemachine::addOtherTransition(int)


The documentation for this class was generated from the following file: