@Override public void visitReferenceExpression(final @NotNull PsiReferenceExpression expression) {
        super.visitReferenceElement(expression);
        final PsiElement psiElement = expression.resolve();
        if (psiElement == null) {
          return;
        }
        if (psiElement instanceof PsiField field) {
          if (field.getContainingClass().equals(classToBind)) {
            if (Utils.isBoundField(rootContainer, field.getName())) {
              result.set(Boolean.TRUE);
            }
          }
        }
        else if (psiElement instanceof PsiMethod method) {
          if (method.isConstructor()) {
            if (method.getContainingClass() == classToBind) {
              if (callsThisConstructor != null) {
                callsThisConstructor.set(Boolean.TRUE);
              }
            }
            else if (method.getContainingClass() != classToBind.getSuperClass()) {
              result.set(Boolean.TRUE);
            }
          }
          else {
            result.set(Boolean.TRUE);
          }
        }
      }
@Override public void visitReferenceExpression(final @NotNull PsiReferenceExpression expression)