Kexi API Documentation (2.0 alpha)

KexiDB::BinaryExpr Class Reference

#include <expression.h>

Inheritance diagram for KexiDB::BinaryExpr:

KexiDB::BaseExpr List of all members.

Detailed Description

A base class for binary operation

Definition at line 161 of file expression.h.

Public Member Functions

 BinaryExpr (int aClass, BaseExpr *left_expr, int token, BaseExpr *right_expr)
virtual ~BinaryExpr ()
virtual Field::Type type ()
virtual QString debugString ()
virtual QString toString (QuerySchemaParameterValueListIterator *params=0)
virtual void getQueryParameters (QuerySchemaParameterList &params)
BaseExprleft () const
BaseExprright () const
virtual bool validate (ParseInfo &parseInfo)
virtual QString tokenToString ()

Public Attributes

BaseExprm_larg
BaseExprm_rarg


Constructor & Destructor Documentation

BinaryExpr::BinaryExpr int  aClass,
BaseExpr left_expr,
int  token,
BaseExpr right_expr
 

Definition at line 304 of file expression.cpp.

References KexiDB::BaseExpr::m_cl, m_larg, m_rarg, and KexiDB::BaseExpr::setParent().

BinaryExpr::~BinaryExpr  )  [virtual]
 

Definition at line 316 of file expression.cpp.

References m_larg, and m_rarg.


Member Function Documentation

QString BinaryExpr::debugString  )  [virtual]
 

Reimplemented from KexiDB::BaseExpr.

Definition at line 379 of file expression.cpp.

References KexiDB::BaseExpr::debugString(), KexiDB::Driver::defaultSQLTypeName(), KexiDB::exprClassName(), KexiDB::BaseExpr::m_cl, m_larg, m_rarg, KexiDB::BaseExpr::tokenToDebugString(), and type().

void BinaryExpr::getQueryParameters QuerySchemaParameterList params  )  [virtual]
 

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

Implements KexiDB::BaseExpr.

Definition at line 426 of file expression.cpp.

References KexiDB::BaseExpr::getQueryParameters(), m_larg, and m_rarg.

BaseExpr* KexiDB::BinaryExpr::left  )  const [inline]
 

Definition at line 170 of file expression.h.

Referenced by KexiQueryDesignerGuiEditor::showFieldsOrRelationsForQueryInternal().

BaseExpr* KexiDB::BinaryExpr::right  )  const [inline]
 

Definition at line 171 of file expression.h.

Referenced by KexiQueryDesignerGuiEditor::showFieldsOrRelationsForQueryInternal().

QString BinaryExpr::tokenToString  )  [virtual]
 

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

Reimplemented from KexiDB::BaseExpr.

Definition at line 389 of file expression.cpp.

References AND, BITWISE_SHIFT_LEFT, BITWISE_SHIFT_RIGHT, CONCATENATION, GREATER_OR_EQUAL, LESS_OR_EQUAL, LIKE, KexiDB::BaseExpr::m_token, NOT_EQUAL, NOT_EQUAL2, NOT_SIMILAR_TO, OR, SIMILAR_TO, SQL_IN, KexiDB::BaseExpr::tokenToDebugString(), and XOR.

Referenced by KexiQueryDesignerGuiEditor::showFieldsOrRelationsForQueryInternal(), KexiQueryDesignerGuiEditor::slotBeforeCellChanged(), and toString().

QString BinaryExpr::toString QuerySchemaParameterValueListIterator params = 0  )  [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).

Implements KexiDB::BaseExpr.

Definition at line 419 of file expression.cpp.

References INFIX, and tokenToString().

Field::Type BinaryExpr::type  )  [virtual]
 

Reimplemented from KexiDB::BaseExpr.

Definition at line 345 of file expression.cpp.

References BITWISE_SHIFT_LEFT, BITWISE_SHIFT_RIGHT, KexiDB::Field::Boolean, CONCATENATION, KexiDB::Field::Double, KexiDB::Field::Float, KexiDB::Field::InvalidType, KexiDB::Field::isFPNumericType(), KexiDB::Field::isIntegerType(), m_larg, m_rarg, KexiDB::BaseExpr::m_token, KexiDB::maximumForIntegerTypes(), KexiDB::Field::Null, OR, and KexiDB::BaseExpr::type().

Referenced by debugString().

bool BinaryExpr::validate ParseInfo parseInfo  )  [virtual]
 

Todo:
compare types..., BITWISE_SHIFT_RIGHT requires integers, etc...

Reimplemented from KexiDB::BaseExpr.

Definition at line 322 of file expression.cpp.

References m_larg, m_rarg, KexiDB::BaseExpr::toQueryParameter(), KexiDB::BaseExpr::type(), and KexiDB::BaseExpr::validate().


Member Data Documentation

BaseExpr* KexiDB::BinaryExpr::m_larg
 

Definition at line 175 of file expression.h.

Referenced by BinaryExpr(), debugString(), getQueryParameters(), type(), validate(), and ~BinaryExpr().

BaseExpr* KexiDB::BinaryExpr::m_rarg
 

Definition at line 176 of file expression.h.

Referenced by BinaryExpr(), debugString(), getQueryParameters(), type(), validate(), and ~BinaryExpr().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for Kexi 2.0 alpha.
Documentation copyright © 2002-2007 the Kexi Team.
Generated on Tue Apr 1 20:50:44 2008 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003