KDevelop API Documentation

Token Class Reference

#include <Token.hpp>

Inheritance diagram for Token:

Inheritance graph
[legend]
Collaboration diagram for Token:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Token ()
 Token (int t)
 Token (int t, const std::string &txt)
virtual int getColumn () const
virtual int getLine () const
virtual std::string getText () const
virtual int getType () const
virtual void setColumn (int c)
virtual void setLine (int l)
virtual void setText (const std::string &t)
virtual void setType (int t)
virtual std::string toString () const
virtual ~Token ()
 Token ()
 Token (int type, int position, int length, const QString &text)
 Token (const Token &source)
Tokenoperator= (const Token &source)
bool operator== (const Token &token) const
 operator int () const
bool isNull () const
int type () const
void setType (int type)
void getStartPosition (int *line, int *column) const
void setStartPosition (int line, int column)
void getEndPosition (int *line, int *column) const
void setEndPosition (int line, int column)
unsigned int length () const
void setLength (unsigned int length)
int position () const
void setPosition (int position)
QString text () const

Public Attributes

int type

Static Public Attributes

const int MIN_USER_TYPE = 4
const int NULL_TREE_LOOKAHEAD = 3
const int INVALID_TYPE = 0
const int EOF_TYPE = 1
const int SKIP = -1
RefToken badToken = RefToken(new Token(Token::INVALID_TYPE, "<no text>"))

Private Member Functions

 Token (const Token &)
const Tokenoperator= (const Token &)

Private Attributes

int m_type
int m_position
int m_length
int m_startLine
int m_startColumn
int m_endLine
int m_endColumn
QString m_text

Friends

class Lexer
class Parser

Constructor & Destructor Documentation

Token::Token  )  [inline]
 

Definition at line 20 of file Token.cpp.

Token::Token int  t  ) 
 

Definition at line 24 of file Token.cpp.

Token::Token int  t,
const std::string &  txt
 

Definition at line 28 of file Token.cpp.

References setText(), and type.

Token::~Token  )  [virtual]
 

Definition at line 74 of file Token.cpp.

Token::Token const Token  )  [inline, private]
 

Definition at line 337 of file lexer.h.

Token::Token  ) 
 

Token::Token int  type,
int  position,
int  length,
const QString text
[inline]
 

Definition at line 329 of file lexer.h.

References length(), and text().

Token::Token const Token source  ) 
 


Member Function Documentation

int Token::getColumn  )  const [virtual]
 

Reimplemented in CommonToken.

Definition at line 35 of file Token.cpp.

void Token::getEndPosition int *  line,
int *  column
const [inline]
 

Definition at line 422 of file lexer.h.

Referenced by Parser::parseDeclarationInternal().

int Token::getLine  )  const [virtual]
 

Reimplemented in CommonToken.

Definition at line 40 of file Token.cpp.

void Token::getStartPosition int *  line,
int *  column
const [inline]
 

Definition at line 416 of file lexer.h.

Referenced by Lexer::getTokenPosition(), and Parser::parseDeclarationInternal().

std::string Token::getText  )  const [virtual]
 

Reimplemented in CommonToken.

Definition at line 45 of file Token.cpp.

int Token::getType  )  const [virtual]
 

Definition at line 50 of file Token.cpp.

bool Token::isNull  )  const [inline]
 

Definition at line 379 of file lexer.h.

References m_length, m_type, and Token_eof.

Referenced by Parser::parseClassSpecifier(), Parser::parseCompoundStatement(), Parser::parseCvQualify(), Parser::parseFunctionBody(), Parser::parseFunctionSpecifier(), Parser::parseLinkageBody(), Parser::parseStorageClassSpecifier(), Parser::parseStringLiteral(), Parser::skip(), Parser::skipExpression(), Parser::skipUntil(), Parser::skipUntilDeclaration(), and Parser::skipUntilStatement().

unsigned int Token::length  )  const [inline]
 

Definition at line 433 of file lexer.h.

Token::operator int  )  const [inline]
 

Definition at line 362 of file lexer.h.

Token& Token::operator= const Token source  ) 
 

Token & Token::operator= const Token  )  [inline, private]
 

Definition at line 349 of file lexer.h.

References m_endColumn, m_endLine, m_length, m_position, m_startColumn, m_startLine, m_text, and m_type.

bool Token::operator== const Token token  )  const [inline]
 

Definition at line 367 of file lexer.h.

References m_endColumn, m_endLine, m_length, m_position, m_startColumn, m_startLine, m_text, and m_type.

int Token::position  )  const [inline]
 

Definition at line 394 of file lexer.h.

Referenced by Lexer::tokenPosition().

void Token::setColumn int  c  )  [virtual]
 

Reimplemented in CommonToken.

Definition at line 55 of file Token.cpp.

void Token::setEndPosition int  line,
int  column
[inline]
 

Definition at line 410 of file lexer.h.

References m_endColumn, and m_endLine.

Referenced by Lexer::nextToken(), Parser::parseDeclarationInternal(), and Lexer::tokenize().

void Token::setLength unsigned int  length  )  [inline]
 

Definition at line 438 of file lexer.h.

References m_length.

void Token::setLine int  l  )  [virtual]
 

Reimplemented in CommonToken.

Definition at line 58 of file Token.cpp.

void Token::setPosition int  position  )  [inline]
 

Definition at line 428 of file lexer.h.

References m_position.

void Token::setStartPosition int  line,
int  column
[inline]
 

Definition at line 404 of file lexer.h.

References m_startColumn, and m_startLine.

Referenced by Lexer::nextToken(), Parser::parseDeclarationInternal(), and Lexer::tokenize().

void Token::setText const std::string &  t  )  [virtual]
 

Reimplemented in CommonToken.

Definition at line 61 of file Token.cpp.

Referenced by Parser::parseDeclarationInternal(), and Token().

void Token::setType int  type  ) 
 

void Token::setType int  t  )  [inline, virtual]
 

Definition at line 64 of file Token.cpp.

References type.

QString Token::text  )  const [inline]
 

Definition at line 399 of file lexer.h.

References m_length, m_position, and m_text.

Referenced by Lexer::macroPrimary(), Lexer::nextToken(), Parser::parseOperator(), Parser::parseStringLiteral(), Parser::parseWinDeclSpec(), Lexer::processDefine(), Lexer::readArgument(), Parser::reportError(), Lexer::toInt(), and Parser::toString().

std::string Token::toString  )  const [virtual]
 

Reimplemented in CommonToken.

Definition at line 69 of file Token.cpp.

int Token::type  )  const
 


Friends And Related Function Documentation

friend class Lexer [friend]
 

Definition at line 186 of file lexer.h.

friend class Parser [friend]
 

Definition at line 187 of file lexer.h.


Member Data Documentation

ANTLR_API RefToken Token::badToken = RefToken(new Token(Token::INVALID_TYPE, "<no text>")) [static]
 

Definition at line 18 of file Token.cpp.

const int Token::EOF_TYPE = 1 [static]
 

Definition at line 83 of file Token.cpp.

const int Token::INVALID_TYPE = 0 [static]
 

Definition at line 82 of file Token.cpp.

int Token::m_endColumn [private]
 

Definition at line 183 of file lexer.h.

Referenced by operator=(), operator==(), and setEndPosition().

int Token::m_endLine [private]
 

Definition at line 182 of file lexer.h.

Referenced by operator=(), operator==(), and setEndPosition().

int Token::m_length [private]
 

Definition at line 179 of file lexer.h.

Referenced by isNull(), operator=(), operator==(), setLength(), and text().

int Token::m_position [private]
 

Definition at line 178 of file lexer.h.

Referenced by operator=(), operator==(), setPosition(), and text().

int Token::m_startColumn [private]
 

Definition at line 181 of file lexer.h.

Referenced by operator=(), operator==(), and setStartPosition().

int Token::m_startLine [private]
 

Definition at line 180 of file lexer.h.

Referenced by operator=(), operator==(), and setStartPosition().

QString Token::m_text [private]
 

Definition at line 184 of file lexer.h.

Referenced by operator=(), operator==(), and text().

int Token::m_type [private]
 

Definition at line 177 of file lexer.h.

Referenced by isNull(), operator=(), and operator==().

const int Token::MIN_USER_TYPE = 4 [static]
 

Definition at line 80 of file Token.cpp.

const int Token::NULL_TREE_LOOKAHEAD = 3 [static]
 

Definition at line 81 of file Token.cpp.

const int Token::SKIP = -1 [static]
 

Definition at line 84 of file Token.cpp.

int Token::type [inline]
 

Definition at line 384 of file lexer.h.

Referenced by Lexer::macroPrimary(), Lexer::processDefine(), setType(), Lexer::toInt(), Token(), and Lexer::tokenize().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for KDevelop Version 3.1.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Mar 23 00:31:05 2005 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2003