Utils::Callable< R(P1, P2, P3, P4)> Class Template Reference

#include <Callable.h> [code]

Collaboration diagram for Utils::Callable< R(P1, P2, P3, P4)>:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<typename R, typename P1, typename P2, typename P3, typename P4>
class Utils::Callable< R(P1, P2, P3, P4)>

Definition at line 585 of file Callable.h.

Public Types

typedef R ReturnType
typedef P1 ParameterType1
typedef P2 ParameterType2
typedef P3 ParameterType3
typedef P4 ParameterType4

Public Member Functions

 Callable ()
 Callable (const Callable &other)
 Callable (Function f)
template<typename Class>
 Callable (Class &o, R(Class::*f)(P1, P2, P3, P4))
template<typename Class>
 Callable (Class *o, R(Class::*f)(P1, P2, P3, P4))
template<typename Class>
 Callable (const Class &o, R(Class::*f)(P1, P2, P3, P4) const)
template<typename Class>
 Callable (const Class *o, R(Class::*f)(P1, P2, P3, P4) const)
operator() (P1 a1, P2 a2, P3 a3, P4 a4)
bool operator== (const Callable &other) const
bool operator!= (const Callable &other) const

Private Types

typedef R(* Function )(P1, P2, P3, P4)

Private Attributes

AbstractValue< CallableImpl,
NullCallableImpl > 
impl

Classes

struct  CallableImpl
struct  ConstMemberFunctionCallableImpl
struct  FunctionCallableImpl
struct  MemberFunctionCallableImpl
struct  NullCallableImpl


Member Typedef Documentation

template<typename R, typename P1, typename P2, typename P3, typename P4>
typedef R(* Utils::Callable< R(P1, P2, P3, P4)>::Function)(P1, P2, P3, P4) [private]
 

Definition at line 607 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
typedef P1 Utils::Callable< R(P1, P2, P3, P4)>::ParameterType1
 

Definition at line 686 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
typedef P2 Utils::Callable< R(P1, P2, P3, P4)>::ParameterType2
 

Definition at line 687 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
typedef P3 Utils::Callable< R(P1, P2, P3, P4)>::ParameterType3
 

Definition at line 688 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
typedef P4 Utils::Callable< R(P1, P2, P3, P4)>::ParameterType4
 

Definition at line 689 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
typedef R Utils::Callable< R(P1, P2, P3, P4)>::ReturnType
 

Definition at line 685 of file Callable.h.


Constructor & Destructor Documentation

template<typename R, typename P1, typename P2, typename P3, typename P4>
Utils::Callable< R(P1, P2, P3, P4)>::Callable  )  [inline]
 

Definition at line 691 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
Utils::Callable< R(P1, P2, P3, P4)>::Callable const Callable< R(P1, P2, P3, P4)> &  other  )  [inline]
 

Definition at line 693 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
Utils::Callable< R(P1, P2, P3, P4)>::Callable Function  f  )  [inline]
 

Definition at line 695 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
template<typename Class>
Utils::Callable< R(P1, P2, P3, P4)>::Callable Class &  o,
R(Class::*)(P1, P2, P3, P4)  f
[inline]
 

Definition at line 698 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
template<typename Class>
Utils::Callable< R(P1, P2, P3, P4)>::Callable Class *  o,
R(Class::*)(P1, P2, P3, P4)  f
[inline]
 

Definition at line 702 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
template<typename Class>
Utils::Callable< R(P1, P2, P3, P4)>::Callable const Class &  o,
R(Class::*)(P1, P2, P3, P4) const   f
[inline]
 

Definition at line 706 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
template<typename Class>
Utils::Callable< R(P1, P2, P3, P4)>::Callable const Class *  o,
R(Class::*)(P1, P2, P3, P4) const   f
[inline]
 

Definition at line 710 of file Callable.h.


Member Function Documentation

template<typename R, typename P1, typename P2, typename P3, typename P4>
bool Utils::Callable< R(P1, P2, P3, P4)>::operator!= const Callable< R(P1, P2, P3, P4)> &  other  )  const [inline]
 

Definition at line 717 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
R Utils::Callable< R(P1, P2, P3, P4)>::operator() P1  a1,
P2  a2,
P3  a3,
P4  a4
[inline]
 

Definition at line 713 of file Callable.h.

template<typename R, typename P1, typename P2, typename P3, typename P4>
bool Utils::Callable< R(P1, P2, P3, P4)>::operator== const Callable< R(P1, P2, P3, P4)> &  other  )  const [inline]
 

Definition at line 715 of file Callable.h.


Member Data Documentation

template<typename R, typename P1, typename P2, typename P3, typename P4>
AbstractValue<CallableImpl, NullCallableImpl> Utils::Callable< R(P1, P2, P3, P4)>::impl [private]
 

Definition at line 720 of file Callable.h.


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