in src/main/java/org/jetbrains/jetCheck/ShrinkStep.java [40:73]
static ShrinkStep create(@NotNull NodeId replaced,
@NotNull StructureElement replacement,
@Nullable Function<StructureNode, ShrinkStep> onSuccess,
@Nullable Supplier<ShrinkStep> onFailure) {
return new ShrinkStep() {
@Override
StructureNode apply(StructureNode root) {
return root.replace(replaced, replacement);
}
@Nullable
@Override
ShrinkStep onSuccess(StructureNode smallerRoot) {
return onSuccess == null ? null : onSuccess.apply(smallerRoot);
}
@Nullable
@Override
ShrinkStep onFailure() {
return onFailure == null ? null : onFailure.get();
}
@Override
public String toString() {
return "replace " + replaced + " with " + replacement;
}
@Override
List<?> getEqualityObjects() {
return Arrays.asList(replaced, replacement);
}
};
}