private T VisitMethodCallCore(MethodCallExpression term) { MethodInfo method = term.Method; TrigonometryFunction trigFunction; if (Trigonometry.TryParse(method, out trigFunction)) { return(VisitTrigonometry(term, trigFunction)); } ExponentialFunction expFunction; if (Exponential.TryParse(method, out expFunction)) { return(VisitExponential(term, expFunction)); } return(VisitOtherMethodCall(term)); }