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

Builder class used to combine sub-queries when constructing runtime queries. More...

#include <oofquery.h>

Inheritance diagram for dbQueryBinaryComboOwner:
Inheritance graph
[legend]
Collaboration diagram for dbQueryBinaryComboOwner:
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::QueryCombinatorialOps binaryOperator () const
 
virtual dbQueryClauseclone () const
 
virtual dbQueryClausecloneReplacingTable (const dbTable *inTable, const dbTable *repTable) const
 conditionally clone if LHS or RHS clause requires replacement. More...
 
 dbQueryBinaryComboOwner (dbQueryClause *, QueryCombinatorialOps, dbQueryClause *)
 
virtual void describe (std::ostream &) const
 
virtual void getSearchTables (const dbTable *inSchTable, dbTable *&outDiffFieldTable, dbTable *&outRelatedTable) const
 
bool isSimpleIndexedSearch () const
 
const dbQueryClauseitem (unsigned int) const
 
dbQueryClausemakeCompoundSearch (const dbCompoundField *)
 
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)
 
unsigned long pairFieldsIfCouldUseCompoundIndex () const
 
virtual dbQueryClause::QueryClauseTypes queryClauseType () const
 
virtual ~dbQueryBinaryComboOwner ()
 

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

QueryCombinatorialOps mComboOp
 
const dbQueryClausemLhs
 
const dbQueryClausemRhs
 
char * mTempKeyStoreToDispose
 
char * mTempKeyStoreToDispose2
 

Detailed Description

Builder class used to combine sub-queries when constructing runtime queries.

It can delete heap objects unlike the normal combinatorial dbQueryBinaryCombo which is used by C++ operator overloads.

See also
dbQuery

Definition at line 244 of file oofquery.h.

Constructor & Destructor Documentation

dbQueryBinaryComboOwner::dbQueryBinaryComboOwner ( dbQueryClause lhs,
QueryCombinatorialOps  op,
dbQueryClause rhs 
)

Definition at line 643 of file oofquery.cpp.

Referenced by clone().

dbQueryBinaryComboOwner::~dbQueryBinaryComboOwner ( )
virtual

Definition at line 650 of file oofquery.cpp.

Member Function Documentation

dbQueryClause::QueryCombinatorialOps dbQueryBinaryCombo::binaryOperator ( ) const
inlineinherited
dbQueryClause * dbQueryBinaryComboOwner::clone ( ) const
virtual

Reimplemented from dbQueryBinaryCombo.

Definition at line 658 of file oofquery.cpp.

References dbQueryBinaryComboOwner().

dbQueryClause * dbQueryBinaryCombo::cloneReplacingTable ( const dbTable inTable,
const dbTable repTable 
) const
virtualinherited

conditionally clone if LHS or RHS clause requires replacement.

Reimplemented from dbQueryClause.

Definition at line 457 of file oofquery.cpp.

References dbQueryClause::clone(), dbQueryClause::cloneReplacingTable(), dbQueryBinaryCombo::dbQueryBinaryCombo(), dbQueryBinaryCombo::mComboOp, dbQueryBinaryCombo::mLhs, and dbQueryBinaryCombo::mRhs.

void dbQueryBinaryComboOwner::describe ( std::ostream &  ) const
virtual

Reimplemented from dbQueryBinaryCombo.

Definition at line 665 of file oofquery.cpp.

References dbQueryClause::describe(), and dbQueryBinaryCombo::mComboOp.

void dbQueryClause::getSearchTables ( const dbTable inSchTable,
dbTable *&  outDiffFieldTable,
dbTable *&  outRelatedTable 
) const
virtualinherited
bool dbQueryClause::isSimpleIndexedSearch ( ) const
inherited

Definition at line 65 of file oofquery.cpp.

bool dbQueryClause::isWordSearch ( dbQueryClause::BinaryQueryOps  inOp)
staticinherited

Definition at line 72 of file oofquery.cpp.

Referenced by OOF_ctreeBackend::CanUseIndex().

const dbQueryClause * dbQueryBinaryCombo::item ( unsigned int  i) const
inherited
dbQueryClause * dbQueryBinaryCombo::makeCompoundSearch ( const dbCompoundField fld)
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.

unsigned long dbQueryBinaryCombo::pairFieldsIfCouldUseCompoundIndex ( ) const
inherited
dbQueryClause::QueryClauseTypes dbQueryBinaryCombo::queryClauseType ( ) const
virtualinherited

Implements dbQueryClause.

Definition at line 491 of file oofquery.cpp.

References dbQueryClause::binaryCombination.

bool dbQueryClause::wildcardsInString ( const char *  schStr)
staticinherited

Member Data Documentation

QueryCombinatorialOps dbQueryBinaryCombo::mComboOp
protectedinherited
const dbQueryClause* dbQueryBinaryCombo::mLhs
protectedinherited
const dbQueryClause * dbQueryBinaryCombo::mRhs
protectedinherited
char* dbQueryBinaryCombo::mTempKeyStoreToDispose
protectedinherited
char * dbQueryBinaryCombo::mTempKeyStoreToDispose2
protectedinherited
char dbQueryClause::sWildcardMultiple = '*'
staticinherited
char dbQueryClause::sWildcardSingle = '?'
staticinherited

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