Age | Commit message (Collapse) | Author |
|
This is a bit of a lie as the Value(Object const*) ctor will const_cast
them in invoke(), but at least it ensures that nothing else in the
function relies on getting non-const Objects.
Perhaps we can have an actual Object const* Value in the future as well.
|
|
This only calls Object::get() on the fields Object, which is
const-qualified.
|
|
This only calls Object::get() on the temporal_time_like Object, which is
const-qualified.
|
|
This only calls Object::get() or some Duration getters on the
temporal_duration_like Object, both of which are const-qualified.
|
|
These only pass the normalized_options Object directly or indirectly to
get_option(), which now takes a const reference.
|
|
This only passes the options Object to get_option(), which now takes a
const reference.
|
|
This only calls Object::get() on the options Object, which is
const-qualified.
|
|
There's no need for these to be non-const. Suggested by @IdanHo in
https://github.com/SerenityOS/serenity/pull/9904#discussion_r704960184.
Perhaps we can make more internal slots of these and other objects const
references as well, but that's a bit more involved as they are used by
various functions expecting non-const references.
|
|
These are passed to ordinary_create_from_constructor() in each case,
which takes the parameter as a const&, so these can also be const.
|
|
This is an editorial change in the Temporal spec.
See: https://github.com/tc39/proposal-temporal/commit/899cc24
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This will be used by LibWeb to attach web engine specific stuff that
LibJS doesn't need to know about.
|
|
|
|
|
|
|
|
This is especially helpful where we already pass StringView literals
and only compare them with others, e.g. overflow and largest/smallest
unit, in which case there's no need to actually allocate a string.
|
|
Previously, LibUnicode would store the values of a keyword as a Vector.
For example, the locale "en-u-ca-abc-def" would have its keyword "ca"
stored as {"abc, "def"}. Then, canonicalization would occur on each of
the elements in that Vector.
This is incorrect because, for example, the keyword value "true" should
only be dropped if that is the entire value. That is, the canonical form
of "en-u-kb-true" is "en-u-kb", but "en-u-kb-abc-true" does not change
for canonicalization. However, we would canonicalize that locale as
"en-u-kb-abc".
|
|
|
|
Ticks off one box in #8982 and fixes one test262 case.
|
|
This is a normative change in the Temporal spec.
See: https://github.com/tc39/proposal-temporal/commit/6178ed3
|
|
This is a normative change in the Temporal spec. No behavioral change,
just a clarification.
See: https://github.com/tc39/proposal-temporal/commit/42c964e
|
|
This is a normative change in the Temporal spec. No behavioral change,
just a clarification.
See: https://github.com/tc39/proposal-temporal/commit/b7bdc65
|
|
This is a normative change in the Temporal spec.
See:
- https://github.com/tc39/proposal-temporal/commit/75b66d8
- https://github.com/tc39/proposal-temporal/commit/9c2262b
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This adds plumbing for the Intl.ListFormat object, constructor, and
prototype.
|
|
|
|
|
|
|
|
These will allow us to (partially) implement
Temporal.Instant.prototype.{until, since}
|
|
|
|
This was one of the first AOs used for Intl, and I misinterpreted the
spec. Rather than removing all extensions, we must only remove Unicode
locale extensions.
Also use LocaleID::to_string() here instead of the heavier canonical
string method, because the locale is already canonical.
|
|
...by replacing it with a ctor that takes the buffer instead, and
handling the allocation failure in ArrayBuffer::create(size_t) by
throwing a RangeError as specified by the spec.
|
|
|
|
Instead of having a single limit here, which we had to increase once to
work with ASAN enabled, check whether HAS_ADDRESS_SANITIZER is defined
and use 32 KiB, and 16 KiB otherwise (which is what we used previously).
This idea is shamelessly stolen from V8:
https://github.com/v8/v8/blob/b2b44af/src/execution/isolate.cc#L1381-L1387
|
|
Fixes #9322.
|
|
I'm about to add another use of this, so let's add an ErrorType for it
instead of hardcoding the message for a third time.
|
|
|
|
It relies on a mapper function to convert each T& to a JS::Value. This
allows us to avoid awkward Vector<T> to MarkedValueList conversion at
the call site.
|
|
|
|
|