summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibJS/Runtime
AgeCommit message (Collapse)Author
2022-05-08LibJS: Add a couple of missing spec steps to PerformEvalLuke Wilde
I missed these in 34f902fb524808b308efe4568ff5a026d2cb4884.
2022-05-08LibJS: Remove callerRealm from HostEnsureCanCompileStringsLuke Wilde
This is a normative change in the ecma262 spec. See: https://github.com/tc39/ecma262/commit/2527be4
2022-05-08LibJS: Change internal slots of Duration to store mathematical valuesLinus Groh
This is a normative change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/1f3fba8
2022-05-08LibJS: Refactor Temporal since/until to common AOsLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/85a9f57
2022-05-08LibJS: Remove ToISODayOfWeekLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/3eab7e4
2022-05-08LibJS: Remove ToISODayOfYearLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/6117d90
2022-05-08LibJS: Remove IsISOLeapYearLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/a36bdd4
2022-05-08LibJS: Remove ISODaysInYearLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/f62e737
2022-05-08LibJS: Simplify DifferenceISODateLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/76452d2
2022-05-08LibJS: Simplify DaysUntilLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/b2254b4
2022-05-08LibJS: Simplify BalanceISODateLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/9544573
2022-05-08LibJS: Remove type assertion comment from IsValidISODateLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/ddb5652
2022-05-08LibJS: Use "Completion" to emphasize completion recordLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/31d9fc5
2022-05-08LibJS: Fix numeric type in Date.prototype.toTemporalInstant()Linus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/435a111
2022-05-08LibJS: Replace magic nanosecond numbers with constantsLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/3fdbfda
2022-05-08LibJS: Refactor Temporal add/subtract to common AOsLinus Groh
This is an editorial change in the Temporal spec. See: - https://github.com/tc39/proposal-temporal/commit/2f96efc - https://github.com/tc39/proposal-temporal/commit/fbff635
2022-05-06LibJS: Convert remaining Date AOs using JS::Value as in/output to doubleLinus Groh
There was an awful lot of JS::Value <-> double conversion going on, even through these AOs only work with number values anyway. They don't need a global object either as they won't allocate or throw, that was simply to pass it to infallible calls of ToIntegerOrInfinity.
2022-05-06LibJS: Add variant of to_integer_or_infinity() for plain doublesLinus Groh
In many cases we already know a certain value is a number, or don't have JS values at all and would need to wrap doubles in a value. To optimize these cases and avoid having to pass a global object into functions that won't ever allocate or throw, add a standalone implementation of this function that takes and returns doubles directly.
2022-05-06LibJS: Remove unused LibCore/DateTime.h header from Date.cppLinus Groh
We use a double for [[DateValue]] and the spec's own AOs for any calculations now.
2022-05-06LibJS: Move Hours/Minutes/Seconds/ms constants out of the Date classLinus Groh
They can remain in this header, but will be used outside the Date context in Temporal.
2022-05-05LibJS: Set "prototype" property of async generator functionsLinus Groh
2022-05-05LibJS: Fix "prototype" property of generator functions, againLinus Groh
The change in 3ec0183 wasn't actually correct, the spec tells us to set the "prototype" property of the function (created with a prototype of %GeneratorFunction.prototype% itself) to a newly created object: OrdinaryObjectCreate(%GeneratorFunction.prototype.prototype%)
2022-05-05LibJS: Add getters for %{Async,}GeneratorFunction.prototype.prototype%Linus Groh
These exist as {Async,}GeneratorPrototype of course, but the spec doesn't always refer to them by the direct name.
2022-05-05LibJS: Add AsyncGenerator / AsyncGeneratorPrototypeLinus Groh
Not implementing any prototype functions yet, but stubbing out async generator infrastructure will allow us to make some progress in that direction.
2022-05-05LibJS: Use Object* for 'manual' GlobalObject::foo_prototype() gettersLinus Groh
Not doing so only leads to problems down the line, e.g. not being able to pass them as function pointers to ordinary_create_from_constructor().
2022-05-05LibJS: Correct SetMutableBinding fallibility bug in spec commentLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/656f0cf
2022-05-03LibJS: Remove bogus FIXME in ArgumentsObject::internal_get()Linus Groh
Not sure what happened here, but the comment does not match the spec, and so the FIXME I added is not actually an issue.
2022-05-03LibJS: Use consistent phrasing for string lengthLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/33ea99e
2022-05-03LibJS: Update order of steps in CanonicalNumericIndexStringLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/be5db32
2022-05-03LibJS: Reflect Array.prototype.toLocaleString comment in %TypedArray%Linus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/2a9ed48
2022-05-03LibJS: Add assertion (comment) to MakeMatchIndicesIndexPairArrayLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/caa6e3f
2022-05-03LibJS: Update spec comments to avoid = comparisons with signed zeroLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/b7348e5
2022-05-03LibJS: Update comments for Annex B changes to IsLooselyEqualLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/da3d674
2022-05-03LibJS: Fix type confusion in msFromTimeLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/8e572b6
2022-05-03LibJS: Update two comments saying "completion value"Linus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/7913cea
2022-05-03LibJS: Use CreateDataPropertyOrThrow in MakeMatchIndicesIndexPairArrayLinus Groh
This was part of a normative change in the ECMA-262 spec, but didn't get updated when we implemented that. See: https://github.com/tc39/ecma262/commit/0209d85
2022-05-03LibJS: Remove implicit wrapping/unwrapping of completion recordsLinus Groh
This is an editorial change in the ECMA-262 spec, with similar changes in some proposals. See: - https://github.com/tc39/ecma262/commit/7575f74 - https://github.com/tc39/proposal-array-grouping/commit/df899eb - https://github.com/tc39/proposal-shadowrealm/commit/9eb5a12 - https://github.com/tc39/proposal-shadowrealm/commit/c81f527
2022-05-01LibJS: Simplify Is{Accessor,Data,Generic}Descriptor AOsLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/1c7ae4b
2022-05-01LibJS: Change "Record {}" to "Iterator Record {}" in commentsLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/85d910c
2022-05-01LibJS: Change "Completion {}" to "Completion Record {}" in commentsLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/15a7d8a
2022-05-01LibJS: Change "as [the] argument[s]" to "with arguments" in commentsLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/e671b96
2022-05-01LibJS: Update outdated table reference in BoundFunctionCreateLinus Groh
2022-05-01LibJS: Rename scope to environmentLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/3246553
2022-05-01LibJS: Update spec comments testing presence of a fieldLinus Groh
This is an editorial change in the ECMA-262 spec. See: - https://github.com/tc39/ecma262/commit/497f99a - https://github.com/tc39/ecma262/commit/0b35749
2022-05-01LibJS: Update ValidateAndApplyPropertyDescriptor implementationLinus Groh
These are editorial changes in the ECMA-262 spec. See: - https://github.com/tc39/ecma262/commit/b9efa97 - https://github.com/tc39/ecma262/commit/6f4ff96 - https://github.com/tc39/ecma262/commit/3d18997 - https://github.com/tc39/ecma262/commit/b3c29fd
2022-05-01LibJS: Simplify Array.prototype.splice()Linus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/193211a
2022-05-01LibJS: Update a couple of outdated spec commentsLinus Groh
These are editorial changes in the ECMA-262 spec. See: - https://github.com/tc39/ecma262/commit/e080a7f - https://github.com/tc39/ecma262/commit/c5a9094 - https://github.com/tc39/ecma262/commit/5091520 - https://github.com/tc39/ecma262/commit/1c6564b - https://github.com/tc39/ecma262/commit/e06c80c
2022-05-01LibJS: Remove assertions that are now part of structured headersLinus Groh
This is an editorial change in the ECMA-262 spec. See: https://github.com/tc39/ecma262/commit/4fde514
2022-05-01LibJS: Add missing comment in OrdinaryToPrimitiveLinus Groh
2022-04-30LibJS: Stop fetching GlobalObject from target's realm in ArrayBufferIdan Horowitz
A function object's realm is not necessarily non-null (like when called via the Reflect API), so we can't blindly dereference it. Instead use the object's own GlobalObject.