Skip to content

Commit

Permalink
Editorial: Give field names lists to PrepareCalendarFields in table o…
Browse files Browse the repository at this point in the history
…rder

It's easier to inspect at a glance which fields are included when they are
given in order. This order is not observable because the list is sorted
by lexicographical order anyway before being used to access properties.

See: #3001
  • Loading branch information
ptomato authored and Ms2ger committed Oct 8, 2024
1 parent 0fab864 commit e6660f2
Show file tree
Hide file tree
Showing 12 changed files with 27 additions and 27 deletions.
18 changes: 9 additions & 9 deletions polyfill/lib/ecmascript.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -976,8 +976,8 @@ export function GetTemporalRelativeToOption(options) {
const fields = PrepareCalendarFields(
calendar,
relativeTo,
['day', 'month', 'monthCode', 'year'],
['hour', 'microsecond', 'millisecond', 'minute', 'nanosecond', 'offset', 'second', 'timeZone'],
['year', 'month', 'monthCode', 'day'],
['hour', 'minute', 'second', 'millisecond', 'microsecond', 'nanosecond', 'offset', 'timeZone'],
[]
);
({ isoDate, time } = InterpretTemporalDateTimeFields(calendar, fields, 'constrain'));
Expand Down Expand Up @@ -1134,7 +1134,7 @@ export function ToTemporalDate(item, options = undefined) {
return CreateTemporalDate(GetSlot(item, ISO_DATE_TIME).isoDate, GetSlot(item, CALENDAR));
}
const calendar = GetTemporalCalendarIdentifierWithISODefault(item);
const fields = PrepareCalendarFields(calendar, item, ['day', 'month', 'monthCode', 'year'], [], []);
const fields = PrepareCalendarFields(calendar, item, ['year', 'month', 'monthCode', 'day'], [], []);
const overflow = GetTemporalOverflowOption(GetOptionsObject(options));
const isoDate = CalendarDateFromFields(calendar, fields, overflow);
return CreateTemporalDate(isoDate, calendar);
Expand Down Expand Up @@ -1186,8 +1186,8 @@ export function ToTemporalDateTime(item, options = undefined) {
const fields = PrepareCalendarFields(
calendar,
item,
['day', 'month', 'monthCode', 'year'],
['hour', 'microsecond', 'millisecond', 'minute', 'nanosecond', 'second'],
['year', 'month', 'monthCode', 'day'],
['hour', 'minute', 'second', 'millisecond', 'microsecond', 'nanosecond'],
[]
);
const overflow = GetTemporalOverflowOption(GetOptionsObject(options));
Expand Down Expand Up @@ -1323,7 +1323,7 @@ export function ToTemporalMonthDay(item, options = undefined) {
if (calendar === undefined) calendar = 'iso8601';
calendar = ToTemporalCalendarIdentifier(calendar);
}
const fields = PrepareCalendarFields(calendar, item, ['day', 'month', 'monthCode', 'year'], [], []);
const fields = PrepareCalendarFields(calendar, item, ['year', 'month', 'monthCode', 'day'], [], []);
const overflow = GetTemporalOverflowOption(GetOptionsObject(options));
const isoDate = CalendarMonthDayFromFields(calendar, fields, overflow);
return CreateTemporalMonthDay(isoDate, calendar);
Expand Down Expand Up @@ -1382,7 +1382,7 @@ export function ToTemporalYearMonth(item, options = undefined) {
return CreateTemporalYearMonth(GetSlot(item, ISO_DATE), GetSlot(item, CALENDAR));
}
const calendar = GetTemporalCalendarIdentifierWithISODefault(item);
const fields = PrepareCalendarFields(calendar, item, ['month', 'monthCode', 'year'], [], []);
const fields = PrepareCalendarFields(calendar, item, ['year', 'month', 'monthCode'], [], []);
const overflow = GetTemporalOverflowOption(GetOptionsObject(options));
const isoDate = CalendarYearMonthFromFields(calendar, fields, overflow);
return CreateTemporalYearMonth(isoDate, calendar);
Expand Down Expand Up @@ -1498,8 +1498,8 @@ export function ToTemporalZonedDateTime(item, options = undefined) {
const fields = PrepareCalendarFields(
calendar,
item,
['day', 'month', 'monthCode', 'year'],
['hour', 'microsecond', 'millisecond', 'minute', 'nanosecond', 'offset', 'second', 'timeZone'],
['year', 'month', 'monthCode', 'day'],
['hour', 'minute', 'second', 'millisecond', 'microsecond', 'nanosecond', 'offset', 'timeZone'],
['timeZone']
);
({ offset, timeZone } = fields);
Expand Down
2 changes: 1 addition & 1 deletion polyfill/lib/plaindate.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ export class PlainDate {
const partialDate = ES.PrepareCalendarFields(
calendar,
temporalDateLike,
['day', 'month', 'monthCode', 'year'],
['year', 'month', 'monthCode', 'day'],
[],
'partial'
);
Expand Down
4 changes: 2 additions & 2 deletions polyfill/lib/plaindatetime.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -168,8 +168,8 @@ export class PlainDateTime {
const partialDateTime = ES.PrepareCalendarFields(
calendar,
temporalDateTimeLike,
['day', 'month', 'monthCode', 'year'],
['hour', 'microsecond', 'millisecond', 'minute', 'nanosecond', 'second'],
['year', 'month', 'monthCode', 'day'],
['hour', 'minute', 'second', 'millisecond', 'microsecond', 'nanosecond'],
'partial'
);
fields = ES.CalendarMergeFields(calendar, fields, partialDateTime);
Expand Down
2 changes: 1 addition & 1 deletion polyfill/lib/plainmonthday.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ export class PlainMonthDay {
const partialMonthDay = ES.PrepareCalendarFields(
calendar,
temporalMonthDayLike,
['day', 'month', 'monthCode', 'year'],
['year', 'month', 'monthCode', 'day'],
[],
'partial'
);
Expand Down
2 changes: 1 addition & 1 deletion polyfill/lib/plainyearmonth.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ export class PlainYearMonth {
const partialYearMonth = ES.PrepareCalendarFields(
calendar,
temporalYearMonthLike,
['month', 'monthCode', 'year'],
['year', 'month', 'monthCode'],
[],
'partial'
);
Expand Down
4 changes: 2 additions & 2 deletions polyfill/lib/zoneddatetime.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -183,8 +183,8 @@ export class ZonedDateTime {
const partialZonedDateTime = ES.PrepareCalendarFields(
calendar,
temporalZonedDateTimeLike,
['day', 'month', 'monthCode', 'year'],
['hour', 'microsecond', 'millisecond', 'minute', 'nanosecond', 'offset', 'second'],
['year', 'month', 'monthCode', 'day'],
['hour', 'minute', 'second', 'millisecond', 'microsecond', 'nanosecond', 'offset'],
'partial'
);
fields = ES.CalendarMergeFields(calendar, fields, partialZonedDateTime);
Expand Down
2 changes: 1 addition & 1 deletion spec/abstractops.html
Original file line number Diff line number Diff line change
Expand Up @@ -601,7 +601,7 @@ <h1>
1. Let _plainDate_ be ! CreateTemporalDate(_value_.[[ISODateTime]].[[ISODate]], _value_.[[Calendar]]).
1. Return the Record { [[PlainRelativeTo]]: _plainDate_, [[ZonedRelativeTo]]: *undefined* }.
1. Let _calendar_ be ? GetTemporalCalendarIdentifierWithISODefault(_value_).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _value_, « ~day~, ~month~, ~month-code~, ~year~ », « ~hour~, ~microsecond~, ~millisecond~, ~minute~, ~nanosecond~, ~offset~, ~second~, ~time-zone~ », «»).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _value_, « ~year~, ~month~, ~month-code~, ~day~ », « ~hour~, ~minute~, ~second~, ~millisecond~, ~microsecond~, ~nanosecond~, ~offset~, ~time-zone~ », «»).
1. Let _result_ be ? InterpretTemporalDateTimeFields(_calendar_, _fields_, ~constrain~).
1. Let _timeZone_ be _fields_.[[TimeZone]].
1. Let _offsetString_ be _fields_.[[Offset]].
Expand Down
4 changes: 2 additions & 2 deletions spec/plaindate.html
Original file line number Diff line number Diff line change
Expand Up @@ -374,7 +374,7 @@ <h1>Temporal.PlainDate.prototype.with ( _temporalDateLike_ [ , _options_ ] )</h1
1. If ? IsPartialTemporalObject(_temporalDateLike_) is *false*, throw a *TypeError* exception.
1. Let _calendar_ be _temporalDate_.[[Calendar]].
1. Let _fields_ be ISODateToFields(_calendar_, _temporalDate_.[[ISODate]], ~date~).
1. Let _partialDate_ be ? PrepareCalendarFields(_calendar_, _temporalDateLike_, « ~day~, ~month~, ~month-code~, ~year~ », « », ~partial~).
1. Let _partialDate_ be ? PrepareCalendarFields(_calendar_, _temporalDateLike_, « ~year~, ~month~, ~month-code~, ~day~ », « », ~partial~).
1. Set _fields_ to CalendarMergeFields(_calendar_, _fields_, _partialDate_).
1. Let _resolvedOptions_ be ? GetOptionsObject(_options_).
1. Let _overflow_ be ? GetTemporalOverflowOption(_resolvedOptions_).
Expand Down Expand Up @@ -673,7 +673,7 @@ <h1>
1. Perform ? GetTemporalOverflowOption(_resolvedOptions_).
1. Return ! CreateTemporalDate(_item_.[[ISODateTime]].[[ISODate]], _item_.[[Calendar]]).
1. Let _calendar_ be ? GetTemporalCalendarIdentifierWithISODefault(_item_).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _item_, « ~day~, ~month~, ~month-code~, ~year~ », «», «»).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _item_, « ~year~, ~month~, ~month-code~, ~day~ », «», «»).
1. Let _resolvedOptions_ be ? GetOptionsObject(_options_).
1. Let _overflow_ be ? GetTemporalOverflowOption(_resolvedOptions_).
1. Let _isoDate_ be ? CalendarDateFromFields(_calendar_, _fields_, _overflow_).
Expand Down
4 changes: 2 additions & 2 deletions spec/plaindatetime.html
Original file line number Diff line number Diff line change
Expand Up @@ -414,7 +414,7 @@ <h1>Temporal.PlainDateTime.prototype.with ( _temporalDateTimeLike_ [ , _options_
1. Set _fields_.[[Millisecond]] to _dateTime_.[[ISODateTime]].[[Time]].[[Millisecond]].
1. Set _fields_.[[Microsecond]] to _dateTime_.[[ISODateTime]].[[Time]].[[Microsecond]].
1. Set _fields_.[[Nanosecond]] to _dateTime_.[[ISODateTime]].[[Time]].[[Nanosecond]].
1. Let _partialDateTime_ be ? PrepareCalendarFields(_calendar_, _temporalDateTimeLike_, « ~day~, ~month~, ~month-code~, ~year~ », « ~hour~, ~microsecond~, ~millisecond~, ~minute~, ~nanosecond~, ~second~ », ~partial~).
1. Let _partialDateTime_ be ? PrepareCalendarFields(_calendar_, _temporalDateTimeLike_, « ~year~, ~month~, ~month-code~, ~day~ », « ~hour~, ~minute~, ~second~, ~millisecond~, ~microsecond~, ~nanosecond~ », ~partial~).
1. Set _fields_ to CalendarMergeFields(_calendar_, _fields_, _partialDateTime_).
1. Let _resolvedOptions_ be ? GetOptionsObject(_options_).
1. Let _overflow_ be ? GetTemporalOverflowOption(_resolvedOptions_).
Expand Down Expand Up @@ -817,7 +817,7 @@ <h1>
1. Let _isoDateTime_ be CombineISODateAndTimeRecord(_item_.[[ISODate]], MidnightTimeRecord()).
1. Return ? CreateTemporalDateTime(_isoDateTime_, _item_.[[Calendar]]).
1. Let _calendar_ be ? GetTemporalCalendarIdentifierWithISODefault(_item_).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _item_, « ~day~, ~month~, ~month-code~, ~year~ », « ~hour~, ~microsecond~, ~millisecond~, ~minute~, ~nanosecond~, ~second~ », «»).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _item_, « ~year~, ~month~, ~month-code~, ~day~ », « ~hour~, ~minute~, ~second~, ~millisecond~, ~microsecond~, ~nanosecond~ », «»).
1. Let _resolvedOptions_ be ? GetOptionsObject(_options_).
1. Let _overflow_ be ? GetTemporalOverflowOption(_resolvedOptions_).
1. Let _result_ be ? InterpretTemporalDateTimeFields(_calendar_, _fields_, _overflow_).
Expand Down
4 changes: 2 additions & 2 deletions spec/plainmonthday.html
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ <h1>Temporal.PlainMonthDay.prototype.with ( _temporalMonthDayLike_ [ , _options_
1. If ? IsPartialTemporalObject(_temporalMonthDayLike_) is *false*, throw a *TypeError* exception.
1. Let _calendar_ be _monthDay_.[[Calendar]].
1. Let _fields_ be ISODateToFields(_calendar_, _monthDay_.[[ISODate]], ~month-day~).
1. Let _partialMonthDay_ be ? PrepareCalendarFields(_calendar_, _temporalMonthDayLike_, « ~day~, ~month~, ~month-code~, ~year~ », « », ~partial~).
1. Let _partialMonthDay_ be ? PrepareCalendarFields(_calendar_, _temporalMonthDayLike_, « ~year~, ~month~, ~month-code~, ~day~ », « », ~partial~).
1. Set _fields_ to CalendarMergeFields(_calendar_, _fields_, _partialMonthDay_).
1. Let _resolvedOptions_ be ? GetOptionsObject(_options_).
1. Let _overflow_ be ? GetTemporalOverflowOption(_resolvedOptions_).
Expand Down Expand Up @@ -295,7 +295,7 @@ <h1>
1. Perform ? GetTemporalOverflowOption(_resolvedOptions_).
1. Return ! CreateTemporalMonthDay(_item_.[[ISODate]], _item_.[[Calendar]]).
1. Let _calendar_ be ? GetTemporalCalendarIdentifierWithISODefault(_item_).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _item_, « ~day~, ~month~, ~month-code~, ~year~ », «», «»).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _item_, « ~year~, ~month~, ~month-code~, ~day~ », «», «»).
1. Let _resolvedOptions_ be ? GetOptionsObject(_options_).
1. Let _overflow_ be ? GetTemporalOverflowOption(_resolvedOptions_).
1. Let _isoDate_ be ? CalendarMonthDayFromFields(_calendar_, _fields_, _overflow_).
Expand Down
4 changes: 2 additions & 2 deletions spec/plainyearmonth.html
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,7 @@ <h1>Temporal.PlainYearMonth.prototype.with ( _temporalYearMonthLike_ [ , _option
1. If ? IsPartialTemporalObject(_temporalYearMonthLike_) is *false*, throw a *TypeError* exception.
1. Let _calendar_ be _yearMonth_.[[Calendar]].
1. Let _fields_ be ISODateToFields(_calendar_, _yearMonth_.[[ISODate]], ~year-month~).
1. Let _partialYearMonth_ be ? PrepareCalendarFields(_calendar_, _temporalYearMonthLike_, « ~month~, ~month-code~, ~year~ », « », ~partial~).
1. Let _partialYearMonth_ be ? PrepareCalendarFields(_calendar_, _temporalYearMonthLike_, « ~year~, ~month~, ~month-code~ », « », ~partial~).
1. Set _fields_ to CalendarMergeFields(_calendar_, _fields_, _partialYearMonth_).
1. Let _resolvedOptions_ be ? GetOptionsObject(_options_).
1. Let _overflow_ be ? GetTemporalOverflowOption(_resolvedOptions_).
Expand Down Expand Up @@ -467,7 +467,7 @@ <h1>
1. Perform ? GetTemporalOverflowOption(_resolvedOptions_).
1. Return ! CreateTemporalYearMonth(_item_.[[ISODate]], _item_.[[Calendar]]).
1. Let _calendar_ be ? GetTemporalCalendarIdentifierWithISODefault(_item_).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _item_, « ~month~, ~month-code~, ~year~ », «», «»).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _item_, « ~year~, ~month~, ~month-code~ », «», «»).
1. Let _resolvedOptions_ be ? GetOptionsObject(_options_).
1. Let _overflow_ be ? GetTemporalOverflowOption(_resolvedOptions_).
1. Let _isoDate_ be ? CalendarYearMonthFromFields(_calendar_, _fields_, _overflow_).
Expand Down
4 changes: 2 additions & 2 deletions spec/zoneddatetime.html
Original file line number Diff line number Diff line change
Expand Up @@ -523,7 +523,7 @@ <h1>Temporal.ZonedDateTime.prototype.with ( _temporalZonedDateTimeLike_ [ , _opt
1. Set _fields_.[[Microsecond]] to _isoDateTime_.[[Time]].[[Microsecond]].
1. Set _fields_.[[Nanosecond]] to _isoDateTime_.[[Time]].[[Nanosecond]].
1. Set _fields_.[[OffsetString]] to FormatUTCOffsetNanoseconds(_offsetNanoseconds_).
1. Let _partialZonedDateTime_ be ? PrepareCalendarFields(_calendar_, _temporalZonedDateTimeLike_, « ~day~, ~month~, ~month-code~, ~year~ », « ~hour~, ~microsecond~, ~millisecond~, ~minute~, ~nanosecond~, ~offset~, ~second~ », ~partial~).
1. Let _partialZonedDateTime_ be ? PrepareCalendarFields(_calendar_, _temporalZonedDateTimeLike_, « ~year~, ~month~, ~month-code~, ~day~ », « ~hour~, ~minute~, ~second~, ~millisecond~, ~microsecond~, ~nanosecond~, ~offset~ », ~partial~).
1. Set _fields_ to CalendarMergeFields(_calendar_, _fields_, _partialZonedDateTime_).
1. Let _resolvedOptions_ be ? GetOptionsObject(_options_).
1. Let _disambiguation_ be ? GetTemporalDisambiguationOption(_resolvedOptions_).
Expand Down Expand Up @@ -964,7 +964,7 @@ <h1>
1. Perform ? GetTemporalOverflowOption(_resolvedOptions_).
1. Return ! CreateTemporalZonedDateTime(_item_.[[EpochNanoseconds]], _item_.[[TimeZone]], _item_.[[Calendar]]).
1. Let _calendar_ be ? GetTemporalCalendarIdentifierWithISODefault(_item_).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _item_, « ~day~, ~month~, ~month-code~, ~year~ », « ~hour~, ~microsecond~, ~millisecond~, ~minute~, ~nanosecond~, ~offset~, ~second~, ~time-zone~ », « ~time-zone~ »).
1. Let _fields_ be ? PrepareCalendarFields(_calendar_, _item_, « ~year~, ~month~, ~month-code~, ~day~ », « ~hour~, ~minute~, ~second~, ~millisecond~, ~microsecond~, ~nanosecond~, ~offset~, ~time-zone~ », « ~time-zone~ »).
1. Let _timeZone_ be _fields_.[[TimeZone]].
1. Let _offsetString_ be _fields_.[[OffsetString]].
1. If _offsetString_ is ~unset~, then
Expand Down

0 comments on commit e6660f2

Please sign in to comment.