RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
Queries::OrQuery< MatchFuncArgType, DataFuncArgType, needsConversion > Class Template Reference

a Query implementing AND: requires any child to be true More...

#include <OrQuery.h>

Inheritance diagram for Queries::OrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >:
Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >

Public Types

typedef Query< MatchFuncArgType, DataFuncArgType, needsConversion > BASE
 
- Public Types inherited from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >
using CHILD_TYPE = std::shared_ptr< Query< MatchFuncArgType, DataFuncArgType, needsConversion > >
 
using CHILD_VECT = std::vector< CHILD_TYPE >
 
using CHILD_VECT_I = typename CHILD_VECT::iterator
 
using CHILD_VECT_CI = typename CHILD_VECT::const_iterator
 
using MATCH_FUNC_ARG_TYPE = MatchFuncArgType
 
using DATA_FUNC_ARG_TYPE = DataFuncArgType
 

Public Member Functions

 OrQuery ()
 
bool Match (const DataFuncArgType what) const override
 returns whether or not we match the argument
 
Query< MatchFuncArgType, DataFuncArgType, needsConversion > * copy () const override
 returns a copy of this Query
 
- Public Member Functions inherited from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >
 Query ()
 
virtual ~Query ()
 
void setNegation (bool what)
 sets whether or not we are negated
 
bool getNegation () const
 returns whether or not we are negated
 
void setDescription (const std::string &descr)
 sets our text description
 
void setDescription (const char *descr)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
const std::string & getDescription () const
 returns our text description
 
virtual std::string getFullDescription () const
 returns a fuller text description
 
void setTypeLabel (const std::string &typ)
 sets our type label
 
void setTypeLabel (const char *typ)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
const std::string & getTypeLabel () const
 returns our text label.
 
void setMatchFunc (bool(*what)(MatchFuncArgType))
 sets our match function
 
void setDataFunc (MatchFuncArgType(*what)(DataFuncArgType))
 sets our data function
 
void addChild (CHILD_TYPE child)
 adds a child to our list of children
 
CHILD_VECT_CI beginChildren () const
 returns an iterator for the beginning of our child vector
 
CHILD_VECT_CI endChildren () const
 returns an iterator for the end of our child vector
 

Additional Inherited Members

- Public Attributes inherited from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >
bool(*)(MatchFuncArgType) getMatchFunc () const
 returns our match function:
 
MatchFuncArgType(*)(DataFuncArgType) getDataFunc () const
 returns our data function:
 
- Protected Member Functions inherited from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >
MatchFuncArgType TypeConvert (MatchFuncArgType what, Int2Type< false >) const
 calls our dataFunc (if it's set) on what and returns the result, otherwise returns what
 
MatchFuncArgType TypeConvert (DataFuncArgType what, Int2Type< true >) const
 
- Protected Attributes inherited from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >
MatchFuncArgType d_val = 0
 
MatchFuncArgType d_tol = 0
 
std::string d_description = ""
 
std::string d_queryType = ""
 
CHILD_VECT d_children
 
bool df_negate {false}
 
bool(* d_matchFunc )(MatchFuncArgType)
 
union { 
 
   MatchFuncArgType(*   d_dataFunc )(DataFuncArgType) 
 
   MatchFuncArgType(*   d_dataFuncSameType )(MatchFuncArgType) 
 
};  
 

Detailed Description

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
class Queries::OrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >

a Query implementing AND: requires any child to be true

Definition at line 20 of file OrQuery.h.

Member Typedef Documentation

◆ BASE

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
typedef Query<MatchFuncArgType, DataFuncArgType, needsConversion> Queries::OrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::BASE

Definition at line 23 of file OrQuery.h.

Constructor & Destructor Documentation

◆ OrQuery()

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
Queries::OrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::OrQuery ( )
inline

Definition at line 24 of file OrQuery.h.

Member Function Documentation

◆ copy()

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
Query< MatchFuncArgType, DataFuncArgType, needsConversion > * Queries::OrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy ( ) const
inlineoverridevirtual

◆ Match()

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
bool Queries::OrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::Match ( const DataFuncArgType  arg) const
inlineoverridevirtual

returns whether or not we match the argument

Reimplemented from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >.

Definition at line 26 of file OrQuery.h.


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