OOFILE  1.9
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
dbQueryBinary Class Reference

Common binary query for field, eg: People.Salary > 90000. More...

#include <oofquery.h>

Inheritance diagram for dbQueryBinary:
Inheritance graph
[legend]
Collaboration diagram for dbQueryBinary:
Collaboration graph
[legend]

Public Types

enum  BinaryQueryOps {
  equals, notEquals, lessThan, lessThanOrEqual,
  greaterThan, greaterThanOrEqual, startsWith, hasWord,
  hasAnyWord, hasAllWords, hasWordStartsWith, hasAnyWordStartsWith,
  hasAllWordsStartsWith
}
 
enum  QueryClauseTypes {
  binaryfieldToLiteral, binaryfieldTofield, trinaryFieldToLiterals, entireTable,
  atomicfield, atomicLiteral, atomicLiteralStr, multiLiteralStr,
  binaryCombination, builtQuery
}
 
enum  QueryCombinatorialOps { oofAND, oofOR }
 
enum  TrinaryQueryOps { between, outside }
 

Public Member Functions

dbQueryClause::BinaryQueryOps binaryOperator () const
 
virtual dbQueryClauseclone () const
 
virtual dbQueryClausecloneReplacingTable (const dbTable *inTable, const dbTable *repTable) const
 conditionally clone if LHS clause requires replacement. More...
 
 dbQueryBinary (dbQueryField *fld, BinaryQueryOps op, dbQueryClause *litOrFld)
 
 dbQueryBinary (BinaryQueryOps op, dbQueryClause *litOrFld)
 
 dbQueryBinary (const dbQueryBinary &)
 
virtual void describe (std::ostream &) const
 
virtual void getSearchTables (const dbTable *inSchTable, dbTable *&outDiffFieldTable, dbTable *&outRelatedTable) const
 
bool isSimpleIndexedSearch () const
 
const dbFieldlhsField () const
 
dbQueryLiteralliteralClause () const
 
dbQueryLiteralStrMultiValueliteralMultiStrClause () const
 
dbQueryLiteralStrliteralStrClause () const
 
dbQueryBinaryCombo operator& (const dbQueryClause &) const
 
dbQueryBinaryComboOwneroperator& (dbQueryClause *adoptRHS)
 
dbQueryBinaryCombo operator&& (const dbQueryClause &) const
 
dbQueryBinaryComboOwneroperator&& (dbQueryClause *adoptRHS)
 
dbQueryBinaryCombo operator| (const dbQueryClause &) const
 
dbQueryBinaryComboOwneroperator| (dbQueryClause *adoptRHS)
 
dbQueryBinaryCombo operator|| (const dbQueryClause &) const
 
dbQueryBinaryComboOwneroperator|| (dbQueryClause *adoptRHS)
 
virtual dbQueryClause::QueryClauseTypes queryClauseType () const
 
virtual ~dbQueryBinary ()
 

Static Public Member Functions

static bool isWordSearch (dbQueryClause::BinaryQueryOps)
 
static bool wildcardsInString (const char *)
 

Static Public Attributes

static char sWildcardMultiple = '*'
 
static char sWildcardSingle = '?'
 

Protected Attributes

BinaryQueryOps mBinOp
 
dbQueryFieldmLhs
 
dbQueryClausemRhs
 

Detailed Description

Common binary query for field, eg: People.Salary > 90000.

Simple class returned by C++ overloads like dbChar::operator==

Definition at line 165 of file oofquery.h.

Constructor & Destructor Documentation

dbQueryBinary::dbQueryBinary ( dbQueryField fld,
BinaryQueryOps  op,
dbQueryClause litOrFld 
)

Definition at line 311 of file oofquery.cpp.

References dbQueryField::field(), and dbField::fieldIsStandalone().

Referenced by clone(), and cloneReplacingTable().

dbQueryBinary::dbQueryBinary ( BinaryQueryOps  op,
dbQueryClause litOrFld 
)
dbQueryBinary::dbQueryBinary ( const dbQueryBinary rhs)

Definition at line 319 of file oofquery.cpp.

References dbQueryField::clone(), and mLhs.

dbQueryBinary::~dbQueryBinary ( )
virtual

Definition at line 326 of file oofquery.cpp.

References mLhs.

Member Function Documentation

dbQueryClause::BinaryQueryOps dbQueryBinaryNofield::binaryOperator ( ) const
inlineinherited
dbQueryClause * dbQueryBinary::clone ( ) const
virtual

Reimplemented from dbQueryBinaryNofield.

Definition at line 333 of file oofquery.cpp.

References dbQueryBinary().

dbQueryClause * dbQueryBinary::cloneReplacingTable ( const dbTable inTable,
const dbTable repTable 
) const
virtual
void dbQueryBinary::describe ( std::ostream &  ) const
virtual
void dbQueryBinary::getSearchTables ( const dbTable inSchTable,
dbTable *&  outDiffFieldTable,
dbTable *&  outRelatedTable 
) const
virtual

Reimplemented from dbQueryClause.

Definition at line 368 of file oofquery.cpp.

References dbQueryField::getSearchTables(), and mLhs.

bool dbQueryBinary::isSimpleIndexedSearch ( ) const
bool dbQueryClause::isWordSearch ( dbQueryClause::BinaryQueryOps  inOp)
staticinherited

Definition at line 72 of file oofquery.cpp.

Referenced by OOF_ctreeBackend::CanUseIndex().

const dbField * dbQueryBinary::lhsField ( ) const
inline
dbQueryLiteral * dbQueryBinaryNofield::literalClause ( ) const
inherited
dbQueryLiteralStrMultiValue * dbQueryBinaryNofield::literalMultiStrClause ( ) const
inherited
dbQueryLiteralStr * dbQueryBinaryNofield::literalStrClause ( ) const
inherited
dbQueryBinaryCombo dbQueryClause::operator& ( const dbQueryClause rhs) const
inherited

Definition at line 80 of file oofquery.cpp.

References dbQueryClause::oofAND.

dbQueryBinaryComboOwner * dbQueryClause::operator& ( dbQueryClause adoptRHS)
inherited

Definition at line 122 of file oofquery.cpp.

References dbQueryClause::oofAND.

dbQueryBinaryCombo dbQueryClause::operator&& ( const dbQueryClause rhs) const
inherited

Definition at line 87 of file oofquery.cpp.

References dbQueryClause::oofAND.

dbQueryBinaryComboOwner * dbQueryClause::operator&& ( dbQueryClause adoptRHS)
inherited

Definition at line 129 of file oofquery.cpp.

References dbQueryClause::oofAND.

dbQueryBinaryCombo dbQueryClause::operator| ( const dbQueryClause rhs) const
inherited

Definition at line 94 of file oofquery.cpp.

References dbQueryClause::oofOR.

dbQueryBinaryComboOwner * dbQueryClause::operator| ( dbQueryClause adoptRHS)
inherited

Definition at line 108 of file oofquery.cpp.

References dbQueryClause::oofOR.

dbQueryBinaryCombo dbQueryClause::operator|| ( const dbQueryClause rhs) const
inherited

Definition at line 101 of file oofquery.cpp.

References dbQueryClause::oofOR.

dbQueryBinaryComboOwner * dbQueryClause::operator|| ( dbQueryClause adoptRHS)
inherited

Definition at line 115 of file oofquery.cpp.

References dbQueryClause::oofOR.

dbQueryClause::QueryClauseTypes dbQueryBinary::queryClauseType ( ) const
virtual
bool dbQueryClause::wildcardsInString ( const char *  schStr)
staticinherited

Member Data Documentation

BinaryQueryOps dbQueryBinaryNofield::mBinOp
protectedinherited
dbQueryField* dbQueryBinary::mLhs
protected
dbQueryClause* dbQueryBinaryNofield::mRhs
protectedinherited
char dbQueryClause::sWildcardMultiple = '*'
staticinherited
char dbQueryClause::sWildcardSingle = '?'
staticinherited

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