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

a Query implementing a set: arguments must one of a set of values More...

#include <SetQuery.h>

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

Public Types

typedef std::set< MatchFuncArgType > CONTAINER_TYPE
 
- 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

 SetQuery ()
 
void insert (const MatchFuncArgType what)
 insert an entry into our set
 
void clear ()
 clears our set
 
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
 
CONTAINER_TYPE::const_iterator beginSet () const
 
CONTAINER_TYPE::const_iterator endSet () const
 
unsigned int size () const
 
std::string getFullDescription () const override
 returns a fuller text description
 
- 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
 
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
 

Protected Attributes

CONTAINER_TYPE d_set
 
- 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) 
 
};  
 

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
 

Detailed Description

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

a Query implementing a set: arguments must one of a set of values

Definition at line 25 of file SetQuery.h.

Member Typedef Documentation

◆ CONTAINER_TYPE

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
typedef std::set<MatchFuncArgType> Queries::SetQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::CONTAINER_TYPE

Definition at line 28 of file SetQuery.h.

Constructor & Destructor Documentation

◆ SetQuery()

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

Definition at line 30 of file SetQuery.h.

Member Function Documentation

◆ beginSet()

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
CONTAINER_TYPE::const_iterator Queries::SetQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::beginSet ( ) const
inline

Definition at line 63 of file SetQuery.h.

◆ clear()

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

clears our set

Definition at line 40 of file SetQuery.h.

◆ copy()

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

◆ endSet()

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
CONTAINER_TYPE::const_iterator Queries::SetQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::endSet ( ) const
inline

Definition at line 66 of file SetQuery.h.

◆ getFullDescription()

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
std::string Queries::SetQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getFullDescription ( ) const
inlineoverridevirtual

returns a fuller text description

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

Definition at line 69 of file SetQuery.h.

◆ insert()

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
void Queries::SetQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::insert ( const MatchFuncArgType  what)
inline

◆ Match()

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
bool Queries::SetQuery< 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 42 of file SetQuery.h.

◆ size()

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
unsigned int Queries::SetQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::size ( ) const
inline

Definition at line 67 of file SetQuery.h.

Member Data Documentation

◆ d_set

template<class MatchFuncArgType , class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
CONTAINER_TYPE Queries::SetQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_set
protected

Definition at line 84 of file SetQuery.h.


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