1 #ifndef __JLANG__JFIND_IF__
2 #define __JLANG__JFIND_IF__
12 namespace JPP {
using namespace JLANG; }
21 template<
class JTypename_t,
class JPredicate_t>
28 template<
class T,
class JResult_t,
class JPredicate_t>
59 return predicate(
object.*member);
71 template<
class T,
class JResult_t,
class JPredicate_t>
72 class JFind_if<JResult_t (T::*)() const, JPredicate_t> {
77 typedef JResult_t (T::*member_method)()
const;
102 return predicate((
object.*
function)());
106 member_method
function;
118 template<
class T,
class JResult_t,
class JPredicate_t>
132 template<
class T,
class JResult_t,
class JPredicate_t>
133 JFind_if<JResult_t (T::*)()
const, JPredicate_t>
make_find_if(JResult_t (T::*
function)()
const,
const JPredicate_t& predicate)
Template specialisation of JFind_if for selection of objects via data member.
JClass< data_type >::argument_type argument_type
JPredicate_t predicate_type
Type definition of predicate.
bool operator()(const T &object) const
Select objets.
const predicate_type & predicate
JResult_t T::* data_member
Type definition of data member.
JFind_if(data_member member, const predicate_type &predicate)
Constructor.
Template specialisation of JFind_if for selection of objects via member method.
JFind_if(member_method function, const predicate_type &predicate)
Constructor.
bool operator()(const T &object) const
Select objets.
const predicate_type & predicate
JPredicate_t predicate_type
Type definition of predicate.
JClass< data_type >::argument_type argument_type
Template definition of auxiliary class to select objects.
Auxiliary classes and methods for language specific functionality.
JFind_if< JResult_t(T::*)() const, JPredicate_t > make_find_if(JResult_t(T::*function)() const, const JPredicate_t &predicate)
Helper method to create find_if for return values of member method.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
JArgument< T >::argument_type argument_type