<i18n dev> RFR: 8263668: Update java.time to use instanceof pattern variable
Rémi Forax
github.com+828220+forax at openjdk.java.net
Wed Mar 24 11:03:51 UTC 2021
On Wed, 24 Mar 2021 09:56:16 GMT, Patrick Concannon <pconcannon at openjdk.org> wrote:
> Hi,
>
> Could someone please review my code for updating the code in the `java.time` package to make use of the `instanceof` pattern variable?
>
> Kind regards,
> Patrick
src/java.base/share/classes/java/time/LocalDateTime.java line 1686:
> 1684: public long until(Temporal endExclusive, TemporalUnit unit) {
> 1685: LocalDateTime end = LocalDateTime.from(endExclusive);
> 1686: if (unit instanceof ChronoUnit u) {
`chronoUnit` is perhaps a better variable name than `u`
src/java.base/share/classes/java/time/LocalTime.java line 1412:
> 1410: if (unit instanceof ChronoUnit u) {
> 1411: long nanosUntil = end.toNanoOfDay() - toNanoOfDay(); // no overflow
> 1412: switch (u) {
same comment as above
src/java.base/share/classes/java/time/MonthDay.java line 448:
> 446: public long getLong(TemporalField field) {
> 447: if (field instanceof ChronoField f) {
> 448: switch (f) {
as above, `chronoField` instead of `f`
src/java.base/share/classes/java/time/OffsetDateTime.java line 599:
> 597: @Override
> 598: public int get(TemporalField field) {
> 599: if (field instanceof ChronoField f) {
see above
src/java.base/share/classes/java/time/OffsetDateTime.java line 636:
> 634: @Override
> 635: public long getLong(TemporalField field) {
> 636: if (field instanceof ChronoField f) {
see above
src/java.base/share/classes/java/time/OffsetTime.java line 1182:
> 1180: OffsetTime end = OffsetTime.from(endExclusive);
> 1181: if (unit instanceof ChronoUnit u) {
> 1182: long nanosUntil = end.toEpochNano() - toEpochNano(); // no overflow
see above
src/java.base/share/classes/java/time/Year.java line 500:
> 498: public long getLong(TemporalField field) {
> 499: if (field instanceof ChronoField f) {
> 500: switch (f) {
see above
src/java.base/share/classes/java/time/Year.java line 711:
> 709: @Override
> 710: public Year plus(long amountToAdd, TemporalUnit unit) {
> 711: if (unit instanceof ChronoUnit u) {
see above
src/java.base/share/classes/java/time/Year.java line 917:
> 915: public long until(Temporal endExclusive, TemporalUnit unit) {
> 916: Year end = Year.from(endExclusive);
> 917: if (unit instanceof ChronoUnit u) {
see above
src/java.base/share/classes/java/time/YearMonth.java line 488:
> 486: @Override
> 487: public long getLong(TemporalField field) {
> 488: if (field instanceof ChronoField f) {
see above
src/java.base/share/classes/java/time/YearMonth.java line 808:
> 806: @Override
> 807: public YearMonth plus(long amountToAdd, TemporalUnit unit) {
> 808: if (unit instanceof ChronoUnit u) {
see above
src/java.base/share/classes/java/time/YearMonth.java line 1049:
> 1047: public long until(Temporal endExclusive, TemporalUnit unit) {
> 1048: YearMonth end = YearMonth.from(endExclusive);
> 1049: if (unit instanceof ChronoUnit u) {
see above
src/java.base/share/classes/java/time/ZonedDateTime.java line 816:
> 814: @Override // override for Javadoc and performance
> 815: public int get(TemporalField field) {
> 816: if (field instanceof ChronoField f) {
see above
src/java.base/share/classes/java/time/ZonedDateTime.java line 853:
> 851: @Override
> 852: public long getLong(TemporalField field) {
> 853: if (field instanceof ChronoField f) {
see above
src/java.base/share/classes/java/time/chrono/ChronoLocalDateImpl.java line 380:
> 378: Objects.requireNonNull(endExclusive, "endExclusive");
> 379: ChronoLocalDate end = getChronology().date(endExclusive);
> 380: if (unit instanceof ChronoUnit u) {
see above
src/java.base/share/classes/java/time/chrono/ChronoLocalDateTimeImpl.java line 379:
> 377: if (unit.isTimeBased()) {
> 378: long amount = end.getLong(EPOCH_DAY) - date.getLong(EPOCH_DAY);
> 379: switch (u) {
see above
src/java.base/share/classes/java/time/chrono/ChronoZonedDateTime.java line 198:
> 196: @Override
> 197: default int get(TemporalField field) {
> 198: if (field instanceof ChronoField f) {
see above
src/java.base/share/classes/java/time/chrono/ChronoZonedDateTime.java line 212:
> 210: @Override
> 211: default long getLong(TemporalField field) {
> 212: if (field instanceof ChronoField f) {
see above
-------------
PR: https://git.openjdk.java.net/jdk/pull/3170
More information about the i18n-dev
mailing list