15# pragma warning(disable:4503)
16# pragma warning(disable: 4786)
57template <
class _Ty,
class _Arg>
78template <
class Actor,
class _Ty =
int>
93 : itsFunction(anAction)
104 return (anActor->*itsFunction)();
134template <
class Adaptee,
class _Ty =
int>
143 : itsAdaptee(anAdaptee), itsAction(anAction)
157 return itsAction.execute(itsAdaptee);
ActionAdapter(Adaptee *anAdaptee, Action< Adaptee, _Ty > anAction)
_Ty(Actor::*) ActionFunction()
_Ty execute(Actor *anActor)
Action(ActionFunction anAction)
virtual _Ty operator()(void)=0
virtual _Ty operator()(ArgType &)=0