ladybird/Userland
Timothy Flynn 12f9f3d9ef LibJS: Support instrinsic Object properties with deferred evaluation
For performance, it is desirable to defer evaluation of intrinsics that
are stored on the GlobalObject for every created Realm. To support this,
Object now maintains a global storage map to store lambdas that will
return the associated intrinsic when evaluated. Once accessed, the
instrinsic is moved from this global map to normal Object storage.

To prevent this flow from becoming observable, when a deferred intrinsic
is stored, we still place an empty object in the normal Object storage.
This is so we still create the metadata for the object, and in doing so,
can preserve insertion order of the Object storage. Otherwise, this will
be observable by way of Object.getOwnPropertyDescriptors.
2022-11-26 09:36:22 +01:00
..
Applets LibGUI+Taskbar+Applets+Applications: Set various windows as Popups 2022-11-19 16:04:42 +01:00
Applications SoundPlayer+VideoPlayer: Set the play/pause action text on state change 2022-11-26 09:02:25 +01:00
Demos Everywhere: Mark dependencies of most targets as PRIVATE 2022-11-01 14:49:09 +00:00
DevTools Userland: Accept drag_enter events for widgets supporting file drops 2022-11-13 16:13:03 -07:00
DynamicLoader LibC: Properly implement stack protectors 2022-11-01 14:49:09 +00:00
Games 2048: Call event.ignore() correctly in 2048's BoardView keydown handler 2022-11-14 16:08:11 +00:00
Libraries LibJS: Support instrinsic Object properties with deferred evaluation 2022-11-26 09:36:22 +01:00
Services AudioServer: Detect improperly detached audio clients 2022-11-25 17:43:16 -07:00
Shell Shell: Re-block SIGTT{IN,OU} on start 2022-11-03 00:01:42 +03:30
Utilities FuzzTar+tar: Advance the stream before continuing 2022-11-26 01:24:12 +01:00
CMakeLists.txt Meta+Userland: Add ENABLE_USERSPACE_COVERAGE_COLLECTION CMake option 2022-05-02 01:46:18 +02:00