argument-number.js |
---
esid: sec-temporal.plaindatetime.compare
description: A number cannot be used in place of a Temporal.PlainDateTime
features: [Temporal]
--- |
917 |
argument-object-insufficient-data.js |
---
esid: sec-temporal.plaindatetime.compare
description: Plain object arguments may throw if they do not contain sufficient information
features: [Temporal]
--- |
902 |
argument-plaindate.js |
---
esid: sec-temporal.plaindatetime.compare
description: Fast path for converting Temporal.PlainDate to Temporal.PlainDateTime by reading internal slots
info: |
sec-temporal.plaindatetime.compare steps 1–2:
1. Set _one_ to ? ToTemporalDateTime(_one_).
2. Set _two_ to ? ToTemporalDateTime(_two_).
sec-temporal-totemporaldatetime step 2.b:
b. If _item_ has an [[InitializedTemporalDate]] internal slot, then
i. Return ? CreateTemporalDateTime(_item_.[[ISOYear]], _item_.[[ISOMonth]], _item_.[[ISODay]], 0, 0, 0, 0, 0, 0, _item_.[[Calendar]]).
includes: [compareArray.js, temporalHelpers.js]
features: [Temporal]
--- |
1398 |
argument-propertybag-calendar-case-insensitive.js |
---
esid: sec-temporal.plaindatetime.compare
description: The calendar name is case-insensitive
features: [Temporal]
--- |
1212 |
argument-propertybag-calendar-iso-string.js |
---
esid: sec-temporal.plaindatetime.compare
description: An ISO 8601 string can be converted to a calendar ID in Calendar
features: [Temporal]
--- |
1091 |
argument-propertybag-calendar-leap-second.js |
---
esid: sec-temporal.plaindatetime.compare
description: Leap second is a valid ISO string for a calendar in a property bag
features: [Temporal]
--- |
894 |
argument-propertybag-calendar-number.js |
---
esid: sec-temporal.plaindatetime.compare
description: A number as calendar in a property bag is not accepted
features: [Temporal]
--- |
955 |
argument-propertybag-calendar-string.js |
---
esid: sec-temporal.plaindatetime.compare
description: A calendar ID is valid input for Calendar
features: [Temporal]
--- |
841 |
argument-propertybag-calendar-wrong-type.js |
---
esid: sec-temporal.plaindatetime.compare
description: >
Appropriate error thrown when a calendar property from a property bag cannot
be converted to a calendar ID
features: [BigInt, Symbol, Temporal]
--- |
1929 |
argument-propertybag-calendar-year-zero.js |
---
esid: sec-temporal.plaindatetime.compare
description: Negative zero, as an extended year, is rejected
features: [Temporal, arrow-function]
--- |
975 |
argument-string-calendar-annotation-invalid-key.js |
---
esid: sec-temporal.plaindatetime.compare
description: Annotation keys are lowercase-only
features: [Temporal]
--- |
1068 |
argument-string-calendar-annotation.js |
---
esid: sec-temporal.plaindatetime.compare
description: Various forms of calendar annotation; critical flag has no effect
features: [Temporal]
--- |
948 |
argument-string-critical-unknown-annotation.js |
---
esid: sec-temporal.plaindatetime.compare
description: Unknown annotations with critical flag are rejected
features: [Temporal]
--- |
1100 |
argument-string-date-with-utc-offset.js |
---
esid: sec-temporal.plaindatetime.compare
description: UTC offset not valid with format that does not include a time
features: [Temporal]
--- |
1450 |
argument-string-limits.js |
---
esid: sec-temporal.plaindatetime.compare
description: ISO strings at the edges of the representable range
features: [Temporal]
--- |
1238 |
argument-string-minus-sign.js |
---
esid: sec-temporal.plaindatetime.compare
description: Non-ASCII minus sign is not acceptable
features: [Temporal]
--- |
873 |
argument-string-multiple-calendar.js |
---
esid: sec-temporal.plaindatetime.compare
description: >
More than one calendar annotation is not syntactical if any have the criical
flag
features: [Temporal]
--- |
1334 |
argument-string-multiple-time-zone.js |
---
esid: sec-temporal.plaindatetime.compare
description: More than one time zone annotation is not syntactical
features: [Temporal]
--- |
1043 |
argument-string-time-separators.js |
---
esid: sec-temporal.plaindatetime.compare
description: Time separator in string argument can vary
features: [Temporal]
--- |
937 |
argument-string-time-zone-annotation.js |
---
esid: sec-temporal.plaindatetime.compare
description: Various forms of time zone annotation; critical flag has no effect
features: [Temporal]
--- |
1137 |
argument-string-unknown-annotation.js |
---
esid: sec-temporal.plaindatetime.compare
description: Various forms of unknown annotation
features: [Temporal]
--- |
931 |
argument-string-with-utc-designator.js |
---
esid: sec-temporal.plaindatetime.compare
description: RangeError thrown if a string with UTC designator is used as a PlainDateTime
features: [Temporal, arrow-function]
--- |
978 |
argument-wrong-type.js |
---
esid: sec-temporal.plaindatetime.compare
description: >
Appropriate error thrown when argument cannot be converted to a valid string
or property bag for PlainDateTime
features: [BigInt, Symbol, Temporal]
--- |
1899 |
argument-zoneddatetime-negative-epochnanoseconds.js |
---
esid: sec-temporal.plaindatetime.compare
description: A pre-epoch value is handled correctly by the modulo operation in GetISOPartsFromEpoch
info: |
sec-temporal-getisopartsfromepoch step 1:
1. Let _remainderNs_ be the mathematical value whose sign is the sign of _epochNanoseconds_ and whose magnitude is abs(_epochNanoseconds_) modulo 10<sup>6</sup>.
sec-temporal-builtintimezonegetplaindatetimefor step 2:
2. Let _result_ be ! GetISOPartsFromEpoch(_instant_.[[Nanoseconds]]).
features: [Temporal]
--- |
1265 |
basic.js |
---
esid: sec-temporal.plaindatetime.compare
description: Checking a typical case (nothing undefined, no NaNs, does not throw, etc.)
features: [Temporal]
--- |
1321 |
browser.js |
|
0 |
builtin.js |
---
esid: sec-temporal.plaindatetime.compare
description: Tests that Temporal.PlainDateTime.compare meets the requirements for built-in objects
info: |
Built-in functions that are not constructors do not have a "prototype" property unless
otherwise specified in the description of a particular function.
Unless specified otherwise, a built-in object that is callable as a function is a built-in
function object with the characteristics described in 10.3. Unless specified otherwise, the
[[Extensible]] internal slot of a built-in object initially has the value true.
Unless otherwise specified every built-in function and every built-in constructor has the
Function prototype object [...] as the value of its [[Prototype]] internal slot.
features: [Temporal]
--- |
1519 |
calendar-temporal-object.js |
---
esid: sec-temporal.plaindatetime.compare
description: Fast path for converting other Temporal objects to Temporal.Calendar by reading internal slots
info: |
sec-temporal.plaindatetime.compare steps 1–2:
1. Set _one_ to ? ToTemporalDateTime(_one_).
2. Set _two_ to ? ToTemporalDateTime(_two_).
sec-temporal-totemporaldatetime step 2.c:
c. Let _calendar_ be ? GetTemporalCalendarWithISODefault(_item_).
sec-temporal-gettemporalcalendarwithisodefault step 2:
2. Return ? ToTemporalCalendarWithISODefault(_calendar_).
sec-temporal-totemporalcalendarwithisodefault step 2:
3. Return ? ToTemporalCalendar(_temporalCalendarLike_).
sec-temporal-totemporalcalendar step 1.a:
a. If _temporalCalendarLike_ has an [[InitializedTemporalDate]], [[InitializedTemporalDateTime]], [[InitializedTemporalMonthDay]], [[InitializedTemporalYearMonth]], or [[InitializedTemporalZonedDateTime]] internal slot, then
i. Return _temporalCalendarLike_.[[Calendar]].
includes: [compareArray.js, temporalHelpers.js]
features: [Temporal]
--- |
1575 |
cast.js |
---
esid: sec-temporal.plaindatetime.compare
description: Arguments may be casted (string, plain object)
features: [Temporal]
--- |
1121 |
exhaustive.js |
---
esid: sec-temporal.plaindatetime.compare
description: Tests for compare() with each possible outcome
features: [Temporal]
--- |
4525 |
infinity-throws-rangeerror.js |
---
description: Throws if any value in a property bag for either argument is Infinity or -Infinity
esid: sec-temporal.plaindatetime.compare
includes: [compareArray.js, temporalHelpers.js]
features: [Temporal]
--- |
1767 |
leap-second.js |
---
esid: sec-temporal.plaindatetime.compare
description: Leap second is a valid ISO string for PlainDateTime
features: [Temporal]
--- |
1353 |
length.js |
---
esid: sec-temporal.plaindatetime.compare
description: Temporal.PlainDateTime.compare.length is 2
info: |
Every built-in function object, including constructors, has a "length" property whose value is
an integer. Unless otherwise specified, this value is equal to the largest number of named
arguments shown in the subclause headings for the function description. Optional parameters
(which are indicated with brackets: [ ]) or rest parameters (which are shown using the form
«...name») are not included in the default argument count.
Unless otherwise specified, the "length" property of a built-in function object has the
attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }.
includes: [propertyHelper.js]
features: [Temporal]
--- |
1185 |
name.js |
---
esid: sec-temporal.plaindatetime.compare
description: Temporal.PlainDateTime.compare.name is "compare"
info: |
Every built-in function object, including constructors, that is not identified as an anonymous
function has a "name" property whose value is a String. Unless otherwise specified, this value
is the name that is given to the function in this specification.
Unless otherwise specified, the "name" property of a built-in function object, if it exists,
has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }.
includes: [propertyHelper.js]
features: [Temporal]
--- |
1026 |
not-a-constructor.js |
---
esid: sec-temporal.plaindatetime.compare
description: Temporal.PlainDateTime.compare does not implement [[Construct]], is not new-able
info: |
Built-in function objects that are not identified as constructors do not implement the
[[Construct]] internal method unless otherwise specified in the description of a particular
function.
includes: [isConstructor.js]
features: [Reflect.construct, Temporal]
--- |
901 |
prop-desc.js |
---
esid: sec-temporal.plaindatetime.compare
description: The "compare" property of Temporal.PlainDateTime
includes: [propertyHelper.js]
features: [Temporal]
--- |
658 |
shell.js |
---
description: |
Test if a given function is a constructor function.
defines: [isConstructor]
features: [Reflect.construct]
--- |
596 |
use-internal-slots.js |
---
esid: sec-temporal-compareisodatetime
description: compare() ignores the observable properties and uses internal slots
features: [Temporal]
--- |
1165 |
year-zero.js |
---
description: Negative zero, as an extended year, fails
esid: sec-temporal.plaindatetime.compare
features: [Temporal]
--- |
914 |