ANTLR Support Libraries 2.7.1+
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
LexerInputState Class Reference

#include <LexerSharedInputState.hpp>

Collaboration diagram for LexerInputState:
Collaboration graph
[legend]

Public Member Functions

 LexerInputState (InputBuffer *inbuf)
 
 LexerInputState (InputBuffer &inbuf)
 
 LexerInputState (std ::istream &in)
 
virtual void initialize (std ::istream &in, const char *file="")
 
virtual void reset (void)
 
void setPosition (int line_, int column_)
 
virtual ~LexerInputState ()
 
InputBuffergetInput ()
 

Public Attributes

int column
 
int line
 
int tokenStartColumn
 
int tokenStartLine
 
int guessing
 
std ::string filename
 

Private Member Functions

 LexerInputState (const LexerInputState &)
 
LexerInputStateoperator= (const LexerInputState &)
 

Private Attributes

InputBufferinput
 Input buffer we use. More...
 
bool inputResponsible
 Who is responsible for cleaning up the InputBuffer? More...
 

Detailed Description

This object contains the data associated with an input stream of characters. Multiple lexers share a single LexerSharedInputState to lex the same input stream.

Constructor & Destructor Documentation

◆ LexerInputState() [1/4]

LexerInputState::LexerInputState ( InputBuffer inbuf)
inline

Construct a new LexerInputState

Parameters
inbufthe InputBuffer to read from. The object is deleted together with the LexerInputState object.

◆ LexerInputState() [2/4]

LexerInputState::LexerInputState ( InputBuffer inbuf)
inline

Construct a new LexerInputState

Parameters
inbufthe InputBuffer to read from.

◆ LexerInputState() [3/4]

LexerInputState::LexerInputState ( std ::istream &  in)
inline

Construct a new LexerInputState

Parameters
inan istream to read from.
See also
antlr.CharBuffer

◆ ~LexerInputState()

virtual LexerInputState::~LexerInputState ( )
inlinevirtual

◆ LexerInputState() [4/4]

LexerInputState::LexerInputState ( const LexerInputState )
private

Member Function Documentation

◆ getInput()

InputBuffer & LexerInputState::getInput ( )
inline

◆ initialize()

virtual void LexerInputState::initialize ( std ::istream &  in,
const char *  file = "" 
)
inlinevirtual

Reset the LexerInputState with a specified stream and filename. This method is a hack, dunno what I was thinking when I added it. This should actually be done in a subclass.

Deprecated:

◆ operator=()

LexerInputState& LexerInputState::operator= ( const LexerInputState )
private

◆ reset()

virtual void LexerInputState::reset ( void  )
inlinevirtual

Reset the LexerInputState to initial state. The underlying InputBuffer is also reset.

◆ setPosition()

void LexerInputState::setPosition ( int  line_,
int  column_ 
)
inline

Set the file position of the SharedLexerInputState.

Parameters
line_line number to be set
column_column number to be set

Member Data Documentation

◆ column

int LexerInputState::column

◆ filename

std ::string LexerInputState::filename

What file (if known) caused the problem?

◆ guessing

int LexerInputState::guessing

◆ input

InputBuffer* LexerInputState::input
private

Input buffer we use.

◆ inputResponsible

bool LexerInputState::inputResponsible
private

Who is responsible for cleaning up the InputBuffer?

◆ line

int LexerInputState::line

◆ tokenStartColumn

int LexerInputState::tokenStartColumn

◆ tokenStartLine

int LexerInputState::tokenStartLine

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