ladybird/Userland/Libraries/LibJS/Heap
Luke Wilde c97244d3a5 LibJS: Add Handle specialisation for Value
This allows you to keep an arbitrary JS::Value alive without having to
hook visit_edges somewhere, e.g. by being a NativeFunction that
overrides visit_edges.

For example, this allows you to store JS::Handle<JS::Value> as the key
of a HashMap. This will be used to keep arbitrary Values alive in
the key of a temporary HashMap in Array.prototype.groupByToMap.

Co-authored-by: Ali Mohammad Pur <mpfard@serenityos.org>
2022-01-05 11:21:38 +01:00
..
BlockAllocator.cpp LibJS: Make BlockAllocator cache reuse blocks in random order 2021-10-08 00:35:29 +02:00
BlockAllocator.h LibJS: Increase GC heap BlockAllocator cache size 2021-10-08 00:35:29 +02:00
Cell.h AK: Convert AK::Format formatting helpers to returning ErrorOr<void> 2021-11-17 00:21:13 +01:00
CellAllocator.cpp LibJS: Use default instead of an empty constructor/destructor 2021-09-16 17:17:13 +02:00
CellAllocator.h LibJS: Use default instead of an empty constructor/destructor 2021-09-16 17:17:13 +02:00
DeferGC.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Handle.cpp LibJS: Move Cell.{cpp,h} from Runtime/ to Heap/ 2021-05-17 19:53:00 +02:00
Handle.h LibJS: Add Handle specialisation for Value 2022-01-05 11:21:38 +01:00
Heap.cpp LibJS: Add MarkedVector<T> 2021-12-16 22:48:17 +01:00
Heap.h LibJS: Add MarkedVector<T> 2021-12-16 22:48:17 +01:00
HeapBlock.cpp LibJS: Fix ASAN poisoning range in new HeapBlocks 2021-09-11 17:00:07 +02:00
HeapBlock.h LibJS: Instrument HeapBlock cell allocation for ASAN 2021-05-29 17:47:29 +01:00
MarkedVector.cpp LibJS: Add MarkedVector<T> 2021-12-16 22:48:17 +01:00
MarkedVector.h LibJS: Fix typo in MarkedVector::end() 2021-12-18 11:30:10 +01:00