boolean (@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; }