public static AccountingDate from(AccountingChronology chronology, TemporalAccessor temporal) {
        if (temporal instanceof AccountingDate && ((AccountingDate) temporal).getChronology().equals(chronology)) {
            return (AccountingDate) temporal;
        }
        return ofEpochDay(chronology, temporal.getLong(EPOCH_DAY));
    }
public static AccountingDate from ( AccountingChronology chronology , TemporalAccessor temporal ) { if ( temporal instanceof AccountingDate && ( ( AccountingDate ) temporal ) . getChronology ( ) . equals ( chronology ) ) { return ( AccountingDate ) temporal ; } return ofEpochDay ( chronology , temporal . getLong ( EPOCH_DAY ) ) ; }
Obtains an {@code AccountingDate} from a temporal object.
<p>
This obtains a date in the specified Accounting calendar system based on the specified temporal.
A {@code TemporalAccessor} represents an arbitrary set of date and time information,
which this factory converts to an instance of {@code AccountingDate}.
<p>
The conversion typically uses the {@link ChronoField#EPOCH_DAY EPOCH_DAY}
field, which is standardized across calendar systems.
<p>
This method almost matches the signature of the functional interface {@link TemporalQuery}
and must be used as a query via something that supplies the missing parameter,
such as a curried method reference, {@code temporal -> AccountingDate.from(chronology, temporal)}
(where {@code chronology} resolves to a set up {@code AccountingChronology}).

@param chronology  the Accounting chronology to base the date on, not null
@param temporal  the temporal object to convert, not null
@return the date in Accounting calendar system, not null
@throws DateTimeException if unable to convert to an {@code AccountingDate},
NullPointerException if an AccountingChronology was not provided