in src/main/java/org/jetbrains/jetCheck/IntCustomizer.java [74:97]
private LinkedHashSet<Integer> getPossibleValues(IntData data, IntDistribution current, IntDistribution original) {
List<Integer> possibleValues = new ArrayList<>();
int fromStart = data.value - original.getMin();
int fromEnd = original.getMax() - data.value;
int sameDistanceFromStart = current.getMin() + fromStart;
int sameDistanceFromEnd = current.getMax() - fromEnd;
if (!tooManyCombinations()) {
if (fromStart < fromEnd) {
possibleValues.add(sameDistanceFromStart);
possibleValues.add(sameDistanceFromEnd);
} else {
possibleValues.add(sameDistanceFromEnd);
possibleValues.add(sameDistanceFromStart);
}
}
possibleValues.add(data.value);
return possibleValues.stream()
.map(value -> Math.min(Math.max(value, current.getMin()), current.getMax()))
.filter(current::isValidValue)
.collect(Collectors.toCollection(LinkedHashSet::new));
}