public static object FastDynamicInvoke(this Delegate functor, params object[] arguments) { if (functor.Method.ReturnType == typeof(void)) { InvocationMapping.DynamicInvokeAction(functor, arguments); return(null); } return(InvocationMapping.DynamicInvokeReturn(functor, arguments)); }