@Contract("null, _ -> false")
  private static boolean isWriteOnlyCall(@Nullable PsiMethodCallExpression call, boolean exactType) {
    while (call != null) {
      if (!isMutatorMethod(call, exactType)) break;
      if (ExpressionUtils.isVoidContext(call)) return true;
      ContractReturnValue value = JavaMethodContractUtil.getNonFailingReturnValue(JavaMethodContractUtil.getMethodCallContracts(call));
      if (!ContractReturnValue.returnThis().equals(value)) break;
      call = ExpressionUtils.getCallForQualifier(call);
    }
    return false;
  }
@Contract("null, _ -> false")
  private static boolean isWriteOnlyCall(@Nullable PsiMethodCallExpression call, boolean exactType)