21.2 Predefined OEChem Functors

There are many useful functors already defined in OEChem. These can be used by programmers with little or no understanding of the details of how functors work. A programmer can simply pass them to one of the many OEChem functions which take predicates as arguments with the expectation that they will behave as described in the api manual.

The predefined functors in OEChem include:

OEAtomBase Functors

OEHasAtomIdx(int)
OEHasAtomName(string)
OEHasMapIdx(int=0)
OEHasAtomicNum(int)
OEIsRGroup(int=0)
OENthAtom(int,int)
OEMatchFunc(string)
OEAtomIsInRing
OEIsChiralAtom
OEHasStereoSpecified
OEHasAlphaBetaUnsat
OEAtomIsInResidue
OEIsHydrogen
OEIsHeavy
OEIsPolar
OEIsPolarHydrogen
OEIsCarbon
OEIsNitrogen
OEIsOxygen
OEIsHalogen
OEIsSulfur
OEIsPhosphorus
OEIsAromaticAtom

Residue data Functors in OEAtomBases

OEHasChainID(string)
OEHasResidueNumber(int)
OEHasFragmentNumber(int)

OEBondBase Functors

OEHasBondIdx(int)
OEHasOrder(int)
OEBondIsInRing
OEIsRotor
OEIsChiralBond
OEHasBondStereoSpecified
OEIsAromaticBond

OEConfBase Functors

OEHasConfIdx(int)