XPathLex Class Reference

#include <XPathLex.h>

Inheritance diagram for XPathLex:
IMemoryValidate

List of all members.

Public Types

enum  _XPathLexToken {
  XP_UNKNOWN = 0, XP_EOF = 1, XP_STRING = 2, XP_LPAR = 3,
  XP_RPAR = 4, XP_LBRAC = 5, XP_RBRAC = 6, XP_DOT = 7,
  XP_DOTDOT = 8, XP_AT = 9, XP_COMMA = 10, XP_COLONCOLON = 11,
  XP_INT = 12, XP_FLOAT = 13, XP_SLASH = 14, XP_SLASHSLASH = 15,
  XP_PIPE = 16, XP_PLUS = 17, XP_MIN = 18, XP_EQ = 19,
  XP_NEQ = 20, XP_LT = 21, XP_LTEQ = 22, XP_GT = 23,
  XP_GTEQ = 24, XP_AND = 25, XP_OR = 26, XP_MOD = 27,
  XP_DIV = 28, XP_STAR = 29, XP_DOLLAR = 30, XP_COLON = 31,
  XP_EQEQ = 32, XP_LITERAL = 33
}
typedef enum
XPathLex::_XPathLexToken 
XPathLexToken

Public Member Functions

 XPathLex (const XPathLex &lex)
XPathLexoperator= (const XPathLex &lex)
void Tokenize (const String &text)
XPathLexToken Match (XPathLex::XPathLexToken token)
XPathLexToken GetRelativeToken (int distance) const
int Count () const
XPathLexToken CurrentToken () const
const StringCurrentLexum () const
int CurrentLexumInputCharPos () const
bool HasMoreTokens () const
bool IsNameChar (char ch) const
void CheckMem () const
void ValidateMem () const

Detailed Description

XPath lexical analyizer.

XPaths are short, so this class analyzes all of the tokens in one pass.

Definition at line 30 of file XPathLex.h.


Member Function Documentation

void XPathLex::Tokenize ( const String text  ) 

Tokenize the text; any existing tokens are replaced and the position is reset.

Definition at line 127 of file XPathLex.cpp.

References Vector< T >::Add(), and Vector< T >::Clear().


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