ANTLR Support Libraries 2.7.1+
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes

LexerInputState Class Reference

#include <LexerSharedInputState.hpp>

Collaboration diagram for LexerInputState:
Collaboration graph
[legend]

List of all members.

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.
bool inputResponsible
 Who is responsible for cleaning up the InputBuffer?

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::LexerInputState ( InputBuffer inbuf) [inline]

Construct a new LexerInputState

Parameters:
inbufthe InputBuffer to read from. The object is deleted together with the LexerInputState object.
LexerInputState::LexerInputState ( InputBuffer inbuf) [inline]

Construct a new LexerInputState

Parameters:
inbufthe InputBuffer to read from.
LexerInputState::LexerInputState ( std::istream &  in) [inline]

Construct a new LexerInputState

Parameters:
inan istream to read from.
See also:
antlr.CharBuffer
virtual LexerInputState::~LexerInputState ( ) [inline, virtual]
LexerInputState::LexerInputState ( const LexerInputState ) [private]

Member Function Documentation

InputBuffer & LexerInputState::getInput ( ) [inline]
virtual void LexerInputState::initialize ( std::istream &  in,
const char *  file = "" 
) [inline, virtual]

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:
LexerInputState& LexerInputState::operator= ( const LexerInputState ) [private]
virtual void LexerInputState::reset ( void  ) [inline, virtual]

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

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

What file (if known) caused the problem?

Input buffer we use.

Who is responsible for cleaning up the InputBuffer?


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