kexi

KexiDB::BaseExpr Class Reference

#include <expression.h>

Inheritance diagram for KexiDB::BaseExpr:

KexiDB::BinaryExpr KexiDB::ConstExpr KexiDB::FunctionExpr KexiDB::NArgExpr KexiDB::UnaryExpr KexiDB::VariableExpr KexiDB::QueryParameterExpr List of all members.

Detailed Description

A base class for all expressions.

Definition at line 66 of file expression.h.


Public Types

typedef QPtrList< BaseExprList
typedef QPtrListIterator<
BaseExpr
ListIterator

Public Member Functions

 BaseExpr (int token)
virtual ~BaseExpr ()
virtual BaseExprcopy () const=0
int token () const
virtual Field::Type type ()
BaseExprparent () const
virtual void setParent (BaseExpr *p)
virtual bool validate (ParseInfo &parseInfo)
virtual QString toString (QuerySchemaParameterValueListIterator *params=0)=0
virtual void getQueryParameters (QuerySchemaParameterList &params)=0
void debug ()
virtual QString debugString ()
QString tokenToDebugString ()
virtual QString tokenToString ()
int exprClass () const
NArgExprtoNArg ()
UnaryExprtoUnary ()
BinaryExprtoBinary ()
ConstExprtoConst ()
VariableExprtoVariable ()
FunctionExprtoFunction ()
QueryParameterExprtoQueryParameter ()

Static Public Member Functions

static QString tokenToDebugString (int token)

Protected Attributes

int m_cl
BaseExprm_par
int m_token

Member Function Documentation

virtual BaseExpr* KexiDB::BaseExpr::copy (  )  const [pure virtual]

Todo:
a nonpointer will be returned here when we move to implicit data sharing

Implemented in KexiDB::NArgExpr, KexiDB::UnaryExpr, KexiDB::BinaryExpr, KexiDB::ConstExpr, KexiDB::QueryParameterExpr, KexiDB::VariableExpr, and KexiDB::FunctionExpr.

virtual QString KexiDB::BaseExpr::toString ( QuerySchemaParameterValueListIterator params = 0  )  [pure virtual]

Returns:
string as a representation of this expression element by running recursive calls. param, if not 0, points to a list item containing value of a query parameter (used in QueryParameterExpr).

Implemented in KexiDB::NArgExpr, KexiDB::UnaryExpr, KexiDB::BinaryExpr, KexiDB::ConstExpr, KexiDB::QueryParameterExpr, KexiDB::VariableExpr, and KexiDB::FunctionExpr.

virtual void KexiDB::BaseExpr::getQueryParameters ( QuerySchemaParameterList params  )  [pure virtual]

Collects query parameters (messages and types) reculsively and saves them to params. The leaf nodes are objects of QueryParameterExpr class.

Implemented in KexiDB::NArgExpr, KexiDB::UnaryExpr, KexiDB::BinaryExpr, KexiDB::ConstExpr, KexiDB::QueryParameterExpr, KexiDB::VariableExpr, and KexiDB::FunctionExpr.

QString KexiDB::BaseExpr::tokenToDebugString (  )  [inline]

Returns:
single character if the token is < 256 or token name, e.g. LESS_OR_EQUAL (for debugging).

Definition at line 104 of file expression.h.

QString BaseExpr::tokenToString (  )  [virtual]

Returns:
string for token, like "<=" or ">"

Reimplemented in KexiDB::BinaryExpr.

Definition at line 107 of file expression.cpp.

NArgExpr * BaseExpr::toNArg (  ) 

Convenience type casts.

Definition at line 114 of file expression.cpp.


Member Data Documentation

int KexiDB::BaseExpr::m_cl [protected]

class

Definition at line 123 of file expression.h.

parent expression

Definition at line 124 of file expression.h.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys