51 lines
1.6 KiB
C#
51 lines
1.6 KiB
C#
using System;
|
|
using System.Diagnostics;
|
|
using System.Reflection;
|
|
using UnityEngineInternal;
|
|
|
|
namespace UnityEngine.Events
|
|
{
|
|
// Token: 0x02000477 RID: 1143
|
|
internal class InvokableCall<T1> : BaseInvokableCall
|
|
{
|
|
// Token: 0x06003988 RID: 14728 RVA: 0x00063FC4 File Offset: 0x000621C4
|
|
public InvokableCall(object target, MethodInfo theFunction)
|
|
: base(target, theFunction)
|
|
{
|
|
this.Delegate += (UnityAction<T1>)theFunction.CreateDelegate(typeof(UnityAction<T1>), target);
|
|
}
|
|
|
|
// Token: 0x06003989 RID: 14729 RVA: 0x00063FEC File Offset: 0x000621EC
|
|
public InvokableCall(UnityAction<T1> action)
|
|
{
|
|
this.Delegate += action;
|
|
}
|
|
|
|
// Token: 0x1400002D RID: 45
|
|
// (add) Token: 0x0600398A RID: 14730 RVA: 0x00063FFC File Offset: 0x000621FC
|
|
// (remove) Token: 0x0600398B RID: 14731 RVA: 0x00064034 File Offset: 0x00062234
|
|
[field: DebuggerBrowsable(DebuggerBrowsableState.Never)]
|
|
protected event UnityAction<T1> Delegate;
|
|
|
|
// Token: 0x0600398C RID: 14732 RVA: 0x0006406C File Offset: 0x0006226C
|
|
public override void Invoke(object[] args)
|
|
{
|
|
if (args.Length != 1)
|
|
{
|
|
throw new ArgumentException("Passed argument 'args' is invalid size. Expected size is 1");
|
|
}
|
|
BaseInvokableCall.ThrowOnInvalidArg<T1>(args[0]);
|
|
if (BaseInvokableCall.AllowInvoke(this.Delegate))
|
|
{
|
|
this.Delegate((T1)((object)args[0]));
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600398D RID: 14733 RVA: 0x000640BC File Offset: 0x000622BC
|
|
public override bool Find(object targetObj, MethodInfo method)
|
|
{
|
|
return this.Delegate.Target == targetObj && this.Delegate.GetMethodInfo().Equals(method);
|
|
}
|
|
}
|
|
}
|