public AbstractType Visit(PostfixExpression_MethodCall call) { List <ISemantic> callArgs; ISymbolValue delegValue; AbstractType[] baseExpression; TemplateInstanceExpression tix; GetRawCallOverloads(ctxt, call.PostfixForeExpression, out baseExpression, out tix); return(Evaluation.EvalMethodCall(baseExpression, null, tix, ctxt, call, out callArgs, out delegValue, !ctxt.Options.HasFlag(ResolutionOptions.ReturnMethodReferencesOnly))); }
public AbstractType Visit(PostfixExpression_MethodCall call) { List <ISemantic> callArgs; ISymbolValue delegValue; AbstractType[] baseExpression; TemplateInstanceExpression tix; GetRawCallOverloads(ctxt, call, out baseExpression, out tix); var argTypeFilteredOverloads = Evaluation.EvalMethodCall(baseExpression, null, tix, ctxt, call, out callArgs, out delegValue, !ctxt.Options.HasFlag(ResolutionOptions.ReturnMethodReferencesOnly)); // Check if one overload remains and return that one. ctxt.CheckForSingleResult(argTypeFilteredOverloads, call); return(argTypeFilteredOverloads != null && argTypeFilteredOverloads.Count != 0 ? argTypeFilteredOverloads[0] : null); }