davidot
6255ca4a42
LibJS: Add DisposableStack{, Prototype, Constructor}
...
Since the async parts of the spec are not stage 3 at this point we don't
add AsyncDisposableStack.
2023-01-23 09:56:50 +00:00
davidot
3353cf68f1
LibJS: Add SuppressedError{, Prototype, Constructor}
2023-01-23 09:56:50 +00:00
Timothy Flynn
f3db548a3d
AK+Everywhere: Rename FlyString to DeprecatedFlyString
...
DeprecatedFlyString relies heavily on DeprecatedString's StringImpl, so
let's rename it to A) match the name of DeprecatedString, B) write a new
FlyString class that is tied to String.
2023-01-09 23:00:24 +00:00
Luke Wilde
fa1416987a
LibJS: Add yearOfWeek calendar methods and properties
...
This is a normative change in the Temporal spec.
See:
- https://github.com/tc39/proposal-temporal/commit/7fa4d18
- https://github.com/tc39/proposal-temporal/commit/caa941d
2022-12-26 09:30:36 +01:00
Idan Horowitz
2e806dab07
LibJS: Implement Set.prototype.isDisjointFrom
2022-12-02 13:09:15 +01:00
Idan Horowitz
3470f33a0f
LibJS: Implement Set.prototype.isSupersetOf
2022-12-02 13:09:15 +01:00
Idan Horowitz
e29be4eaa8
LibJS: Implement Set.prototype.isSubsetOf
2022-12-02 13:09:15 +01:00
Idan Horowitz
e359eeabe8
LibJS: Implement Set.prototype.symmetricDifference
2022-12-02 13:09:15 +01:00
Idan Horowitz
be8329d5f6
LibJS: Implement Set.prototype.difference
2022-12-02 13:09:15 +01:00
Idan Horowitz
9e693304ff
LibJS: Implement Set.prototype.intersection
2022-12-02 13:09:15 +01:00
Idan Horowitz
fee65f6453
LibJS: Implement Set.prototype.union
2022-12-02 13:09:15 +01:00
Timothy Flynn
3ee5217adc
LibJS: Implement String.prototype.toWellFormed
2022-12-01 17:03:55 +01:00
Timothy Flynn
0bb46235a7
LibJS: Implement String.prototype.isWellFormed
2022-12-01 17:03:55 +01:00
leeight
0d96468e9b
LibJS: Implement RegExp legacy static properties
...
RegExp legacy static properties Spec url is https://github.com/tc39/proposal-regexp-legacy-features
2022-10-17 17:08:33 +02:00
Ali Mohammad Pur
f4b26b0cea
LibJS: Hook up the 'v' (unicodeSets) RegExp flag
2022-07-20 21:25:59 +01:00
Timothy Flynn
33698b9615
LibJS+js: Parse new constructor options from Intl.NumberFormat V3
...
This contains minimal changes to parse newly added and modified options
from the Intl.NumberFormat V3 proposal, while maintaining main spec
behavior in Intl.NumberFormat.prototype.format. The parsed options are
reflected only in Intl.NumberFormat.prototype.resolvedOptions and the js
REPL.
2022-07-13 19:22:26 +01:00
Timothy Flynn
f089c11b5b
LibJS: Implement Intl.PluralRules.prototype.selectRange
2022-07-12 00:43:34 +01:00
Timothy Flynn
36abcd820d
LibJS: Implement Intl.PluralRules.prototype.select
2022-07-08 11:51:54 +02:00
Timothy Flynn
b3deec061e
LibJS: Implement Intl.Locale.prototype.weekInfo property
2022-07-06 16:56:42 +02:00
Timothy Flynn
88a560dd84
LibJS: Implement Intl.Locale.prototype.textInfo property
2022-07-06 16:56:42 +02:00
Timothy Flynn
814f13bc2a
LibJS: Implement Intl.Locale.prototype.timeZones property
2022-07-06 16:56:42 +02:00
Timothy Flynn
f6aa6a480c
LibJS: Implement Intl.Locale.prototype.numberingSystems property
2022-07-06 16:56:42 +02:00
Timothy Flynn
ee2be5895f
LibJS: Implement Intl.Locale.prototype.hourCycles property
2022-07-06 16:56:42 +02:00
Timothy Flynn
4d32f38a76
LibJS: Partially implement Intl.Locale.prototype.collations property
...
We do not yet parse collation data from the CLDR. This stubs out the
collations property, analogous to Intl.supportedValuesOf.
2022-07-06 16:56:42 +02:00
Timothy Flynn
e9bc35d805
LibJS: Implement Intl.Locale.prototype.calendars property
2022-07-06 16:56:42 +02:00
Linus Groh
028a6b90b1
LibJS: Revert partial resizable ArrayBuffer implementation
...
This is a manual but clean revert of all commits from #12595 .
Adding a partial implementation of the resizable ArrayBuffer proposal
without implementing all the updates to TypedArray infrastructure that
is also covered by the spec introduced a bunch of crashes, so we
decided to revert it for now until a full implementation is completed.
2022-07-06 15:52:57 +02:00
Idan Horowitz
d9a4b3e46a
LibJS: Implement Intl.DurationFormat.prototype.resolvedOptions
2022-07-01 01:00:05 +03:00
Idan Horowitz
97fe37bcc2
LibJS: Start implementing the stage 3 Intl.DurationFormat proposal
2022-07-01 01:00:05 +03:00
Linus Groh
ae81793f20
LibJS: Implement Array.prototype.toSpliced()
2022-06-13 20:26:54 +01:00
Linus Groh
ce17c868c0
LibJS: Implement Array.prototype.toSorted()
2022-06-13 20:26:54 +01:00
Linus Groh
e4370b7d82
LibJS: Implement Array.prototype.toReversed()
2022-06-13 20:26:54 +01:00
Linus Groh
013e2df858
LibJS: Rename Array.prototype.groupBy{,ToMap} => group{,ToMap}
...
This is a normative change in the Array Grouping spec.
See: https://github.com/tc39/proposal-array-grouping/commit/0cf4077
2022-06-13 20:05:24 +01:00
stelar7
771e3b9868
LibJS: Stub out String.prototype.normalize
2022-06-02 23:04:27 +01:00
ForLoveOfCats
f350c153e8
LibJS: Implement and test ArrayBuffer.prototype.resize
2022-03-02 20:53:18 +01:00
ForLoveOfCats
b29e19c52a
LibJS: Implement and test getters added by resizable ArrayBuffer
2022-03-02 20:53:18 +01:00
ForLoveOfCats
e8416b603f
LibJS: Accept ArrayBuffer constructor options argument
...
Test262 seems to test the changes in the "Resizable ArrayBuffer and
growable SharedArrayBuffer" proposal. Begin implementing this proposal
by accepting the new options object argument to the ArrayBuffer
constructor.
https://tc39.es/proposal-resizablearraybuffer
https://github.com/tc39/test262/blob/main/test/built-ins/ArrayBuffer/options-maxbytelength-diminuitive.js
2022-03-02 20:53:18 +01:00
Hendiadyoin1
89c82abf1f
LibJS: Implement non standard error.stack attribute
...
All other browser already support this feature.
There is a Stage 1 proposal to standardize this, but it does not seem
to be active.
2022-02-07 14:17:57 +00:00
Idan Horowitz
366468f1de
LibJS: Implement Intl %SegmentsPrototype%.containing
2022-01-31 21:05:04 +02:00
Idan Horowitz
96af50bbba
LibJS: Implement the Intl CreateSegmentDataObject AO
2022-01-31 21:05:04 +02:00
Timothy Flynn
fb08a5a896
LibJS: Implement Intl.supportedValuesOf
...
This is a stage 3 ECMA-402 proposal:
https://tc39.es/proposal-intl-enumeration/
2022-01-31 00:32:41 +00:00
Idan Horowitz
9001a8cbe1
LibJS: Implement Intl.Segmenter.prototype.segment
2022-01-30 19:47:01 +00:00
Idan Horowitz
a3bc06bb23
LibJS: Start implementing Intl.Segmenter
2022-01-30 19:47:01 +00:00
Timothy Flynn
06a6100b12
LibJS: Implement the Intl.Collator constructor
2022-01-29 20:27:24 +00:00
Timothy Flynn
74939eb943
LibJS: Implement Intl.PluralRules.prototype.resolvedOptions
2022-01-28 19:38:47 +00:00
Timothy Flynn
71f7e67a20
LibJS: Parse new Intl.DisplayNames "type" and "languageDisplay" options
...
Intl.DisplayNames v2 adds "calendar" and "dateTimeField" types, as well
as a "languageDisplay" option for the "language" type. This just adds
these options to the constructor.
2022-01-13 13:43:57 +01:00
Luke Wilde
0b9ea712be
LibJS: Implement Array.prototype.groupByToMap
2022-01-05 11:21:38 +01:00
Luke Wilde
48cc1c97d5
LibJS: Implement Array.prototype.groupBy
2022-01-05 11:21:38 +01:00
Timothy Flynn
534b2be16f
LibJS: Implement Number.prototype.toExponential
2022-01-04 13:07:42 +00:00
Timothy Flynn
dc984c53d8
LibJS: Implement Number.prototype.toPrecision
...
As noted in the prototype comments, this implementation becomes less
accurate as the precision approaches the limit of 100. For example:
(3).toPrecision(100)
Should result in "3." followed by 99 "0"s. However, due to the loss of
accuracy in the floating point computations, we currently result in
"2.9999999...".
2022-01-04 13:07:42 +00:00
Sam Atkins
1fba221b46
LibJS: Implement console.time/timeLog/timeEnd() methods
2021-12-27 21:44:07 +01:00