@Override
  public void visitMethodCall(@NotNull GrMethodCall call) {
    super.visitMethodCall(call); // visitExpression

    if (isFake(call)) return;
    GrArgumentList argumentList = call.getArgumentList();
    if (hasErrorElements(argumentList)) return;

    GroovyMethodCallReference callReference = call.getCallReference();
    if (callReference == null) {
      return;
    }

    PsiElement highlightElement;
    if (argumentList.getTextLength() == 0) {
      highlightElement = call;
    }
    else {
      highlightElement = argumentList;
    }

    CallReferenceHighlighter highlighter = new MethodCallReferenceHighlighter(callReference, highlightElement, myHighlightSink);
    if (highlighter.highlightMethodApplicability()) {
      return;
    }
    checkNamedArgumentsType(call);
  }
@Override
  public void visitMethodCall(@NotNull GrMethodCall call)