public List <System.Object> Execute() { inError = false; error = null; if (func.InError) { inError = true; error = new Exception(func.ErrorString); output = null; return(null); } try { // Evaluate input expressions to yield the input arguments List <System.Object> inputArguments = new List <System.Object>(func.Ins.Count); foreach (JITExpression e in inputExpressions) { inputArguments.Add(e.Execute()); } // Call function using input arguments output = func.Execute(inputArguments); return(output); } catch (Exception e) { inError = true; error = e; output = null; return(null); } }
public List <Object> Run(JITFunction f) { if (f.InError) { throw new Exception(f.ErrorString); } List <Object> r = f.Execute(new List <Object>()); if (f.InError) { throw new Exception(f.ErrorString); } return(r); }