class SetterAndWithMethodJavadoc { /** * Some value. */ int i; /** * Some other value. */ int j; SetterAndWithMethodJavadoc(int i, int j) { this.i = i; this.j = j; } /** * Some value. * @param the new value */ @java.lang.SuppressWarnings("all") public void setI(final int i) { this.i = i; } /** * Some value. * @param the new value * @return a clone of this object, except with this updated property (returns {@code this} if an identical value is passed). */ @java.lang.SuppressWarnings("all") public SetterAndWithMethodJavadoc withI(final int i) { return this.i == i ? this : new SetterAndWithMethodJavadoc(i, this.j); } /** * Set some other value. * @param the new other value */ @java.lang.SuppressWarnings("all") public void setJ(final int j) { this.j = j; } /** * Reinstantiate with some other value. * @param the other new other value * @return a clone of this object, except with this updated property (returns {@code this} if an identical value is passed). */ @java.lang.SuppressWarnings("all") public SetterAndWithMethodJavadoc withJ(final int j) { return this.j == j ? this : new SetterAndWithMethodJavadoc(this.i, j); } }