private Expression _paramlessCheck; // tests when we have no parameters public FunctionBinderHelper(DynamicMetaObjectBinder/*!*/ call, MetaPythonFunction/*!*/ function, Expression codeContext, DynamicMetaObject/*!*/[]/*!*/ args) { PerfTrack.NoteEvent(PerfTrack.Categories.Binding, "PythonFunction Invoke " + function.Value.FunctionCompatibility + " w/ " + args.Length + " args"); PerfTrack.NoteEvent(PerfTrack.Categories.BindingTarget, "PythonFunction"); _call = call; _func = function; _args = args; _originalArgs = args; _temps = new List<ParameterExpression>(); _codeContext = codeContext; // Remove the passed in instance argument if present int instanceIndex = Signature.IndexOf(ArgumentType.Instance); if (instanceIndex > -1) { _args = ArrayUtils.RemoveAt(_args, instanceIndex); } }
private Expression _paramlessCheck; // tests when we have no parameters public FunctionBinderHelper(DynamicMetaObjectBinder/*!*/ call, MetaPythonFunction/*!*/ function, Expression codeContext, DynamicMetaObject/*!*/[]/*!*/ args) { _call = call; _func = function; _args = args; _originalArgs = args; _temps = new List<ParameterExpression>(); _codeContext = codeContext; // Remove the passed in instance argument if present int instanceIndex = Signature.IndexOf(ArgumentType.Instance); if (instanceIndex > -1) { _args = ArrayUtils.RemoveAt(_args, instanceIndex); } }