void (@NotNull CFGBuilder builder, @NotNull PsiMethodCallExpression call, @Nullable SpecialField field, @NotNull RelationType relation) { PsiExpression[] args = call.getArgumentList().getExpressions(); builder.ensure(RelationType.NE, DfTypes.NULL, new ContractFailureProblem(call), JAVA_LANG_ASSERTION_ERROR); if ((field == SpecialField.COLLECTION_SIZE || field == SpecialField.ARRAY_LENGTH) && args.length == 1) { Integer expectedSize = ObjectUtils.tryCast(ExpressionUtils.computeConstantExpression(args[0]), Integer.class); if (expectedSize != null) { builder.unwrap(field); builder.ensure(relation, DfTypes.intValue(expectedSize), new ContractFailureProblem(call), JAVA_LANG_ASSERTION_ERROR); } } }