Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Lexer Class Reference

#include </home/clem/local/src/opie/noncore/unsupported/qpdf/xpdf/Lexer.h>

Collaboration diagram for Lexer:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Lexer (XRef *xref, Stream *str)
 Lexer (XRef *xref, Object *obj)
 ~Lexer ()
ObjectgetObj (Object *obj)
void skipToNextLine ()
void skipChar ()
StreamgetStream ()
int getPos ()
void setPos (Guint pos, int dir=0)

Private Member Functions

int getChar ()
int lookChar ()

Private Attributes

Arraystreams
int strPtr
Object curStr
GBool freeArray
char tokBuf [tokBufSize]

Constructor & Destructor Documentation

Lexer::Lexer XRef xref,
Stream str
 

Definition at line 48 of file Lexer.cc.

References Array::add(), Object::copy(), curStr, freeArray, gTrue, Object::initStream(), Object::streamReset(), streams, and strPtr.

Lexer::Lexer XRef xref,
Object obj
 

Definition at line 59 of file Lexer.cc.

References Array::add(), Object::copy(), curStr, freeArray, Array::get(), Object::getArray(), Array::getLength(), gFalse, gTrue, Object::isStream(), Object::streamReset(), streams, and strPtr.

Lexer::~Lexer  ) 
 

Definition at line 77 of file Lexer.cc.

References curStr, Object::free(), freeArray, Object::isNone(), Object::streamClose(), and streams.


Member Function Documentation

int Lexer::getChar  )  [private]
 

Definition at line 87 of file Lexer.cc.

References curStr, Object::free(), Array::get(), Object::isNone(), Object::streamClose(), Object::streamGetChar(), Object::streamReset(), streams, and strPtr.

Referenced by getObj(), skipChar(), and skipToNextLine().

Object * Lexer::getObj Object obj  ) 
 

Definition at line 110 of file Lexer.cc.

References GString::append(), error(), getChar(), getPos(), gFalse, gTrue, Object::initBool(), Object::initCmd(), Object::initEOF(), Object::initError(), Object::initInt(), Object::initName(), Object::initNull(), Object::initReal(), Object::initString(), lookChar(), NULL, p, s, scale(), specialChars, tokBuf, and tokBufSize.

Referenced by Parser::getObj(), Parser::Parser(), and Parser::shift().

int Lexer::getPos  )  [inline]
 

Definition at line 56 of file Lexer.h.

References curStr, Object::isNone(), and Object::streamGetPos().

Referenced by getObj(), Parser::getPos(), and Parser::makeStream().

Stream* Lexer::getStream  )  [inline]
 

Definition at line 51 of file Lexer.h.

References curStr, Object::getStream(), Object::isNone(), and NULL.

Referenced by Parser::getStream(), and Parser::makeStream().

int Lexer::lookChar  )  [private]
 

Definition at line 103 of file Lexer.cc.

References curStr, Object::isNone(), and Object::streamLookChar().

Referenced by getObj(), and skipToNextLine().

void Lexer::setPos Guint  pos,
int  dir = 0
[inline]
 

Definition at line 60 of file Lexer.h.

References curStr, Object::isNone(), and Object::streamSetPos().

Referenced by Parser::makeStream().

void Lexer::skipChar  )  [inline]
 

Definition at line 48 of file Lexer.h.

References getChar().

Referenced by Parser::shift().

void Lexer::skipToNextLine  ) 
 

Definition at line 458 of file Lexer.cc.

References getChar(), and lookChar().

Referenced by Parser::makeStream().


Member Data Documentation

Object Lexer::curStr [private]
 

Definition at line 70 of file Lexer.h.

Referenced by getChar(), getPos(), getStream(), Lexer(), lookChar(), setPos(), and ~Lexer().

GBool Lexer::freeArray [private]
 

Definition at line 71 of file Lexer.h.

Referenced by Lexer(), and ~Lexer().

Array* Lexer::streams [private]
 

Definition at line 68 of file Lexer.h.

Referenced by getChar(), Lexer(), and ~Lexer().

int Lexer::strPtr [private]
 

Definition at line 69 of file Lexer.h.

Referenced by getChar(), and Lexer().

char Lexer::tokBuf[tokBufSize] [private]
 

Definition at line 72 of file Lexer.h.

Referenced by getObj().


The documentation for this class was generated from the following files:
Generated on Sat Nov 5 17:38:25 2005 for OPIE by  doxygen 1.4.2