summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibJS
AgeCommit message (Collapse)Author
2022-06-15LibJS: Move assertion step around in Calendar.prototype.mergeFieldsLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/f790821
2022-06-15LibJS: Use consistent alias names for object-copy stepsLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/6669bad
2022-06-15LibJS: Update AvailableCalendars AO to reflect spec changesLinus Groh
These are editorial and normative changes in the Temporal spec. See: - https://github.com/tc39/proposal-temporal/commit/2c977fc - https://github.com/tc39/proposal-temporal/commit/3af75ec - https://github.com/tc39/proposal-temporal/commit/75ea812 - https://github.com/tc39/proposal-temporal/commit/e7be49b - https://github.com/tc39/proposal-temporal/commit/883e00a - https://github.com/tc39/proposal-temporal/commit/5b9d76a
2022-06-15LibJS: Add an explicit operation for merging calendar field namesLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/2bd7977
2022-06-15LibJS: Remove unnecessary variable initialization in DifferenceISODateLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/ca1abdc
2022-06-15LibJS: Mark AO calls creating a copy of built-in objects as infallibleLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/536f067
2022-06-15LibJS: Handle absent options in DifferenceZonedDateTimeLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/edc223c
2022-06-15LibJS: Remove constant arguments from CalculateOffsetShiftLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/0bc5f9d
2022-06-15LibJS: Use existing variable instead of re-reading internal slotLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/8d62569
2022-06-15LibJS: Switch branches in RegulateISODateLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/2e4a06f
2022-06-15LibJS: Inline ConstrainISOYearMonth into RegulateISOYearMonthLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/c97932b
2022-06-15LibJS: Add parentheses around modulo operationLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/90e4b34
2022-06-15LibJS: Use nsMinInstant / nsMaxInstant constants in ParseTemporalInstantLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/a045682
2022-06-15LibJS: Prefer Else + Assertion over If for constrained valuesLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/2088eaa
2022-06-15LibJS: Update missing/superfluous commas in various spec commentsLinus Groh
These are editorial changes in the Temporal spec. See: - https://github.com/tc39/proposal-temporal/commit/9586746 - https://github.com/tc39/proposal-temporal/commit/3c76ecc - https://github.com/tc39/proposal-temporal/commit/96eab07
2022-06-15LibJS: Use MaximumTemporalDurationRoundingIncrement in two more placesLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/de582e2
2022-06-15LibJS: Fix GetIterator capitalization in Calendar.prototype.fieldsLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/8538970
2022-06-15LibJS: Only call CanonicalizeTimeZoneName on valid time zone IDsLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/30122e6
2022-06-15LibJS: Add a named alias for parseResult.[[Name]] in ToTemporalTimeZoneLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/8ddcb07
2022-06-15LibJS: Update to the latest ECMA-402 GetOption and move it into ECMA-262Linus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/4e79b69
2022-06-15LibJS: Align Temporal GetOption AO with ECMA-402Linus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/7b6a264
2022-06-15LibJS: Remove unused GetStringOrNumberOption operationLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/d8b3423
2022-06-15LibJS: Explicitly handle "auto" vs. number fractionalSecondDigitsLinus Groh
This is an editorial change in the Temporal spec. See: - https://github.com/tc39/proposal-temporal/commit/4dd6713 - https://github.com/tc39/proposal-temporal/commit/4c2476b - https://github.com/tc39/proposal-temporal/commit/f1a839b - https://github.com/tc39/proposal-temporal/commit/c775ebe - https://github.com/tc39/proposal-temporal/commit/0409774 (Changes across multiple commits, that ended up being reverted.)
2022-06-15LibJS: Improve an alias name in ToSecondsStringPrecisionLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/b75bd9e
2022-06-15LibJS: Inline call to AddISODate in ZonedDateTime.prototype.hoursInDayLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/f034239
2022-06-15LibJS: Remove RegulateISODate after BalanceISODate in AddISODateLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/32b22b1
2022-06-15LibJS: Leverage PrepareTemporalFields in ToTemporalTimeRecordLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/b5ba981
2022-06-15LibJS: Rename ToPartialDuration to ToTemporalPartialDurationRecordLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/0509d41
2022-06-15LibJS: Leverage ToPartialDuration in ToTemporalDurationRecordLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/c3efde0
2022-06-15LibJS: Fold ToPartialTime into ToTemporalTimeRecordLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/58e476d
2022-06-15LibJS: Fold PreparePartialTemporalFields into PrepareTemporalFieldsLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/6ed1835
2022-06-15LibJS: Add missing conversion to integer values in Calendar AOsLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/bfeb523
2022-06-15LibJS: Mark various uses of CreateTemporalTime as infallibleLinus Groh
These are editorial changes in the Temporal spec. See: - https://github.com/tc39/proposal-temporal/commit/dd35d5e - https://github.com/tc39/proposal-temporal/commit/1ec6673 - https://github.com/tc39/proposal-temporal/commit/8c04e3b - https://github.com/tc39/proposal-temporal/commit/df7a802 - https://github.com/tc39/proposal-temporal/commit/5fc71ae - https://github.com/tc39/proposal-temporal/commit/ca305c6
2022-06-13LibJS: Update order of parameters in our is_less_than implementationObinna Ikeh
This change updates the parameter order of the is_less_than function signature and calls to match accordingly with the spec (https://tc39.es/ecma262/#sec-islessthan)
2022-06-13LibJS: Implement Array.prototype.with()Linus Groh
2022-06-13LibJS: Implement Array.prototype.toSpliced()Linus Groh
2022-06-13LibJS: Implement Array.prototype.toSorted()Linus Groh
2022-06-13LibJS: Implement Array.prototype.toReversed()Linus Groh
2022-06-13LibJS: Implement the SortIndexedProperties AOLinus Groh
Also use it in array_merge_sort() instead of inlining the algorithm.
2022-06-13LibJS: Implement the CompareArrayElements AOLinus Groh
2022-06-13LibJS: Remove redundant VM& parameter from array_merge_sort()Linus Groh
This is covered by GlobalObject& just fine.
2022-06-13LibJS: Make array_merge_sort() publicLinus Groh
2022-06-13LibJS: Update Array.prototype.group{,ToMap} spec URLsLinus Groh
This is an editorial change in the Array Grouping spec. See: https://github.com/tc39/proposal-array-grouping/commit/c51cac5
2022-06-13LibJS: Rename Array.prototype.groupBy{,ToMap} => group{,ToMap}Linus Groh
This is a normative change in the Array Grouping spec. See: https://github.com/tc39/proposal-array-grouping/commit/0cf4077
2022-06-13AK/ByteBuffer+Everywhere: Handle errors in ByteBuffer::slice()Matthias Zimmerman
2022-06-13LibJS/Bytecode: Define named functions as a variable inside their scopeLuke Wilde
This allows you to recurse into a named function that is stored in a variable. For example, this would previously print "wrong" instead of "right": ```js function g() { console.log("wrong") } f = function g(i) { if (i !== 1) g(1); else console.log("right"); } f() ```
2022-06-13LibJS/Bytecode: Pass contains_direct_call_to_eval into ESFO::createLuke Wilde
Previously it would pass in `is_arrow_function` as `contains_direct_call_to_eval`, which broke strict mode propagation in arrow functions. This makes test-js work without falling apart because `this` is mysteriously undefined because of the use of arrow functions inside classes, which are strict mode by default.
2022-06-13LibJS/Bytecode: Make `return;` return undefinedLuke Wilde
Previously it would return whatever was in the accumulator.
2022-06-13LibJS/Bytecode: Make typeof return "undefined" on unresolvable IDsLuke Wilde
Previously it would throw instead of returning "undefined" for `typeof Identifier` if Identifier does not exist.
2022-06-13LibJS/Bytecode: Implement break/continue labelsLuke Wilde
This is done by keeping track of all the labels that apply to a given break/continue scope alongside their bytecode target. When a break/continue with a label is generated, we scan from the most inner scope to the most outer scope looking for the label, performing any necessary unwinds on the way. Once the label is found, it is then jumped to.