template<typename T, typename A1, typename A2, typename R>
sead::Delegate2R class

Template parameters
T Class type
A1 Type of the first argument
A2 Type of the second argument
R Return type

Base classes

template<typename T, typename PTMF, typename Base>
class DelegateBase<T, R(T::*)(A1, A2), IDelegate2R<A1, A2, R>>
Base class for delegate implementations.

Public types

using Base = DelegateBase<T, R(T::*)(A1, A2), IDelegate2R<A1, A2, R>>

Public functions

auto invoke(A1 a1, A2 a2) -> R override
auto operator()(A1 a1, A2 a2) const -> R
auto clone(Heap* heap) const -> Delegate2R* override
auto instance() const -> T*
void setInstance(T* instance)
void setFunction(R(T::*)(A1, A2) fn)
void bind(T* instance, R(T::*)(A1, A2) fn)
auto isNoDummy() const -> bool virtual
auto operator()(A1 a1, A2 a2) -> R

Protected variables

T* mInstance
R(T::*)(A1, A2) mFunctionPtr