| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  * Copyright (c) 2020, Andreas Kling <kling@serenityos.org> | 
					
						
							|  |  |  |  * | 
					
						
							| 
									
										
										
										
											2021-04-22 01:24:48 -07:00
										 |  |  |  * SPDX-License-Identifier: BSD-2-Clause | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #pragma once
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <AK/FlyString.h>
 | 
					
						
							|  |  |  | #include <LibJS/Forward.h>
 | 
					
						
							| 
									
										
										
										
											2021-10-24 16:01:24 +02:00
										 |  |  | #include <LibJS/Runtime/PropertyKey.h>
 | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | namespace JS { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define ENUMERATE_STANDARD_PROPERTY_NAMES(P) \
 | 
					
						
							| 
									
										
										
										
											2021-06-17 14:12:38 +03:00
										 |  |  |     P(__proto__)                             \ | 
					
						
							| 
									
										
										
										
											2021-06-17 14:14:09 +03:00
										 |  |  |     P(__defineGetter__)                      \ | 
					
						
							|  |  |  |     P(__defineSetter__)                      \ | 
					
						
							| 
									
										
										
										
											2021-06-17 14:15:14 +03:00
										 |  |  |     P(__lookupGetter__)                      \ | 
					
						
							|  |  |  |     P(__lookupSetter__)                      \ | 
					
						
							| 
									
										
										
										
											2021-07-10 22:53:54 -04:00
										 |  |  |     P(Atomics)                               \ | 
					
						
							| 
									
										
										
										
											2020-12-02 09:58:48 +00:00
										 |  |  |     P(BYTES_PER_ELEMENT)                     \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(BigInt)                                \ | 
					
						
							|  |  |  |     P(Boolean)                               \ | 
					
						
							|  |  |  |     P(E)                                     \ | 
					
						
							|  |  |  |     P(EPSILON)                               \ | 
					
						
							| 
									
										
										
										
											2021-06-27 21:48:34 +02:00
										 |  |  |     P(Function)                              \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(Infinity)                              \ | 
					
						
							| 
									
										
										
										
											2021-08-08 18:27:28 +01:00
										 |  |  |     P(Intl)                                  \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(JSON)                                  \ | 
					
						
							|  |  |  |     P(LN10)                                  \ | 
					
						
							|  |  |  |     P(LN2)                                   \ | 
					
						
							|  |  |  |     P(LOG10E)                                \ | 
					
						
							|  |  |  |     P(LOG2E)                                 \ | 
					
						
							|  |  |  |     P(MAX_SAFE_INTEGER)                      \ | 
					
						
							| 
									
										
										
										
											2021-06-05 00:56:43 +03:00
										 |  |  |     P(MAX_VALUE)                             \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(MIN_SAFE_INTEGER)                      \ | 
					
						
							| 
									
										
										
										
											2021-06-05 00:56:43 +03:00
										 |  |  |     P(MIN_VALUE)                             \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(Math)                                  \ | 
					
						
							|  |  |  |     P(NEGATIVE_INFINITY)                     \ | 
					
						
							|  |  |  |     P(NaN)                                   \ | 
					
						
							| 
									
										
										
										
											2021-07-19 00:25:22 +01:00
										 |  |  |     P(Now)                                   \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(Number)                                \ | 
					
						
							|  |  |  |     P(PI)                                    \ | 
					
						
							|  |  |  |     P(POSITIVE_INFINITY)                     \ | 
					
						
							|  |  |  |     P(Proxy)                                 \ | 
					
						
							|  |  |  |     P(Reflect)                               \ | 
					
						
							|  |  |  |     P(RegExp)                                \ | 
					
						
							|  |  |  |     P(SQRT1_2)                               \ | 
					
						
							|  |  |  |     P(SQRT2)                                 \ | 
					
						
							|  |  |  |     P(String)                                \ | 
					
						
							|  |  |  |     P(Symbol)                                \ | 
					
						
							| 
									
										
										
										
											2021-07-06 19:14:47 +01:00
										 |  |  |     P(Temporal)                              \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(UTC)                                   \ | 
					
						
							|  |  |  |     P(abs)                                   \ | 
					
						
							| 
									
										
										
										
											2020-12-08 16:22:07 +01:00
										 |  |  |     P(acos)                                  \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(acosh)                                 \ | 
					
						
							| 
									
										
										
										
											2021-06-09 00:14:08 +03:00
										 |  |  |     P(add)                                   \ | 
					
						
							| 
									
										
											  
											
												LibJS: Add initial support for Promises
Almost a year after first working on this, it's finally done: an
implementation of Promises for LibJS! :^)
The core functionality is working and closely following the spec [1].
I mostly took the pseudo code and transformed it into C++ - if you read
and understand it, you will know how the spec implements Promises; and
if you read the spec first, the code will look very familiar.
Implemented functions are:
- Promise() constructor
- Promise.prototype.then()
- Promise.prototype.catch()
- Promise.prototype.finally()
- Promise.resolve()
- Promise.reject()
For the tests I added a new function to test-js's global object,
runQueuedPromiseJobs(), which calls vm.run_queued_promise_jobs().
By design, queued jobs normally only run after the script was fully
executed, making it improssible to test handlers in individual test()
calls by default [2].
Subsequent commits include integrations into LibWeb and js(1) -
pretty-printing, running queued promise jobs when necessary.
This has an unusual amount of dbgln() statements, all hidden behind the
PROMISE_DEBUG flag - I'm leaving them in for now as they've been very
useful while debugging this, things can get quite complex with so many
asynchronously executed functions.
I've not extensively explored use of these APIs for promise-based
functionality in LibWeb (fetch(), Notification.requestPermission()
etc.), but we'll get there in due time.
[1]: https://tc39.es/ecma262/#sec-promise-objects
[2]: https://tc39.es/ecma262/#sec-jobs-and-job-queues
											
										 
											2021-04-01 22:13:29 +02:00
										 |  |  |     P(all)                                   \ | 
					
						
							|  |  |  |     P(allSettled)                            \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(anchor)                                \ | 
					
						
							| 
									
										
											  
											
												LibJS: Add initial support for Promises
Almost a year after first working on this, it's finally done: an
implementation of Promises for LibJS! :^)
The core functionality is working and closely following the spec [1].
I mostly took the pseudo code and transformed it into C++ - if you read
and understand it, you will know how the spec implements Promises; and
if you read the spec first, the code will look very familiar.
Implemented functions are:
- Promise() constructor
- Promise.prototype.then()
- Promise.prototype.catch()
- Promise.prototype.finally()
- Promise.resolve()
- Promise.reject()
For the tests I added a new function to test-js's global object,
runQueuedPromiseJobs(), which calls vm.run_queued_promise_jobs().
By design, queued jobs normally only run after the script was fully
executed, making it improssible to test handlers in individual test()
calls by default [2].
Subsequent commits include integrations into LibWeb and js(1) -
pretty-printing, running queued promise jobs when necessary.
This has an unusual amount of dbgln() statements, all hidden behind the
PROMISE_DEBUG flag - I'm leaving them in for now as they've been very
useful while debugging this, things can get quite complex with so many
asynchronously executed functions.
I've not extensively explored use of these APIs for promise-based
functionality in LibWeb (fetch(), Notification.requestPermission()
etc.), but we'll get there in due time.
[1]: https://tc39.es/ecma262/#sec-promise-objects
[2]: https://tc39.es/ecma262/#sec-jobs-and-job-queues
											
										 
											2021-04-01 22:13:29 +02:00
										 |  |  |     P(any)                                   \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(apply)                                 \ | 
					
						
							| 
									
										
										
										
											2020-12-05 16:38:29 +01:00
										 |  |  |     P(arguments)                             \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(asIntN)                                \ | 
					
						
							|  |  |  |     P(asUintN)                               \ | 
					
						
							| 
									
										
										
										
											2020-12-08 16:22:07 +01:00
										 |  |  |     P(asin)                                  \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(asinh)                                 \ | 
					
						
							| 
									
										
										
										
											2021-04-18 17:08:14 +02:00
										 |  |  |     P(assert)                                \ | 
					
						
							| 
									
										
										
										
											2021-06-12 11:35:53 +01:00
										 |  |  |     P(assign)                                \ | 
					
						
							| 
									
										
										
										
											2021-03-12 18:13:12 +01:00
										 |  |  |     P(at)                                    \ | 
					
						
							| 
									
										
										
										
											2020-12-08 09:52:33 +01:00
										 |  |  |     P(atan)                                  \ | 
					
						
							| 
									
										
										
										
											2020-12-28 17:34:51 +03:00
										 |  |  |     P(atan2)                                 \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(atanh)                                 \ | 
					
						
							| 
									
										
										
										
											2021-09-01 22:39:40 -04:00
										 |  |  |     P(baseName)                              \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(big)                                   \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(bind)                                  \ | 
					
						
							| 
									
										
										
										
											2021-07-16 00:15:56 +01:00
										 |  |  |     P(blank)                                 \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(blink)                                 \ | 
					
						
							|  |  |  |     P(bold)                                  \ | 
					
						
							| 
									
										
										
										
											2021-05-21 21:26:18 +01:00
										 |  |  |     P(buffer)                                \ | 
					
						
							| 
									
										
										
										
											2020-12-02 20:49:31 +00:00
										 |  |  |     P(byteLength)                            \ | 
					
						
							| 
									
										
										
										
											2021-05-21 21:45:47 +01:00
										 |  |  |     P(byteOffset)                            \ | 
					
						
							| 
									
										
										
										
											2021-07-19 00:29:26 +03:00
										 |  |  |     P(calendar)                              \ | 
					
						
							| 
									
										
										
										
											2021-08-18 21:15:04 +01:00
										 |  |  |     P(calendarName)                          \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(call)                                  \ | 
					
						
							| 
									
										
										
										
											2021-03-14 16:41:00 +01:00
										 |  |  |     P(callee)                                \ | 
					
						
							| 
									
										
										
										
											2021-06-28 03:53:35 +03:00
										 |  |  |     P(caller)                                \ | 
					
						
							| 
									
										
										
										
											2021-09-01 22:08:15 -04:00
										 |  |  |     P(caseFirst)                             \ | 
					
						
							| 
									
										
										
										
											2021-06-11 20:40:08 +01:00
										 |  |  |     P(cause)                                 \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(cbrt)                                  \ | 
					
						
							|  |  |  |     P(ceil)                                  \ | 
					
						
							|  |  |  |     P(charAt)                                \ | 
					
						
							|  |  |  |     P(charCodeAt)                            \ | 
					
						
							| 
									
										
										
										
											2021-06-15 22:21:24 +03:00
										 |  |  |     P(cleanupSome)                           \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(clear)                                 \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(clz32)                                 \ | 
					
						
							| 
									
										
										
										
											2021-06-16 17:30:41 +03:00
										 |  |  |     P(codePointAt)                           \ | 
					
						
							| 
									
										
										
										
											2021-09-01 22:08:15 -04:00
										 |  |  |     P(collation)                             \ | 
					
						
							| 
									
										
										
										
											2021-09-10 11:04:54 -04:00
										 |  |  |     P(compactDisplay)                        \ | 
					
						
							| 
									
										
										
										
											2021-07-12 08:59:34 -04:00
										 |  |  |     P(compareExchange)                       \ | 
					
						
							| 
									
										
										
										
											2021-08-20 10:41:27 -04:00
										 |  |  |     P(compile)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(concat)                                \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(configurable)                          \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(console)                               \ | 
					
						
							|  |  |  |     P(construct)                             \ | 
					
						
							|  |  |  |     P(constructor)                           \ | 
					
						
							| 
									
										
										
										
											2022-01-30 21:12:42 +02:00
										 |  |  |     P(containing)                            \ | 
					
						
							| 
									
										
										
										
											2021-07-11 21:18:48 +03:00
										 |  |  |     P(compare)                               \ | 
					
						
							| 
									
										
										
										
											2021-06-13 18:09:34 +02:00
										 |  |  |     P(copyWithin)                            \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(cos)                                   \ | 
					
						
							| 
									
										
										
										
											2020-12-28 17:34:51 +03:00
										 |  |  |     P(cosh)                                  \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(count)                                 \ | 
					
						
							|  |  |  |     P(countReset)                            \ | 
					
						
							| 
									
										
										
										
											2021-04-10 18:40:12 +02:00
										 |  |  |     P(create)                                \ | 
					
						
							| 
									
										
										
										
											2021-09-10 11:04:54 -04:00
										 |  |  |     P(currency)                              \ | 
					
						
							|  |  |  |     P(currencyDisplay)                       \ | 
					
						
							|  |  |  |     P(currencySign)                          \ | 
					
						
							| 
									
										
										
										
											2021-08-30 20:44:05 +01:00
										 |  |  |     P(dateAdd)                               \ | 
					
						
							| 
									
										
										
										
											2021-07-21 22:17:40 +03:00
										 |  |  |     P(dateFromFields)                        \ | 
					
						
							| 
									
										
										
										
											2021-11-28 17:55:47 -05:00
										 |  |  |     P(dateStyle)                             \ | 
					
						
							| 
									
										
										
										
											2021-10-10 22:46:10 +01:00
										 |  |  |     P(dateUntil)                             \ | 
					
						
							| 
									
										
										
										
											2021-07-21 22:17:40 +03:00
										 |  |  |     P(day)                                   \ | 
					
						
							| 
									
										
										
										
											2021-07-23 17:46:20 +03:00
										 |  |  |     P(dayOfWeek)                             \ | 
					
						
							| 
									
										
										
										
											2021-07-23 17:58:44 +03:00
										 |  |  |     P(dayOfYear)                             \ | 
					
						
							| 
									
										
										
										
											2021-11-28 17:55:47 -05:00
										 |  |  |     P(dayPeriod)                             \ | 
					
						
							| 
									
										
										
										
											2021-07-15 23:47:04 +01:00
										 |  |  |     P(days)                                  \ | 
					
						
							| 
									
										
										
										
											2021-07-23 18:36:34 +03:00
										 |  |  |     P(daysInMonth)                           \ | 
					
						
							| 
									
										
										
										
											2021-07-23 18:27:47 +03:00
										 |  |  |     P(daysInWeek)                            \ | 
					
						
							| 
									
										
										
										
											2021-07-23 18:46:49 +03:00
										 |  |  |     P(daysInYear)                            \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(debug)                                 \ | 
					
						
							| 
									
										
										
										
											2021-04-13 22:50:29 +03:00
										 |  |  |     P(decodeURI)                             \ | 
					
						
							|  |  |  |     P(decodeURIComponent)                    \ | 
					
						
							| 
									
										
										
										
											2021-04-10 18:39:11 +02:00
										 |  |  |     P(defineProperties)                      \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(defineProperty)                        \ | 
					
						
							|  |  |  |     P(deleteProperty)                        \ | 
					
						
							| 
									
										
										
										
											2021-06-12 17:38:34 +03:00
										 |  |  |     P(deref)                                 \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(description)                           \ | 
					
						
							| 
									
										
										
										
											2021-11-01 14:20:06 +01:00
										 |  |  |     P(disambiguation)                        \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(done)                                  \ | 
					
						
							| 
									
										
										
										
											2020-11-19 01:50:00 +03:30
										 |  |  |     P(dotAll)                                \ | 
					
						
							| 
									
										
										
										
											2021-04-13 22:50:29 +03:00
										 |  |  |     P(encodeURI)                             \ | 
					
						
							|  |  |  |     P(encodeURIComponent)                    \ | 
					
						
							| 
									
										
										
										
											2020-12-25 12:58:34 +11:00
										 |  |  |     P(endsWith)                              \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(entries)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(enumerable)                            \ | 
					
						
							| 
									
										
										
										
											2021-07-08 22:11:51 +01:00
										 |  |  |     P(epochMicroseconds)                     \ | 
					
						
							| 
									
										
										
										
											2021-07-08 21:56:03 +01:00
										 |  |  |     P(epochMilliseconds)                     \ | 
					
						
							| 
									
										
										
										
											2021-07-08 22:20:49 +01:00
										 |  |  |     P(epochNanoseconds)                      \ | 
					
						
							| 
									
										
										
										
											2021-07-08 21:47:28 +01:00
										 |  |  |     P(epochSeconds)                          \ | 
					
						
							| 
									
										
										
										
											2021-07-11 21:23:38 +03:00
										 |  |  |     P(equals)                                \ | 
					
						
							| 
									
										
										
										
											2021-08-27 19:45:10 +01:00
										 |  |  |     P(era)                                   \ | 
					
						
							| 
									
										
										
										
											2021-08-27 19:52:41 +01:00
										 |  |  |     P(eraYear)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(error)                                 \ | 
					
						
							| 
									
										
										
										
											2021-06-11 18:06:20 +01:00
										 |  |  |     P(errors)                                \ | 
					
						
							| 
									
										
										
										
											2021-06-05 19:21:15 +03:00
										 |  |  |     P(escape)                                \ | 
					
						
							| 
									
										
										
										
											2021-03-14 16:20:01 +01:00
										 |  |  |     P(eval)                                  \ | 
					
						
							| 
									
										
										
										
											2021-10-13 21:40:33 +01:00
										 |  |  |     P(evaluate)                              \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(every)                                 \ | 
					
						
							| 
									
										
										
										
											2021-07-12 08:08:13 -04:00
										 |  |  |     P(exchange)                              \ | 
					
						
							| 
									
										
										
										
											2020-11-22 14:18:49 +03:30
										 |  |  |     P(exec)                                  \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(exp)                                   \ | 
					
						
							|  |  |  |     P(expm1)                                 \ | 
					
						
							| 
									
										
										
										
											2021-08-24 22:58:45 -04:00
										 |  |  |     P(fallback)                              \ | 
					
						
							| 
									
										
										
										
											2021-07-21 22:20:57 +03:00
										 |  |  |     P(fields)                                \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(fill)                                  \ | 
					
						
							|  |  |  |     P(filter)                                \ | 
					
						
							| 
									
										
											  
											
												LibJS: Add initial support for Promises
Almost a year after first working on this, it's finally done: an
implementation of Promises for LibJS! :^)
The core functionality is working and closely following the spec [1].
I mostly took the pseudo code and transformed it into C++ - if you read
and understand it, you will know how the spec implements Promises; and
if you read the spec first, the code will look very familiar.
Implemented functions are:
- Promise() constructor
- Promise.prototype.then()
- Promise.prototype.catch()
- Promise.prototype.finally()
- Promise.resolve()
- Promise.reject()
For the tests I added a new function to test-js's global object,
runQueuedPromiseJobs(), which calls vm.run_queued_promise_jobs().
By design, queued jobs normally only run after the script was fully
executed, making it improssible to test handlers in individual test()
calls by default [2].
Subsequent commits include integrations into LibWeb and js(1) -
pretty-printing, running queued promise jobs when necessary.
This has an unusual amount of dbgln() statements, all hidden behind the
PROMISE_DEBUG flag - I'm leaving them in for now as they've been very
useful while debugging this, things can get quite complex with so many
asynchronously executed functions.
I've not extensively explored use of these APIs for promise-based
functionality in LibWeb (fetch(), Notification.requestPermission()
etc.), but we'll get there in due time.
[1]: https://tc39.es/ecma262/#sec-promise-objects
[2]: https://tc39.es/ecma262/#sec-jobs-and-job-queues
											
										 
											2021-04-01 22:13:29 +02:00
										 |  |  |     P(finally)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(find)                                  \ | 
					
						
							| 
									
										
										
										
											2021-08-03 14:12:47 +02:00
										 |  |  |     P(findLast)                              \ | 
					
						
							|  |  |  |     P(findLastIndex)                         \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(findIndex)                             \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(fixed)                                 \ | 
					
						
							| 
									
										
										
										
											2020-11-19 01:50:00 +03:30
										 |  |  |     P(flags)                                 \ | 
					
						
							| 
									
										
										
										
											2021-02-16 17:16:13 -03:00
										 |  |  |     P(flat)                                  \ | 
					
						
							| 
									
										
										
										
											2021-06-13 16:21:59 +02:00
										 |  |  |     P(flatMap)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(floor)                                 \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(fontcolor)                             \ | 
					
						
							|  |  |  |     P(fontsize)                              \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(forEach)                               \ | 
					
						
							| 
									
										
										
										
											2021-09-06 14:37:23 -04:00
										 |  |  |     P(format)                                \ | 
					
						
							| 
									
										
										
										
											2021-11-28 17:55:47 -05:00
										 |  |  |     P(formatMatcher)                         \ | 
					
						
							| 
									
										
										
										
											2021-12-08 19:57:21 -05:00
										 |  |  |     P(formatRange)                           \ | 
					
						
							| 
									
										
										
										
											2021-12-09 13:35:59 -05:00
										 |  |  |     P(formatRangeToParts)                    \ | 
					
						
							| 
									
										
										
										
											2021-09-06 14:57:57 -04:00
										 |  |  |     P(formatToParts)                         \ | 
					
						
							| 
									
										
										
										
											2021-08-31 00:15:36 +01:00
										 |  |  |     P(fractionalSecondDigits)                \ | 
					
						
							| 
									
										
										
										
											2021-04-06 22:06:11 +02:00
										 |  |  |     P(freeze)                                \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(from)                                  \ | 
					
						
							|  |  |  |     P(fromCharCode)                          \ | 
					
						
							| 
									
										
										
										
											2021-06-16 11:36:23 +03:00
										 |  |  |     P(fromCodePoint)                         \ | 
					
						
							| 
									
										
										
										
											2021-06-15 12:46:14 +03:00
										 |  |  |     P(fromEntries)                           \ | 
					
						
							| 
									
										
										
										
											2021-07-09 12:10:16 +01:00
										 |  |  |     P(fromEpochMicroseconds)                 \ | 
					
						
							| 
									
										
										
										
											2021-07-09 12:00:31 +01:00
										 |  |  |     P(fromEpochMilliseconds)                 \ | 
					
						
							| 
									
										
										
										
											2021-07-09 12:20:11 +01:00
										 |  |  |     P(fromEpochNanoseconds)                  \ | 
					
						
							| 
									
										
										
										
											2021-07-09 11:51:23 +01:00
										 |  |  |     P(fromEpochSeconds)                      \ | 
					
						
							| 
									
										
										
										
											2020-12-28 17:34:51 +03:00
										 |  |  |     P(fround)                                \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(gc)                                    \ | 
					
						
							|  |  |  |     P(get)                                   \ | 
					
						
							| 
									
										
										
										
											2021-06-14 01:57:15 +03:00
										 |  |  |     P(getBigInt64)                           \ | 
					
						
							|  |  |  |     P(getBigUint64)                          \ | 
					
						
							| 
									
										
										
										
											2021-08-25 09:41:25 -04:00
										 |  |  |     P(getCanonicalLocales)                   \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(getDate)                               \ | 
					
						
							|  |  |  |     P(getDay)                                \ | 
					
						
							| 
									
										
										
										
											2021-06-14 01:57:15 +03:00
										 |  |  |     P(getFloat32)                            \ | 
					
						
							|  |  |  |     P(getFloat64)                            \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(getFullYear)                           \ | 
					
						
							|  |  |  |     P(getHours)                              \ | 
					
						
							| 
									
										
										
										
											2021-11-01 14:20:06 +01:00
										 |  |  |     P(getInstantFor)                         \ | 
					
						
							| 
									
										
										
										
											2021-06-14 01:57:15 +03:00
										 |  |  |     P(getInt8)                               \ | 
					
						
							|  |  |  |     P(getInt16)                              \ | 
					
						
							|  |  |  |     P(getInt32)                              \ | 
					
						
							| 
									
										
										
										
											2021-07-23 01:04:10 +01:00
										 |  |  |     P(getISOFields)                          \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(getMilliseconds)                       \ | 
					
						
							|  |  |  |     P(getMinutes)                            \ | 
					
						
							|  |  |  |     P(getMonth)                              \ | 
					
						
							| 
									
										
										
										
											2021-10-30 10:26:42 +02:00
										 |  |  |     P(getNextTransition)                     \ | 
					
						
							| 
									
										
										
										
											2021-07-25 20:19:37 +01:00
										 |  |  |     P(getOffsetNanosecondsFor)               \ | 
					
						
							| 
									
										
										
										
											2021-07-31 21:54:35 +01:00
										 |  |  |     P(getOffsetStringFor)                    \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(getOwnPropertyDescriptor)              \ | 
					
						
							| 
									
										
										
										
											2021-07-06 19:41:54 +03:00
										 |  |  |     P(getOwnPropertyDescriptors)             \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(getOwnPropertyNames)                   \ | 
					
						
							| 
									
										
										
										
											2021-06-12 17:41:13 +03:00
										 |  |  |     P(getOwnPropertySymbols)                 \ | 
					
						
							| 
									
										
										
										
											2021-07-31 22:21:53 +01:00
										 |  |  |     P(getPlainDateTimeFor)                   \ | 
					
						
							| 
									
										
										
										
											2021-10-30 10:22:19 +02:00
										 |  |  |     P(getPossibleInstantsFor)                \ | 
					
						
							| 
									
										
										
										
											2021-10-30 10:28:12 +02:00
										 |  |  |     P(getPreviousTransition)                 \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(getPrototypeOf)                        \ | 
					
						
							|  |  |  |     P(getSeconds)                            \ | 
					
						
							|  |  |  |     P(getTime)                               \ | 
					
						
							| 
									
										
										
										
											2021-06-06 15:53:52 +03:00
										 |  |  |     P(getTimezoneOffset)                     \ | 
					
						
							| 
									
										
										
										
											2021-06-14 01:57:15 +03:00
										 |  |  |     P(getUint8)                              \ | 
					
						
							|  |  |  |     P(getUint16)                             \ | 
					
						
							|  |  |  |     P(getUint32)                             \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(getUTCDate)                            \ | 
					
						
							|  |  |  |     P(getUTCDay)                             \ | 
					
						
							|  |  |  |     P(getUTCFullYear)                        \ | 
					
						
							|  |  |  |     P(getUTCHours)                           \ | 
					
						
							|  |  |  |     P(getUTCMilliseconds)                    \ | 
					
						
							|  |  |  |     P(getUTCMinutes)                         \ | 
					
						
							|  |  |  |     P(getUTCMonth)                           \ | 
					
						
							|  |  |  |     P(getUTCSeconds)                         \ | 
					
						
							| 
									
										
										
										
											2021-05-29 23:52:17 +03:00
										 |  |  |     P(getYear)                               \ | 
					
						
							| 
									
										
										
										
											2020-11-19 01:50:00 +03:30
										 |  |  |     P(global)                                \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(globalThis)                            \ | 
					
						
							| 
									
										
										
										
											2022-01-29 23:47:29 +02:00
										 |  |  |     P(granularity)                           \ | 
					
						
							| 
									
										
										
										
											2021-12-22 12:32:15 +00:00
										 |  |  |     P(group)                                 \ | 
					
						
							|  |  |  |     P(groupCollapsed)                        \ | 
					
						
							|  |  |  |     P(groupEnd)                              \ | 
					
						
							| 
									
										
										
										
											2020-11-22 14:18:49 +03:30
										 |  |  |     P(groups)                                \ | 
					
						
							| 
									
										
										
										
											2022-06-13 19:47:04 +01:00
										 |  |  |     P(groupToMap)                            \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(has)                                   \ | 
					
						
							| 
									
										
										
										
											2021-07-09 16:10:17 -04:00
										 |  |  |     P(hasIndices)                            \ | 
					
						
							| 
									
										
										
										
											2021-05-18 11:15:49 +02:00
										 |  |  |     P(hasOwn)                                \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(hasOwnProperty)                        \ | 
					
						
							| 
									
										
										
										
											2021-07-28 18:53:05 +01:00
										 |  |  |     P(hour)                                  \ | 
					
						
							| 
									
										
										
										
											2021-11-28 17:55:47 -05:00
										 |  |  |     P(hour12)                                \ | 
					
						
							| 
									
										
										
										
											2021-09-01 22:08:15 -04:00
										 |  |  |     P(hourCycle)                             \ | 
					
						
							| 
									
										
										
										
											2021-07-15 23:48:59 +01:00
										 |  |  |     P(hours)                                 \ | 
					
						
							| 
									
										
										
										
											2021-11-03 16:21:58 +00:00
										 |  |  |     P(hoursInDay)                            \ | 
					
						
							| 
									
										
										
										
											2020-12-28 17:34:51 +03:00
										 |  |  |     P(hypot)                                 \ | 
					
						
							| 
									
										
										
										
											2021-07-08 20:51:57 +01:00
										 |  |  |     P(id)                                    \ | 
					
						
							| 
									
										
										
										
											2020-11-19 01:50:00 +03:30
										 |  |  |     P(ignoreCase)                            \ | 
					
						
							| 
									
										
										
										
											2022-01-29 11:31:39 -05:00
										 |  |  |     P(ignorePunctuation)                     \ | 
					
						
							| 
									
										
										
										
											2020-12-28 17:34:51 +03:00
										 |  |  |     P(imul)                                  \ | 
					
						
							| 
									
										
										
										
											2021-10-15 01:10:05 +01:00
										 |  |  |     P(importValue)                           \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(includes)                              \ | 
					
						
							| 
									
										
										
										
											2020-11-22 14:18:49 +03:30
										 |  |  |     P(index)                                 \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(indexOf)                               \ | 
					
						
							| 
									
										
										
										
											2021-07-09 19:51:56 -04:00
										 |  |  |     P(indices)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(info)                                  \ | 
					
						
							| 
									
										
										
										
											2021-07-23 19:03:19 +03:00
										 |  |  |     P(inLeapYear)                            \ | 
					
						
							| 
									
										
										
										
											2020-11-22 14:18:49 +03:30
										 |  |  |     P(input)                                 \ | 
					
						
							| 
									
										
										
										
											2021-07-07 17:42:21 +01:00
										 |  |  |     P(instant)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(is)                                    \ | 
					
						
							|  |  |  |     P(isArray)                               \ | 
					
						
							|  |  |  |     P(isExtensible)                          \ | 
					
						
							|  |  |  |     P(isFinite)                              \ | 
					
						
							| 
									
										
										
										
											2021-04-06 22:45:12 +02:00
										 |  |  |     P(isFrozen)                              \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(isInteger)                             \ | 
					
						
							| 
									
										
										
										
											2021-07-12 10:35:14 -04:00
										 |  |  |     P(isLockFree)                            \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(isNaN)                                 \ | 
					
						
							| 
									
										
										
										
											2020-12-28 01:22:38 +00:00
										 |  |  |     P(isPrototypeOf)                         \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(isSafeInteger)                         \ | 
					
						
							| 
									
										
										
										
											2021-04-06 22:45:12 +02:00
										 |  |  |     P(isSealed)                              \ | 
					
						
							| 
									
										
										
										
											2020-12-02 20:49:31 +00:00
										 |  |  |     P(isView)                                \ | 
					
						
							| 
									
										
										
										
											2021-07-23 01:04:10 +01:00
										 |  |  |     P(isoDay)                                \ | 
					
						
							|  |  |  |     P(isoHour)                               \ | 
					
						
							|  |  |  |     P(isoMicrosecond)                        \ | 
					
						
							|  |  |  |     P(isoMillisecond)                        \ | 
					
						
							|  |  |  |     P(isoMinute)                             \ | 
					
						
							|  |  |  |     P(isoMonth)                              \ | 
					
						
							|  |  |  |     P(isoNanosecond)                         \ | 
					
						
							|  |  |  |     P(isoSecond)                             \ | 
					
						
							|  |  |  |     P(isoYear)                               \ | 
					
						
							| 
									
										
										
										
											2022-01-30 20:50:23 +02:00
										 |  |  |     P(isWordLike)                            \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(italics)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(join)                                  \ | 
					
						
							|  |  |  |     P(keyFor)                                \ | 
					
						
							|  |  |  |     P(keys)                                  \ | 
					
						
							| 
									
										
										
										
											2021-09-01 22:08:15 -04:00
										 |  |  |     P(language)                              \ | 
					
						
							| 
									
										
										
										
											2022-01-12 13:52:51 -05:00
										 |  |  |     P(languageDisplay)                       \ | 
					
						
							| 
									
										
										
										
											2021-09-06 21:21:57 +03:00
										 |  |  |     P(largestUnit)                           \ | 
					
						
							| 
									
										
										
										
											2020-11-19 01:50:00 +03:30
										 |  |  |     P(lastIndex)                             \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(lastIndexOf)                           \ | 
					
						
							|  |  |  |     P(length)                                \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(link)                                  \ | 
					
						
							| 
									
										
										
										
											2021-07-11 11:45:21 -04:00
										 |  |  |     P(load)                                  \ | 
					
						
							| 
									
										
										
										
											2021-08-24 23:26:44 -04:00
										 |  |  |     P(locale)                                \ | 
					
						
							| 
									
										
										
										
											2021-07-26 00:23:39 +02:00
										 |  |  |     P(localeCompare)                         \ | 
					
						
							| 
									
										
										
										
											2021-08-24 22:58:45 -04:00
										 |  |  |     P(localeMatcher)                         \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(log)                                   \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(log1p)                                 \ | 
					
						
							| 
									
										
										
										
											2020-12-28 17:34:51 +03:00
										 |  |  |     P(log2)                                  \ | 
					
						
							|  |  |  |     P(log10)                                 \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(map)                                   \ | 
					
						
							|  |  |  |     P(max)                                   \ | 
					
						
							| 
									
										
										
										
											2022-03-02 11:44:32 -05:00
										 |  |  |     P(maxByteLength)                         \ | 
					
						
							| 
									
										
										
										
											2021-09-02 19:03:41 -04:00
										 |  |  |     P(maximize)                              \ | 
					
						
							| 
									
										
										
										
											2021-08-16 22:23:52 +01:00
										 |  |  |     P(mergeFields)                           \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(message)                               \ | 
					
						
							| 
									
										
										
										
											2021-07-28 19:05:30 +01:00
										 |  |  |     P(microsecond)                           \ | 
					
						
							| 
									
										
										
										
											2021-07-15 23:57:07 +01:00
										 |  |  |     P(microseconds)                          \ | 
					
						
							| 
									
										
										
										
											2021-07-28 19:02:44 +01:00
										 |  |  |     P(millisecond)                           \ | 
					
						
							| 
									
										
										
										
											2021-07-15 23:54:58 +01:00
										 |  |  |     P(milliseconds)                          \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(min)                                   \ | 
					
						
							| 
									
										
										
										
											2021-09-02 21:45:42 -04:00
										 |  |  |     P(minimize)                              \ | 
					
						
							| 
									
										
										
										
											2021-09-10 11:04:54 -04:00
										 |  |  |     P(maximumFractionDigits)                 \ | 
					
						
							|  |  |  |     P(maximumSignificantDigits)              \ | 
					
						
							|  |  |  |     P(minimumFractionDigits)                 \ | 
					
						
							|  |  |  |     P(minimumIntegerDigits)                  \ | 
					
						
							|  |  |  |     P(minimumSignificantDigits)              \ | 
					
						
							| 
									
										
										
										
											2021-07-28 18:55:29 +01:00
										 |  |  |     P(minute)                                \ | 
					
						
							| 
									
										
										
										
											2021-07-15 23:51:02 +01:00
										 |  |  |     P(minutes)                               \ | 
					
						
							| 
									
										
										
										
											2021-07-21 22:17:40 +03:00
										 |  |  |     P(month)                                 \ | 
					
						
							|  |  |  |     P(monthCode)                             \ | 
					
						
							| 
									
										
										
										
											2021-08-16 18:04:58 +01:00
										 |  |  |     P(monthDayFromFields)                    \ | 
					
						
							| 
									
										
										
										
											2021-07-15 23:41:55 +01:00
										 |  |  |     P(months)                                \ | 
					
						
							| 
									
										
										
										
											2021-07-23 18:52:55 +03:00
										 |  |  |     P(monthsInYear)                          \ | 
					
						
							| 
									
										
										
										
											2020-11-19 01:50:00 +03:30
										 |  |  |     P(multiline)                             \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(name)                                  \ | 
					
						
							| 
									
										
										
										
											2021-07-28 19:07:29 +01:00
										 |  |  |     P(nanosecond)                            \ | 
					
						
							| 
									
										
										
										
											2021-07-16 00:07:49 +01:00
										 |  |  |     P(nanoseconds)                           \ | 
					
						
							| 
									
										
										
										
											2021-07-16 19:41:37 +01:00
										 |  |  |     P(negated)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(next)                                  \ | 
					
						
							| 
									
										
										
										
											2022-06-02 01:37:15 +02:00
										 |  |  |     P(normalize)                             \ | 
					
						
							| 
									
										
										
										
											2021-09-10 11:04:54 -04:00
										 |  |  |     P(notation)                              \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(now)                                   \ | 
					
						
							| 
									
										
										
										
											2021-09-01 22:08:15 -04:00
										 |  |  |     P(numberingSystem)                       \ | 
					
						
							|  |  |  |     P(numeric)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(of)                                    \ | 
					
						
							| 
									
										
										
										
											2021-08-04 23:18:19 +01:00
										 |  |  |     P(offset)                                \ | 
					
						
							| 
									
										
										
										
											2021-08-04 23:17:07 +01:00
										 |  |  |     P(offsetNanoseconds)                     \ | 
					
						
							| 
									
										
										
										
											2021-08-18 20:27:44 +01:00
										 |  |  |     P(overflow)                              \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(ownKeys)                               \ | 
					
						
							|  |  |  |     P(padEnd)                                \ | 
					
						
							|  |  |  |     P(padStart)                              \ | 
					
						
							|  |  |  |     P(parse)                                 \ | 
					
						
							|  |  |  |     P(parseFloat)                            \ | 
					
						
							| 
									
										
										
										
											2020-12-05 13:51:09 +01:00
										 |  |  |     P(parseInt)                              \ | 
					
						
							| 
									
										
										
										
											2021-07-27 00:21:16 +01:00
										 |  |  |     P(plainDate)                             \ | 
					
						
							| 
									
										
										
										
											2021-07-27 00:30:10 +01:00
										 |  |  |     P(plainDateISO)                          \ | 
					
						
							| 
									
										
										
										
											2021-07-27 00:49:52 +01:00
										 |  |  |     P(plainDateTime)                         \ | 
					
						
							| 
									
										
										
										
											2021-07-27 00:58:57 +01:00
										 |  |  |     P(plainDateTimeISO)                      \ | 
					
						
							| 
									
										
										
										
											2021-11-02 17:47:23 +01:00
										 |  |  |     P(plainTime)                             \ | 
					
						
							| 
									
										
										
										
											2021-07-28 19:29:16 +01:00
										 |  |  |     P(plainTimeISO)                          \ | 
					
						
							| 
									
										
										
										
											2022-01-28 13:42:20 -05:00
										 |  |  |     P(pluralCategories)                      \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(pop)                                   \ | 
					
						
							|  |  |  |     P(pow)                                   \ | 
					
						
							|  |  |  |     P(preventExtensions)                     \ | 
					
						
							| 
									
										
										
										
											2020-12-24 17:51:28 +00:00
										 |  |  |     P(propertyIsEnumerable)                  \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(prototype)                             \ | 
					
						
							| 
									
										
										
										
											2021-06-08 21:48:43 +01:00
										 |  |  |     P(proxy)                                 \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(push)                                  \ | 
					
						
							| 
									
										
											  
											
												LibJS: Add initial support for Promises
Almost a year after first working on this, it's finally done: an
implementation of Promises for LibJS! :^)
The core functionality is working and closely following the spec [1].
I mostly took the pseudo code and transformed it into C++ - if you read
and understand it, you will know how the spec implements Promises; and
if you read the spec first, the code will look very familiar.
Implemented functions are:
- Promise() constructor
- Promise.prototype.then()
- Promise.prototype.catch()
- Promise.prototype.finally()
- Promise.resolve()
- Promise.reject()
For the tests I added a new function to test-js's global object,
runQueuedPromiseJobs(), which calls vm.run_queued_promise_jobs().
By design, queued jobs normally only run after the script was fully
executed, making it improssible to test handlers in individual test()
calls by default [2].
Subsequent commits include integrations into LibWeb and js(1) -
pretty-printing, running queued promise jobs when necessary.
This has an unusual amount of dbgln() statements, all hidden behind the
PROMISE_DEBUG flag - I'm leaving them in for now as they've been very
useful while debugging this, things can get quite complex with so many
asynchronously executed functions.
I've not extensively explored use of these APIs for promise-based
functionality in LibWeb (fetch(), Notification.requestPermission()
etc.), but we'll get there in due time.
[1]: https://tc39.es/ecma262/#sec-promise-objects
[2]: https://tc39.es/ecma262/#sec-jobs-and-job-queues
											
										 
											2021-04-01 22:13:29 +02:00
										 |  |  |     P(race)                                  \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(random)                                \ | 
					
						
							|  |  |  |     P(raw)                                   \ | 
					
						
							| 
									
										
										
										
											2021-08-21 17:00:48 -04:00
										 |  |  |     P(reason)                                \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(reduce)                                \ | 
					
						
							|  |  |  |     P(reduceRight)                           \ | 
					
						
							| 
									
										
										
										
											2021-09-01 22:08:15 -04:00
										 |  |  |     P(region)                                \ | 
					
						
							| 
									
										
											  
											
												LibJS: Add initial support for Promises
Almost a year after first working on this, it's finally done: an
implementation of Promises for LibJS! :^)
The core functionality is working and closely following the spec [1].
I mostly took the pseudo code and transformed it into C++ - if you read
and understand it, you will know how the spec implements Promises; and
if you read the spec first, the code will look very familiar.
Implemented functions are:
- Promise() constructor
- Promise.prototype.then()
- Promise.prototype.catch()
- Promise.prototype.finally()
- Promise.resolve()
- Promise.reject()
For the tests I added a new function to test-js's global object,
runQueuedPromiseJobs(), which calls vm.run_queued_promise_jobs().
By design, queued jobs normally only run after the script was fully
executed, making it improssible to test handlers in individual test()
calls by default [2].
Subsequent commits include integrations into LibWeb and js(1) -
pretty-printing, running queued promise jobs when necessary.
This has an unusual amount of dbgln() statements, all hidden behind the
PROMISE_DEBUG flag - I'm leaving them in for now as they've been very
useful while debugging this, things can get quite complex with so many
asynchronously executed functions.
I've not extensively explored use of these APIs for promise-based
functionality in LibWeb (fetch(), Notification.requestPermission()
etc.), but we'll get there in due time.
[1]: https://tc39.es/ecma262/#sec-promise-objects
[2]: https://tc39.es/ecma262/#sec-jobs-and-job-queues
											
										 
											2021-04-01 22:13:29 +02:00
										 |  |  |     P(reject)                                \ | 
					
						
							| 
									
										
										
										
											2021-11-09 17:19:28 +00:00
										 |  |  |     P(relativeTo)                            \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(repeat)                                \ | 
					
						
							| 
									
										
										
										
											2022-03-02 11:24:46 -05:00
										 |  |  |     P(resize)                                \ | 
					
						
							| 
									
										
										
										
											2022-03-02 11:45:26 -05:00
										 |  |  |     P(resizable)                             \ | 
					
						
							| 
									
										
											  
											
												LibJS: Add initial support for Promises
Almost a year after first working on this, it's finally done: an
implementation of Promises for LibJS! :^)
The core functionality is working and closely following the spec [1].
I mostly took the pseudo code and transformed it into C++ - if you read
and understand it, you will know how the spec implements Promises; and
if you read the spec first, the code will look very familiar.
Implemented functions are:
- Promise() constructor
- Promise.prototype.then()
- Promise.prototype.catch()
- Promise.prototype.finally()
- Promise.resolve()
- Promise.reject()
For the tests I added a new function to test-js's global object,
runQueuedPromiseJobs(), which calls vm.run_queued_promise_jobs().
By design, queued jobs normally only run after the script was fully
executed, making it improssible to test handlers in individual test()
calls by default [2].
Subsequent commits include integrations into LibWeb and js(1) -
pretty-printing, running queued promise jobs when necessary.
This has an unusual amount of dbgln() statements, all hidden behind the
PROMISE_DEBUG flag - I'm leaving them in for now as they've been very
useful while debugging this, things can get quite complex with so many
asynchronously executed functions.
I've not extensively explored use of these APIs for promise-based
functionality in LibWeb (fetch(), Notification.requestPermission()
etc.), but we'll get there in due time.
[1]: https://tc39.es/ecma262/#sec-promise-objects
[2]: https://tc39.es/ecma262/#sec-jobs-and-job-queues
											
										 
											2021-04-01 22:13:29 +02:00
										 |  |  |     P(resolve)                               \ | 
					
						
							| 
									
										
										
										
											2021-08-24 23:26:44 -04:00
										 |  |  |     P(resolvedOptions)                       \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(reverse)                               \ | 
					
						
							| 
									
										
										
										
											2021-06-08 21:48:43 +01:00
										 |  |  |     P(revocable)                             \ | 
					
						
							|  |  |  |     P(revoke)                                \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(round)                                 \ | 
					
						
							| 
									
										
										
										
											2021-08-18 20:27:44 +01:00
										 |  |  |     P(roundingIncrement)                     \ | 
					
						
							|  |  |  |     P(roundingMode)                          \ | 
					
						
							| 
									
										
										
										
											2021-09-01 22:08:15 -04:00
										 |  |  |     P(script)                                \ | 
					
						
							| 
									
										
										
										
											2021-04-06 22:06:11 +02:00
										 |  |  |     P(seal)                                  \ | 
					
						
							| 
									
										
										
										
											2021-07-28 18:59:27 +01:00
										 |  |  |     P(second)                                \ | 
					
						
							| 
									
										
										
										
											2021-07-15 23:53:19 +01:00
										 |  |  |     P(seconds)                               \ | 
					
						
							| 
									
										
										
										
											2022-01-30 01:31:59 +02:00
										 |  |  |     P(segment)                               \ | 
					
						
							| 
									
										
										
										
											2022-01-29 11:31:39 -05:00
										 |  |  |     P(sensitivity)                           \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(set)                                   \ | 
					
						
							| 
									
										
										
										
											2021-06-14 02:02:53 +03:00
										 |  |  |     P(setBigInt64)                           \ | 
					
						
							|  |  |  |     P(setBigUint64)                          \ | 
					
						
							| 
									
										
										
										
											2021-06-06 16:25:33 +03:00
										 |  |  |     P(setDate)                               \ | 
					
						
							| 
									
										
										
										
											2021-06-14 02:02:53 +03:00
										 |  |  |     P(setFloat32)                            \ | 
					
						
							|  |  |  |     P(setFloat64)                            \ | 
					
						
							| 
									
										
										
										
											2021-03-14 16:23:46 +01:00
										 |  |  |     P(setFullYear)                           \ | 
					
						
							| 
									
										
										
										
											2021-03-19 22:12:08 +03:00
										 |  |  |     P(setHours)                              \ | 
					
						
							| 
									
										
										
										
											2021-06-14 02:02:53 +03:00
										 |  |  |     P(setInt8)                               \ | 
					
						
							|  |  |  |     P(setInt16)                              \ | 
					
						
							|  |  |  |     P(setInt32)                              \ | 
					
						
							| 
									
										
										
										
											2021-03-19 22:12:08 +03:00
										 |  |  |     P(setMilliseconds)                       \ | 
					
						
							|  |  |  |     P(setMinutes)                            \ | 
					
						
							| 
									
										
										
										
											2021-06-06 16:26:29 +03:00
										 |  |  |     P(setMonth)                              \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(setPrototypeOf)                        \ | 
					
						
							| 
									
										
										
										
											2021-03-19 22:12:08 +03:00
										 |  |  |     P(setSeconds)                            \ | 
					
						
							| 
									
										
										
										
											2021-06-06 16:27:21 +03:00
										 |  |  |     P(setTime)                               \ | 
					
						
							| 
									
										
										
										
											2021-06-14 02:02:53 +03:00
										 |  |  |     P(setUint8)                              \ | 
					
						
							|  |  |  |     P(setUint16)                             \ | 
					
						
							|  |  |  |     P(setUint32)                             \ | 
					
						
							| 
									
										
										
										
											2021-06-06 17:34:04 +03:00
										 |  |  |     P(setUTCDate)                            \ | 
					
						
							|  |  |  |     P(setUTCFullYear)                        \ | 
					
						
							|  |  |  |     P(setUTCHours)                           \ | 
					
						
							|  |  |  |     P(setUTCMilliseconds)                    \ | 
					
						
							|  |  |  |     P(setUTCMinutes)                         \ | 
					
						
							|  |  |  |     P(setUTCMonth)                           \ | 
					
						
							|  |  |  |     P(setUTCSeconds)                         \ | 
					
						
							| 
									
										
										
										
											2021-05-29 23:52:17 +03:00
										 |  |  |     P(setYear)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(shift)                                 \ | 
					
						
							|  |  |  |     P(sign)                                  \ | 
					
						
							| 
									
										
										
										
											2021-09-10 11:04:54 -04:00
										 |  |  |     P(signDisplay)                           \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(sin)                                   \ | 
					
						
							| 
									
										
										
										
											2021-09-06 21:36:54 +03:00
										 |  |  |     P(since)                                 \ | 
					
						
							| 
									
										
										
										
											2020-12-28 17:34:51 +03:00
										 |  |  |     P(sinh)                                  \ | 
					
						
							| 
									
										
										
										
											2021-06-09 00:08:47 +03:00
										 |  |  |     P(size)                                  \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(slice)                                 \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(small)                                 \ | 
					
						
							| 
									
										
										
										
											2021-08-18 20:27:44 +01:00
										 |  |  |     P(smallestUnit)                          \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(some)                                  \ | 
					
						
							| 
									
										
										
										
											2020-12-26 22:14:14 +11:00
										 |  |  |     P(sort)                                  \ | 
					
						
							| 
									
										
										
										
											2020-11-19 01:50:00 +03:30
										 |  |  |     P(source)                                \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(splice)                                \ | 
					
						
							|  |  |  |     P(sqrt)                                  \ | 
					
						
							| 
									
										
										
										
											2022-02-06 17:00:28 +01:00
										 |  |  |     P(stack)                                 \ | 
					
						
							| 
									
										
										
										
											2021-11-03 20:22:55 +00:00
										 |  |  |     P(startOfDay)                            \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(startsWith)                            \ | 
					
						
							| 
									
										
										
										
											2021-08-21 17:00:48 -04:00
										 |  |  |     P(status)                                \ | 
					
						
							| 
									
										
										
										
											2020-11-19 01:50:00 +03:30
										 |  |  |     P(sticky)                                \ | 
					
						
							| 
									
										
										
										
											2021-07-11 14:37:54 -04:00
										 |  |  |     P(store)                                 \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(strike)                                \ | 
					
						
							| 
									
										
										
										
											2020-11-29 20:28:10 +01:00
										 |  |  |     P(stringify)                             \ | 
					
						
							| 
									
										
										
										
											2021-08-24 22:58:45 -04:00
										 |  |  |     P(style)                                 \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(sub)                                   \ | 
					
						
							| 
									
										
										
										
											2021-07-09 17:17:10 +03:00
										 |  |  |     P(subarray)                              \ | 
					
						
							| 
									
										
										
										
											2020-11-29 20:28:10 +01:00
										 |  |  |     P(substr)                                \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(substring)                             \ | 
					
						
							| 
									
										
										
										
											2021-08-07 00:38:21 +01:00
										 |  |  |     P(subtract)                              \ | 
					
						
							| 
									
										
										
											
												LibJS: Add String.prototype.anchor & friends
Adds an implementation of the following StringPrototype methods:
anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link,
small, strike, sub, sup.
											
										 
											2021-05-30 01:44:18 +03:00
										 |  |  |     P(sup)                                   \ | 
					
						
							| 
									
										
										
										
											2021-09-04 17:08:57 +01:00
										 |  |  |     P(supportedLocalesOf)                    \ | 
					
						
							| 
									
										
										
										
											2022-01-30 17:36:23 -05:00
										 |  |  |     P(supportedValuesOf)                     \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(tan)                                   \ | 
					
						
							| 
									
										
										
										
											2020-12-28 17:34:51 +03:00
										 |  |  |     P(tanh)                                  \ | 
					
						
							| 
									
										
										
										
											2020-11-19 01:50:00 +03:30
										 |  |  |     P(test)                                  \ | 
					
						
							| 
									
										
											  
											
												LibJS: Add initial support for Promises
Almost a year after first working on this, it's finally done: an
implementation of Promises for LibJS! :^)
The core functionality is working and closely following the spec [1].
I mostly took the pseudo code and transformed it into C++ - if you read
and understand it, you will know how the spec implements Promises; and
if you read the spec first, the code will look very familiar.
Implemented functions are:
- Promise() constructor
- Promise.prototype.then()
- Promise.prototype.catch()
- Promise.prototype.finally()
- Promise.resolve()
- Promise.reject()
For the tests I added a new function to test-js's global object,
runQueuedPromiseJobs(), which calls vm.run_queued_promise_jobs().
By design, queued jobs normally only run after the script was fully
executed, making it improssible to test handlers in individual test()
calls by default [2].
Subsequent commits include integrations into LibWeb and js(1) -
pretty-printing, running queued promise jobs when necessary.
This has an unusual amount of dbgln() statements, all hidden behind the
PROMISE_DEBUG flag - I'm leaving them in for now as they've been very
useful while debugging this, things can get quite complex with so many
asynchronously executed functions.
I've not extensively explored use of these APIs for promise-based
functionality in LibWeb (fetch(), Notification.requestPermission()
etc.), but we'll get there in due time.
[1]: https://tc39.es/ecma262/#sec-promise-objects
[2]: https://tc39.es/ecma262/#sec-jobs-and-job-queues
											
										 
											2021-04-01 22:13:29 +02:00
										 |  |  |     P(then)                                  \ | 
					
						
							| 
									
										
										
										
											2021-12-22 16:40:57 +00:00
										 |  |  |     P(time)                                  \ | 
					
						
							|  |  |  |     P(timeEnd)                               \ | 
					
						
							|  |  |  |     P(timeLog)                               \ | 
					
						
							| 
									
										
										
										
											2021-11-28 17:55:47 -05:00
										 |  |  |     P(timeStyle)                             \ | 
					
						
							| 
									
										
										
										
											2021-07-06 23:54:53 +01:00
										 |  |  |     P(timeZone)                              \ | 
					
						
							| 
									
										
										
										
											2021-11-10 00:14:16 +00:00
										 |  |  |     P(timeZoneName)                          \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(toDateString)                          \ | 
					
						
							| 
									
										
										
										
											2022-01-03 19:48:44 -05:00
										 |  |  |     P(toExponential)                         \ | 
					
						
							| 
									
										
										
										
											2021-06-19 17:02:42 +03:00
										 |  |  |     P(toFixed)                               \ | 
					
						
							| 
									
										
										
										
											2021-03-14 16:40:41 +01:00
										 |  |  |     P(toGMTString)                           \ | 
					
						
							| 
									
										
										
										
											2021-08-05 21:48:23 +01:00
										 |  |  |     P(toInstant)                             \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(toISOString)                           \ | 
					
						
							|  |  |  |     P(toJSON)                                \ | 
					
						
							|  |  |  |     P(toLocaleDateString)                    \ | 
					
						
							| 
									
										
										
										
											2021-07-27 16:35:25 -04:00
										 |  |  |     P(toLocaleLowerCase)                     \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(toLocaleString)                        \ | 
					
						
							|  |  |  |     P(toLocaleTimeString)                    \ | 
					
						
							| 
									
										
										
										
											2021-07-27 16:35:25 -04:00
										 |  |  |     P(toLocaleUpperCase)                     \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(toLowerCase)                           \ | 
					
						
							| 
									
										
										
										
											2021-07-23 00:39:18 +01:00
										 |  |  |     P(toPlainDate)                           \ | 
					
						
							| 
									
										
										
										
											2021-07-30 00:28:04 +03:00
										 |  |  |     P(toPlainDateTime)                       \ | 
					
						
							| 
									
										
										
										
											2021-08-16 18:13:47 +01:00
										 |  |  |     P(toPlainMonthDay)                       \ | 
					
						
							| 
									
										
										
										
											2021-07-31 01:44:31 +03:00
										 |  |  |     P(toPlainTime)                           \ | 
					
						
							| 
									
										
										
										
											2021-08-16 00:42:01 +01:00
										 |  |  |     P(toPlainYearMonth)                      \ | 
					
						
							| 
									
										
										
										
											2022-01-02 23:06:51 -05:00
										 |  |  |     P(toPrecision)                           \ | 
					
						
							| 
									
										
										
										
											2022-06-13 07:57:38 +01:00
										 |  |  |     P(toReversed)                            \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(toString)                              \ | 
					
						
							| 
									
										
										
										
											2021-11-13 17:38:00 +00:00
										 |  |  |     P(total)                                 \ | 
					
						
							| 
									
										
										
										
											2021-07-08 00:31:49 +01:00
										 |  |  |     P(toTemporalInstant)                     \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(toTimeString)                          \ | 
					
						
							|  |  |  |     P(toUpperCase)                           \ | 
					
						
							| 
									
										
										
										
											2021-03-16 14:36:32 +01:00
										 |  |  |     P(toUTCString)                           \ | 
					
						
							| 
									
										
										
										
											2021-09-09 00:27:19 +01:00
										 |  |  |     P(toZonedDateTime)                       \ | 
					
						
							| 
									
										
										
										
											2021-09-09 00:35:24 +01:00
										 |  |  |     P(toZonedDateTimeISO)                    \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(trace)                                 \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(trim)                                  \ | 
					
						
							|  |  |  |     P(trimEnd)                               \ | 
					
						
							| 
									
										
										
										
											2021-06-02 00:59:15 +03:00
										 |  |  |     P(trimLeft)                              \ | 
					
						
							|  |  |  |     P(trimRight)                             \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(trimStart)                             \ | 
					
						
							|  |  |  |     P(trunc)                                 \ | 
					
						
							| 
									
										
										
										
											2021-08-24 22:58:45 -04:00
										 |  |  |     P(type)                                  \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(undefined)                             \ | 
					
						
							| 
									
										
										
										
											2021-06-05 19:21:15 +03:00
										 |  |  |     P(unescape)                              \ | 
					
						
							| 
									
										
										
										
											2020-11-19 01:50:00 +03:30
										 |  |  |     P(unicode)                               \ | 
					
						
							| 
									
										
										
										
											2021-09-10 11:04:54 -04:00
										 |  |  |     P(unit)                                  \ | 
					
						
							|  |  |  |     P(unitDisplay)                           \ | 
					
						
							| 
									
										
										
										
											2021-09-06 21:28:06 +03:00
										 |  |  |     P(until)                                 \ | 
					
						
							| 
									
										
										
										
											2021-06-15 22:21:24 +03:00
										 |  |  |     P(unregister)                            \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(unshift)                               \ | 
					
						
							| 
									
										
										
										
											2022-01-29 11:31:39 -05:00
										 |  |  |     P(usage)                                 \ | 
					
						
							| 
									
										
										
										
											2021-09-10 11:04:54 -04:00
										 |  |  |     P(useGrouping)                           \ | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     P(value)                                 \ | 
					
						
							|  |  |  |     P(valueOf)                               \ | 
					
						
							| 
									
										
										
										
											2020-10-14 00:03:58 +02:00
										 |  |  |     P(values)                                \ | 
					
						
							|  |  |  |     P(warn)                                  \ | 
					
						
							| 
									
										
										
										
											2021-07-23 18:19:45 +03:00
										 |  |  |     P(weekOfYear)                            \ | 
					
						
							| 
									
										
										
										
											2021-11-28 17:55:47 -05:00
										 |  |  |     P(weekday)                               \ | 
					
						
							| 
									
										
										
										
											2021-07-15 23:43:55 +01:00
										 |  |  |     P(weeks)                                 \ | 
					
						
							| 
									
										
										
										
											2021-07-16 19:30:52 +01:00
										 |  |  |     P(with)                                  \ | 
					
						
							| 
									
										
										
										
											2021-07-23 15:01:40 +03:00
										 |  |  |     P(withCalendar)                          \ | 
					
						
							| 
									
										
										
										
											2021-07-31 01:39:36 +03:00
										 |  |  |     P(withPlainDate)                         \ | 
					
						
							| 
									
										
										
										
											2021-08-27 19:05:16 +03:00
										 |  |  |     P(withPlainTime)                         \ | 
					
						
							| 
									
										
										
										
											2021-11-05 01:35:23 +00:00
										 |  |  |     P(withTimeZone)                          \ | 
					
						
							| 
									
										
										
										
											2021-07-15 23:34:53 +01:00
										 |  |  |     P(writable)                              \ | 
					
						
							| 
									
										
										
										
											2021-07-21 22:17:40 +03:00
										 |  |  |     P(year)                                  \ | 
					
						
							| 
									
										
										
										
											2021-08-16 00:35:05 +01:00
										 |  |  |     P(yearMonthFromFields)                   \ | 
					
						
							| 
									
										
										
										
											2021-08-01 18:31:56 +01:00
										 |  |  |     P(years)                                 \ | 
					
						
							| 
									
										
										
										
											2021-08-01 18:36:15 +01:00
										 |  |  |     P(zonedDateTime)                         \ | 
					
						
							|  |  |  |     P(zonedDateTimeISO) | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | struct CommonPropertyNames { | 
					
						
							| 
									
										
										
										
											2021-10-24 16:01:24 +02:00
										 |  |  |     PropertyKey and_ { "and", PropertyKey::StringMayBeNumber::No }; | 
					
						
							|  |  |  |     PropertyKey catch_ { "catch", PropertyKey::StringMayBeNumber::No }; | 
					
						
							|  |  |  |     PropertyKey delete_ { "delete", PropertyKey::StringMayBeNumber::No }; | 
					
						
							|  |  |  |     PropertyKey for_ { "for", PropertyKey::StringMayBeNumber::No }; | 
					
						
							|  |  |  |     PropertyKey or_ { "or", PropertyKey::StringMayBeNumber::No }; | 
					
						
							|  |  |  |     PropertyKey register_ { "register", PropertyKey::StringMayBeNumber::No }; | 
					
						
							|  |  |  |     PropertyKey return_ { "return", PropertyKey::StringMayBeNumber::No }; | 
					
						
							|  |  |  |     PropertyKey throw_ { "throw", PropertyKey::StringMayBeNumber::No }; | 
					
						
							|  |  |  |     PropertyKey xor_ { "xor", PropertyKey::StringMayBeNumber::No }; | 
					
						
							|  |  |  | #define __ENUMERATE(x) PropertyKey x { #x, PropertyKey::StringMayBeNumber::No };
 | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     ENUMERATE_STANDARD_PROPERTY_NAMES(__ENUMERATE) | 
					
						
							|  |  |  | #undef __ENUMERATE
 | 
					
						
							| 
									
										
										
										
											2021-10-24 16:01:24 +02:00
										 |  |  | #define __JS_ENUMERATE(x, a, b, c, t) PropertyKey x { #x, PropertyKey::StringMayBeNumber::No };
 | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     JS_ENUMERATE_BUILTIN_TYPES | 
					
						
							|  |  |  | #undef __JS_ENUMERATE
 | 
					
						
							| 
									
										
										
										
											2021-10-24 16:01:24 +02:00
										 |  |  | #define __JS_ENUMERATE(x, a, b, c) PropertyKey x { #x, PropertyKey::StringMayBeNumber::No };
 | 
					
						
							| 
									
										
										
										
											2021-08-08 18:35:29 +01:00
										 |  |  |     JS_ENUMERATE_INTL_OBJECTS | 
					
						
							|  |  |  | #undef __JS_ENUMERATE
 | 
					
						
							| 
									
										
										
										
											2021-10-24 16:01:24 +02:00
										 |  |  | #define __JS_ENUMERATE(x, a, b, c) PropertyKey x { #x, PropertyKey::StringMayBeNumber::No };
 | 
					
						
							| 
									
										
										
										
											2021-07-06 20:39:55 +01:00
										 |  |  |     JS_ENUMERATE_TEMPORAL_OBJECTS | 
					
						
							|  |  |  | #undef __JS_ENUMERATE
 | 
					
						
							| 
									
										
										
										
											2021-10-24 16:01:24 +02:00
										 |  |  | #define __JS_ENUMERATE(x, a) PropertyKey x { #x, PropertyKey::StringMayBeNumber::No };
 | 
					
						
							| 
									
										
										
										
											2020-10-13 23:49:19 +02:00
										 |  |  |     JS_ENUMERATE_WELL_KNOWN_SYMBOLS | 
					
						
							|  |  |  | #undef __JS_ENUMERATE
 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | } |