RDKit: Queries::XOrQuery< MatchFuncArgType, DataFuncArgType, needsConversion > Class Template Reference

| RDKit Open-source cheminformatics and machine learning.

Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
Queries::XOrQuery< MatchFuncArgType, DataFuncArgType, needsConversion > Class Template Reference

a Query implementing XOR: requires exactly one child to be `true` More...

`#include <XOrQuery.h>`

Inheritance diagram for Queries::XOrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >:

## Public Types
typedef Query< MatchFuncArgType, DataFuncArgType, needsConversion > | BASE
Public Types inherited from Queries::Query< MatchFuncArgType, MatchFuncArgType, false >
using | CHILD_TYPE
using | CHILD_VECT
using | CHILD_VECT_I
using | CHILD_VECT_CI
using | MATCH_FUNC_ARG_TYPE
using | DATA_FUNC_ARG_TYPE

## Public Member Functions
| XOrQuery ()
bool | Match (const DataFuncArgType what) const override
Query< MatchFuncArgType, DataFuncArgType, needsConversion > * | copy () const override
| returns a copy of this Query
Public Member Functions inherited from Queries::Query< MatchFuncArgType, MatchFuncArgType, false >
| 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)(MatchFuncArgType))
| 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
virtual bool | Match (const MatchFuncArgType arg) const
| returns whether or not we match the argument

## Additional Inherited Members
Public Attributes inherited from Queries::Query< MatchFuncArgType, MatchFuncArgType, false >
bool(*)(MatchFuncArgType) | getMatchFunc () const
| returns our match function:
MatchFuncArgType(*)(MatchFuncArgType) | getDataFunc () const
| returns our data function:
MatchFuncArgType(* | d_dataFunc )(MatchFuncArgType)
MatchFuncArgType(* | d_dataFuncSameType )(MatchFuncArgType)
Protected Member Functions inherited from Queries::Query< MatchFuncArgType, MatchFuncArgType, false >
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 (MatchFuncArgType what, Int2Type< true >) const
Protected Attributes inherited from Queries::Query< MatchFuncArgType, MatchFuncArgType, false >
MatchFuncArgType | d_val
MatchFuncArgType | d_tol
std::string | d_description
std::string | d_queryType
CHILD_VECT | d_children
bool | df_negate
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::XOrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >

a Query implementing XOR: requires exactly one child to be `true`

Definition at line 21 of file XOrQuery.h.

## Member Typedef Documentation

## ◆ BASE

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

typedef Query<MatchFuncArgType, DataFuncArgType, needsConversion> Queries::XOrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::BASE

Definition at line 24 of file XOrQuery.h.

## Constructor & Destructor Documentation

## ◆ XOrQuery()

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

Queries::XOrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::XOrQuery | ( |  | ) |
| inline

Definition at line 25 of file XOrQuery.h.

## Member Function Documentation

## ◆ copy()

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

Query< MatchFuncArgType, DataFuncArgType, needsConversion > * Queries::XOrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy | ( |  | ) | const
| inlineoverridevirtual

returns a copy of this Query

Notes:

- the caller is responsible for `delete`ing the result

Reimplemented from Queries::Query< MatchFuncArgType, MatchFuncArgType, false >.

Definition at line 47 of file XOrQuery.h.

## ◆ Match()

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

bool Queries::XOrQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::Match | ( | const DataFuncArgType | what | ) | const
| inlineoverride

Definition at line 27 of file XOrQuery.h.

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

- XOrQuery.h