STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Static Public Member Functions | List of all members
_Pmd_caller< _Ret, _Arg0 > Struct Template Reference

Static Public Member Functions

template<class _Pmd , class _Farg0 >
static _Ret & _Call_pmd (_Pmd _Pm, _Farg0 &&_Fx0, true_type)
 
template<class _Pmd , class _Farg0 >
static _Ret & _Call_pmd (_Pmd _Pm, _Farg0 &&_Fx0, false_type)
 
template<class _Pmd , class _Farg0 >
static _Ret & _Apply_pmd (_Pmd _Pm, _Farg0 &&_Fx0)
 

Member Function Documentation

template<class _Ret , class _Arg0 >
template<class _Pmd , class _Farg0 >
static _Ret& _Pmd_caller< _Ret, _Arg0 >::_Apply_pmd ( _Pmd  _Pm,
_Farg0 &&  _Fx0 
)
inlinestatic
146  { // apply to object
147  typedef typename remove_cv<
148  typename remove_reference<_Arg0>::type>::type _Arg0_bare;
149  typedef typename remove_cv<
150  typename remove_reference<_Farg0>::type>::type _Farg0_bare;
152  || (is_base_of<_Arg0_bare, _Farg0_bare>::value
154  _Farg0>::value)> _Is_obj;
155 
156  return (_Call_pmd<_Pmd, _Farg0>(_Pm,
157  _STD forward<_Farg0>(_Fx0), _Is_obj()));
158  }
Definition: xtr1common:157
Definition: xtr1common:52
_Ty type
Definition: xtr1common:316
Definition: xtr1common:94
template<class _Ret , class _Arg0 >
template<class _Pmd , class _Farg0 >
static _Ret& _Pmd_caller< _Ret, _Arg0 >::_Call_pmd ( _Pmd  _Pm,
_Farg0 &&  _Fx0,
true_type   
)
inlinestatic
132  { // apply to object
133  return ((_Ret&)(_Fx0.*_Pm));
134  }
template<class _Ret , class _Arg0 >
template<class _Pmd , class _Farg0 >
static _Ret& _Pmd_caller< _Ret, _Arg0 >::_Call_pmd ( _Pmd  _Pm,
_Farg0 &&  _Fx0,
false_type   
)
inlinestatic
139  { // apply to (possibly smart) pointer
140  return ((_Ret&)((*_Fx0).*_Pm));
141  }

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