Linus Groh
6c345c8107
LibJS: Implement Temporal.ZonedDateTime.prototype.offset
2021-08-05 19:19:40 +02:00
Linus Groh
f937e9b966
LibJS: Implement Temporal.ZonedDateTime.prototype.offsetNanoseconds
2021-08-05 19:19:40 +02:00
Linus Groh
dd36593c72
LibJS: Implement Temporal.ZonedDateTime.prototype.inLeapYear
2021-08-05 19:19:40 +02:00
Linus Groh
5a7db1b5f4
LibJS: Implement Temporal.ZonedDateTime.prototype.monthsInYear
2021-08-05 19:19:40 +02:00
Linus Groh
204ba01416
LibJS: Implement Temporal.ZonedDateTime.prototype.daysInYear
2021-08-05 19:19:40 +02:00
Linus Groh
6007fc4804
LibJS: Implement Temporal.ZonedDateTime.prototype.daysInMonth
2021-08-05 19:19:40 +02:00
Linus Groh
d89d55a7a3
LibJS: Implement Temporal.ZonedDateTime.prototype.daysInWeek
2021-08-05 19:19:40 +02:00
Linus Groh
540fdbcf5b
LibJS: Implement Temporal.ZonedDateTime.prototype.weekOfYear
2021-08-05 19:19:40 +02:00
Linus Groh
d20a4fe43e
LibJS: Implement Temporal.ZonedDateTime.prototype.dayOfYear
2021-08-05 19:19:40 +02:00
Linus Groh
39e67a5823
LibJS: Implement Temporal.ZonedDateTime.prototype.dayOfWeek
2021-08-05 19:19:40 +02:00
Linus Groh
f86bbb7a71
LibJS: Implement Temporal.ZonedDateTime.prototype.epochNanoseconds
2021-08-05 19:19:40 +02:00
Linus Groh
62294d62c5
LibJS: Implement Temporal.ZonedDateTime.prototype.epochMicroseconds
2021-08-05 19:19:40 +02:00
Linus Groh
a9162b7e98
LibJS: Implement Temporal.ZonedDateTime.prototype.epochMilliseconds
2021-08-05 19:19:40 +02:00
Linus Groh
47135af987
LibJS: Implement Temporal.ZonedDateTime.prototype.epochSeconds
2021-08-05 19:19:40 +02:00
Linus Groh
a1082412ef
LibJS: Implement Temporal.ZonedDateTime.prototype.nanosecond
2021-08-05 19:19:40 +02:00
Linus Groh
4b22d0f2ce
LibJS: Implement Temporal.ZonedDateTime.prototype.microsecond
2021-08-05 19:19:40 +02:00
Linus Groh
752b3eb0c0
LibJS: Implement Temporal.ZonedDateTime.prototype.millisecond
2021-08-05 19:19:40 +02:00
Linus Groh
9d9ab492df
LibJS: Implement Temporal.ZonedDateTime.prototype.second
2021-08-05 19:19:40 +02:00
Linus Groh
a6775517ad
LibJS: Implement Temporal.ZonedDateTime.prototype.minute
2021-08-05 19:19:40 +02:00
Linus Groh
32f1e17e71
LibJS: Implement Temporal.ZonedDateTime.prototype.hour
2021-08-05 19:19:40 +02:00
Linus Groh
0580f102e4
LibJS: Implement Temporal.ZonedDateTime.prototype.day
2021-08-05 19:19:40 +02:00
Linus Groh
30e27f6483
LibJS: Implement Temporal.ZonedDateTime.prototype.monthCode
2021-08-05 19:19:40 +02:00
Linus Groh
fd18dc782f
LibJS: Implement Temporal.ZonedDateTime.prototype.month
2021-08-05 19:19:40 +02:00
Linus Groh
b8ac31500c
LibJS: Implement Temporal.ZonedDateTime.prototype.year
2021-08-05 19:19:40 +02:00
Linus Groh
e036f4a786
LibJS: Make regulate_iso_date() and iso_date_from_fields() use ISODate
...
No need for TemporalDate, we don't use the calendar field here anyway.
2021-08-05 19:19:40 +02:00
Timothy Flynn
70080feab2
AK+LibJS: Implement String.from{CharCode,CodePoint} using UTF-16 strings
...
Most of String.prototype and RegExp.prototype is implemented with UTF-16
so this is to prevent extra copying of the string data.
2021-08-04 11:18:24 +02:00
Timothy Flynn
b6ff7f4fcc
LibJS: Allow PrimitiveString to be created with a UTF-16 string
...
PrimitiveString may currently only be created with a UTF-8 string, and
it transcodes on the fly when a UTF-16 string is needed. Allow creating
a PrimitiveString from a UTF-16 string to avoid unnecessary transcoding
when the caller only wants UTF-16.
2021-08-04 11:18:24 +02:00
Timothy Flynn
4c2cc419f9
LibJS: Decode UTF-16 surrogate pairs during string literal construction
...
Rather than deferring this decoding to PrimitiveString, we can decode
surrogate pairs when parsing the string. This prevents a string copy
when constructing the PrimitiveString.
2021-08-04 11:18:24 +02:00
Lenny Maiorani
97bd13264a
Everywhere: Make use of container version of all_of
...
Problem:
- New `all_of` implementation takes the entire container so the user
does not need to pass explicit begin/end iterators. This is unused
except is in tests.
Solution:
- Make use of the new and more user-friendly version where possible.
2021-08-03 10:46:43 +02:00
Linus Groh
f58891ed42
LibJS: Add a js_bigint(VM&, ...) overload and use it
...
We already have js_string(VM&, ...) and js_symbol(VM&, ...) overloads,
so feels very familiar.
2021-08-03 00:14:48 +01:00
Linus Groh
a06bd451d4
LibJS: Implement Temporal.Now.zonedDateTimeISO()
2021-08-01 20:31:31 +01:00
Linus Groh
36c79c2989
LibJS: Implement Temporal.Now.zonedDateTime()
2021-08-01 20:31:31 +01:00
Linus Groh
49c5f87274
LibJS: Implement Temporal.ZonedDateTime.prototype.timeZone
2021-08-01 20:31:31 +01:00
Linus Groh
d022b74d33
LibJS: Implement Temporal.ZonedDateTime.prototype.calendar
2021-08-01 20:31:31 +01:00
Linus Groh
bc416ab802
LibJS: Implement Temporal.ZonedDateTime.prototype[@@toStringTag]
2021-08-01 20:31:31 +01:00
Linus Groh
4640643019
LibJS: Handle ZonedDateTime in ToTemporalDate
2021-08-01 20:31:31 +01:00
Linus Groh
6f75dcc7b8
LibJS: Handle ZonedDateTime in ToTemporalInstant
2021-08-01 20:31:31 +01:00
Linus Groh
1f5098f61e
LibJS: Handle ZonedDateTime in ToTemporalTimeZone
2021-08-01 20:31:31 +01:00
Linus Groh
fa0d6d1045
LibJS: Handle ZonedDateTime in GetTemporalCalendarWithISODefault
2021-08-01 20:31:31 +01:00
Linus Groh
14e7eff43f
LibJS: Handle ZonedDateTime in ToTemporalCalendar
2021-08-01 20:31:31 +01:00
Linus Groh
cfb77b66e5
LibJS: Start implementing Temporal.ZonedDateTime
...
This commit adds the ZonedDateTime object itself, its constructor and
prototype (currently empty), and the CreateTemporalZonedDateTime
abstract operation.
2021-08-01 20:31:31 +01:00
Linus Groh
1b9b995f93
LibJS: Use "T m_foo; // [[Foo]]" style for all Temporal internal slots
2021-08-01 20:31:31 +01:00
Linus Groh
dc80a258f6
LibJS: Implement Temporal.Calendar.from()
2021-08-01 11:40:25 +01:00
Linus Groh
e511390423
LibJS: Implement Temporal.TimeZone.prototype.getPlainDateTimeFor()
2021-08-01 10:24:38 +01:00
Linus Groh
c4123d8aad
LibJS: Implement Temporal.TimeZone.prototype.getOffsetStringFor()
2021-08-01 10:24:38 +01:00
Linus Groh
f987c11464
LibJS: Implement Temporal.TimeZone.from()
2021-08-01 10:24:38 +01:00
Brian Gianforcaro
53166c10ca
LibJS: Remove unused header includes
2021-08-01 08:10:16 +02:00
Brian Gianforcaro
b10657a2b6
LibJS: Remove unused includes out of Cell.h, move to the users
...
Almost everything in LibJS includes Cell.h, don't force all code to
include AK/TypeCasts.h + AK/String.h. Instead include them where they
are actually used and required.
2021-08-01 08:10:16 +02:00
Idan Horowitz
64a98d0f90
LibJS: Implement Temporal.PlainDateTime.prototype.toPlainTime
2021-07-31 00:16:41 +01:00
Idan Horowitz
010761aff4
LibJS: Implement Temporal.PlainDateTime.prototype.withPlainDate
2021-07-31 00:16:41 +01:00