public void Setup() { MethodVoid methodVoid = PrintHello; MethodInt methodInt = Inc; myDelegateVoid = new(methodVoid.Method); myDelegateInt = new(methodInt.Method); }
public void TestMyDelegateReturnValue() { MethodInt method = Inc; myDelegateInt += method.Method; method -= Inc; method += Dec; myDelegateInt += method.Method; myDelegateInt += method.Method; method -= Dec; method += ThrowException; myDelegateInt += method.Method; myDelegateInt += method.Method; var value = (int)myDelegateInt.Invoke(this, new object[] { 6 }); Console.WriteLine($"Result: {value}"); }
public static void Remove(string name, MethodInt method, params object[] targets) { Events.Remove(name, (object)method, targets); }
public static EventListener AddLimited(string name, MethodInt method, int amount = 1, params object[] targets) { return(Events.Add(name, (object)method, amount, targets)); }
public static EventListener Add(string name, MethodInt method, params object[] targets) { return(Events.Add(name, (object)method, -1, targets)); }