KDevelop API Documentation

LexerInputState Class Reference

This object contains the data associated with an input stream of characters. More...

#include <LexerSharedInputState.hpp>

Collaboration diagram for LexerInputState:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LexerInputState (InputBuffer *inbuf)
 Construct a new LexerInputState.
 LexerInputState (InputBuffer &inbuf)
 Construct a new LexerInputState.
 LexerInputState (std::istream &in)
 Construct a new LexerInputState.
virtual void initialize (std::istream &in, const char *file="")
 Reset the LexerInputState with a specified stream and filename.
virtual void reset (void)
 Reset the LexerInputState to initial state.
void setPosition (int line_, int column_)
 Set the file position of the SharedLexerInputState.
virtual ~LexerInputState ()
InputBuffergetInput ()

Public Attributes

int column
int line
int tokenStartColumn
int tokenStartLine
int guessing
std::string filename
 What file (if known) caused the problem?

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.

Definition at line 26 of file LexerSharedInputState.hpp.


Constructor & Destructor Documentation

LexerInputState::LexerInputState InputBuffer inbuf  )  [inline]
 

Construct a new LexerInputState.

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

Definition at line 32 of file LexerSharedInputState.hpp.

References column, filename, guessing, input, inputResponsible, line, tokenStartColumn, and tokenStartLine.

LexerInputState::LexerInputState InputBuffer inbuf  )  [inline]
 

Construct a new LexerInputState.

Parameters:
inbuf the InputBuffer to read from.

Definition at line 47 of file LexerSharedInputState.hpp.

References column, filename, guessing, input, inputResponsible, line, tokenStartColumn, and tokenStartLine.

LexerInputState::LexerInputState std::istream &  in  )  [inline]
 

Construct a new LexerInputState.

Parameters:
in an istream to read from.
See also:
antlr.CharBuffer

Definition at line 63 of file LexerSharedInputState.hpp.

References column, filename, guessing, input, inputResponsible, line, tokenStartColumn, and tokenStartLine.

virtual LexerInputState::~LexerInputState  )  [inline, virtual]
 

Definition at line 119 of file LexerSharedInputState.hpp.

LexerInputState::LexerInputState const LexerInputState  )  [private]
 


Member Function Documentation

InputBuffer & LexerInputState::getInput  )  [inline]
 

Definition at line 147 of file LexerSharedInputState.hpp.

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:

Definition at line 80 of file LexerSharedInputState.hpp.

References column, filename, guessing, input, inputResponsible, line, tokenStartColumn, and tokenStartLine.

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.

Definition at line 99 of file LexerSharedInputState.hpp.

References column, guessing, input, line, InputBuffer::reset(), tokenStartColumn, and tokenStartLine.

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

Definition at line 113 of file LexerSharedInputState.hpp.

References column, and line.


Member Data Documentation

int LexerInputState::column
 

Definition at line 125 of file LexerSharedInputState.hpp.

Referenced by initialize(), LexerInputState(), reset(), and setPosition().

std ::string LexerInputState::filename
 

What file (if known) caused the problem?

Definition at line 131 of file LexerSharedInputState.hpp.

Referenced by initialize(), and LexerInputState().

int LexerInputState::guessing
 

Definition at line 129 of file LexerSharedInputState.hpp.

Referenced by initialize(), LexerInputState(), and reset().

InputBuffer* LexerInputState::input [private]
 

Input buffer we use.

Definition at line 135 of file LexerSharedInputState.hpp.

Referenced by initialize(), LexerInputState(), and reset().

bool LexerInputState::inputResponsible [private]
 

Who is responsible for cleaning up the InputBuffer?

Definition at line 137 of file LexerSharedInputState.hpp.

Referenced by initialize(), and LexerInputState().

int LexerInputState::line
 

Definition at line 126 of file LexerSharedInputState.hpp.

Referenced by initialize(), LexerInputState(), reset(), and setPosition().

int LexerInputState::tokenStartColumn
 

Definition at line 127 of file LexerSharedInputState.hpp.

Referenced by initialize(), LexerInputState(), and reset().

int LexerInputState::tokenStartLine
 

Definition at line 128 of file LexerSharedInputState.hpp.

Referenced by initialize(), LexerInputState(), and reset().


The documentation for this class was generated from the following file:
KDE Logo
This file is part of the documentation for KDevelop Version 3.1.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Tue Feb 22 09:44:02 2005 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2003