66 lines
1.8 KiB
C#
66 lines
1.8 KiB
C#
using System;
|
|
using System.Reflection;
|
|
using UnityEngine.Scripting;
|
|
using UnityEngineInternal;
|
|
|
|
namespace UnityEngine.Events
|
|
{
|
|
// Token: 0x02000488 RID: 1160
|
|
[Serializable]
|
|
public abstract class UnityEvent<T0, T1, T2> : UnityEventBase
|
|
{
|
|
// Token: 0x06003A02 RID: 14850 RVA: 0x000653D4 File Offset: 0x000635D4
|
|
[RequiredByNativeCode]
|
|
public UnityEvent()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06003A03 RID: 14851 RVA: 0x000653EC File Offset: 0x000635EC
|
|
public void AddListener(UnityAction<T0, T1, T2> call)
|
|
{
|
|
base.AddCall(UnityEvent<T0, T1, T2>.GetDelegate(call));
|
|
}
|
|
|
|
// Token: 0x06003A04 RID: 14852 RVA: 0x000653FC File Offset: 0x000635FC
|
|
public void RemoveListener(UnityAction<T0, T1, T2> call)
|
|
{
|
|
base.RemoveListener(call.Target, call.GetMethodInfo());
|
|
}
|
|
|
|
// Token: 0x06003A05 RID: 14853 RVA: 0x00065414 File Offset: 0x00063614
|
|
protected override MethodInfo FindMethod_Impl(string name, object targetObj)
|
|
{
|
|
return UnityEventBase.GetValidMethodInfo(targetObj, name, new Type[]
|
|
{
|
|
typeof(T0),
|
|
typeof(T1),
|
|
typeof(T2)
|
|
});
|
|
}
|
|
|
|
// Token: 0x06003A06 RID: 14854 RVA: 0x00065460 File Offset: 0x00063660
|
|
internal override BaseInvokableCall GetDelegate(object target, MethodInfo theFunction)
|
|
{
|
|
return new InvokableCall<T0, T1, T2>(target, theFunction);
|
|
}
|
|
|
|
// Token: 0x06003A07 RID: 14855 RVA: 0x0006547C File Offset: 0x0006367C
|
|
private static BaseInvokableCall GetDelegate(UnityAction<T0, T1, T2> action)
|
|
{
|
|
return new InvokableCall<T0, T1, T2>(action);
|
|
}
|
|
|
|
// Token: 0x06003A08 RID: 14856 RVA: 0x00065498 File Offset: 0x00063698
|
|
public void Invoke(T0 arg0, T1 arg1, T2 arg2)
|
|
{
|
|
this.m_InvokeArray[0] = arg0;
|
|
this.m_InvokeArray[1] = arg1;
|
|
this.m_InvokeArray[2] = arg2;
|
|
base.Invoke(this.m_InvokeArray);
|
|
}
|
|
|
|
// Token: 0x04001195 RID: 4501
|
|
private readonly object[] m_InvokeArray = new object[3];
|
|
}
|
|
}
|