using System;
public class InvokableEvent : InvokableEventBase {
public System.Action action;
public void Invoke() {
action();
}
public override void Invoke(params object[] args) {
action();
}
/// Constructor
public InvokableEvent(object target, string methodName) {
if (target == null || string.IsNullOrEmpty(methodName)) {
action = () => { };
} else {
action = (System.Action) System.Delegate.CreateDelegate(typeof(System.Action), target, methodName);
}
}
}
public class InvokableEvent : InvokableEventBase {
public Action action;
public void Invoke(T0 arg0) {
action(arg0);
}
public override void Invoke(params object[] args) {
action((T0) args[0]);
}
/// Constructor
public InvokableEvent(object target, string methodName) {
if (target == null || string.IsNullOrEmpty(methodName)) {
action = x => { };
} else {
action = (System.Action) System.Delegate.CreateDelegate(typeof(System.Action), target, methodName);
}
}
}
public class InvokableEvent : InvokableEventBase {
public Action action;
public void Invoke(T0 arg0, T1 arg1) {
action(arg0, arg1);
}
public override void Invoke(params object[] args) {
action((T0) args[0], (T1) args[1]);
}
/// Constructor
public InvokableEvent(object target, string methodName) {
if (target == null || string.IsNullOrEmpty(methodName)) {
action = (x, y) => { };
} else {
action = (System.Action) System.Delegate.CreateDelegate(typeof(System.Action), target, methodName);
}
}
}
public class InvokableEvent : InvokableEventBase {
public Action action;
public void Invoke(T0 arg0, T1 arg1, T2 arg2) {
action(arg0, arg1, arg2);
}
public override void Invoke(params object[] args) {
action((T0) args[0], (T1) args[1], (T2) args[2]);
}
/// Constructor
public InvokableEvent(object target, string methodName) {
if (target == null || string.IsNullOrEmpty(methodName)) {
action = (x, y, z) => { };
} else {
action = (System.Action) System.Delegate.CreateDelegate(typeof(System.Action), target, methodName);
}
}
}
public class InvokableEvent : InvokableEventBase {
public Action action;
public void Invoke(T0 arg0, T1 arg1, T2 arg2, T3 arg3) {
action(arg0, arg1, arg2, arg3);
}
public override void Invoke(params object[] args) {
action((T0) args[0], (T1) args[1], (T2) args[2], (T3) args[3]);
}
/// Constructor
public InvokableEvent(object target, string methodName) {
if (target == null || string.IsNullOrEmpty(methodName)) {
action = (x, y, z, w) => { };
} else {
action = (System.Action) System.Delegate.CreateDelegate(typeof(System.Action), target, methodName);
}
}
}