1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 07:48:11 +00:00
serenity/Userland/Libraries/LibJS/Heap
Andreas Kling e34e21367e LibJS: Add GCPtr and NonnullGCPtr
These are two new smart pointers that are really just raw pointers under
the hood. The initial benefit is all in the names, they allow us to
declare that we're pointing at something in the GC heap.

Later we may also find ways to add debugging logic or static analysis to
these types.
2022-09-03 00:36:26 +02:00
..
BlockAllocator.cpp Libraries: Use default constructors/destructors in LibJS 2022-03-16 16:19:40 +00:00
BlockAllocator.h Libraries: Use default constructors/destructors in LibJS 2022-03-16 16:19:40 +00:00
Cell.h LibJS: Make Heap a friend of everyone who uses JS_CELL 2022-08-29 03:24:54 +02:00
CellAllocator.cpp LibJS: Use default instead of an empty constructor/destructor 2021-09-16 17:17:13 +02:00
CellAllocator.h Userland: Remove a bunch of unnecessary Vector imports 2022-01-28 23:40:25 +01:00
DeferGC.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
GCPtr.h LibJS: Add GCPtr and NonnullGCPtr 2022-09-03 00:36:26 +02:00
Handle.cpp LibJS: Move Cell.{cpp,h} from Runtime/ to Heap/ 2021-05-17 19:53:00 +02:00
Handle.h LibJS: Make Handle<Value>::is_null() also consider the contained value 2022-04-05 11:46:48 +02:00
Heap.cpp LibJS: Remove GlobalObject from VM::throw_completion() 2022-08-23 13:58:30 +01:00
Heap.h LibJS: Remove GlobalObject from VM::throw_completion() 2022-08-23 13:58:30 +01:00
HeapBlock.cpp LibJS: Fix ASAN poisoning range in new HeapBlocks 2021-09-11 17:00:07 +02:00
HeapBlock.h LibJS: Add JS_CELL macro and use it in all JS::Cell subclasses 2022-08-29 03:24:54 +02:00
MarkedVector.cpp LibJS: Let MarkedVector<T> inherit from Vector and handle Cell* + Value 2022-02-09 12:25:27 +00:00
MarkedVector.h LibJS: Let MarkedVector<T> inherit from Vector and handle Cell* + Value 2022-02-09 12:25:27 +00:00