64 lines
1.5 KiB
C#
64 lines
1.5 KiB
C#
using System;
|
|
using System.Reflection;
|
|
|
|
namespace UnityEngine.Events
|
|
{
|
|
// Token: 0x02000475 RID: 1141
|
|
internal abstract class BaseInvokableCall
|
|
{
|
|
// Token: 0x0600397C RID: 14716 RVA: 0x00063DFC File Offset: 0x00061FFC
|
|
protected BaseInvokableCall()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0600397D RID: 14717 RVA: 0x00063E08 File Offset: 0x00062008
|
|
protected BaseInvokableCall(object target, MethodInfo function)
|
|
{
|
|
if (target == null)
|
|
{
|
|
throw new ArgumentNullException("target");
|
|
}
|
|
if (function == null)
|
|
{
|
|
throw new ArgumentNullException("function");
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600397E RID: 14718
|
|
public abstract void Invoke(object[] args);
|
|
|
|
// Token: 0x0600397F RID: 14719 RVA: 0x00063E34 File Offset: 0x00062034
|
|
protected static void ThrowOnInvalidArg<T>(object arg)
|
|
{
|
|
if (arg != null && !(arg is T))
|
|
{
|
|
throw new ArgumentException(UnityString.Format("Passed argument 'args[0]' is of the wrong type. Type:{0} Expected:{1}", new object[]
|
|
{
|
|
arg.GetType(),
|
|
typeof(T)
|
|
}));
|
|
}
|
|
}
|
|
|
|
// Token: 0x06003980 RID: 14720 RVA: 0x00063E74 File Offset: 0x00062074
|
|
protected static bool AllowInvoke(Delegate @delegate)
|
|
{
|
|
object target = @delegate.Target;
|
|
bool flag;
|
|
if (target == null)
|
|
{
|
|
flag = true;
|
|
}
|
|
else
|
|
{
|
|
Object @object = target as Object;
|
|
flag = object.ReferenceEquals(@object, null) || @object != null;
|
|
}
|
|
return flag;
|
|
}
|
|
|
|
// Token: 0x06003981 RID: 14721
|
|
public abstract bool Find(object targetObj, MethodInfo method);
|
|
}
|
|
}
|