1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 18:18:12 +00:00
serenity/Libraries/LibJS
Andreas Kling 63e4b744ed LibJS: Add a basic mark&sweep garbage collector :^)
Objects can now be allocated via the interpreter's heap. Objects that
are allocated in this way will need to be provably reachable from at
least one of the known object graph roots.

The roots are currently determined by Heap::collect_roots().

Anything that wants be collectable garbage should inherit from Cell,
the fundamental atom of the GC heap.

This is pretty neat! :^)
2020-03-08 19:23:58 +01:00
..
AST.cpp LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
AST.h LibJS: Implement if statements 2020-03-08 11:15:07 +01:00
Cell.cpp LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
Cell.h LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
Forward.h LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
Function.cpp LibJS: Start building a JavaScript engine for SerenityOS :^) 2020-03-07 19:42:11 +01:00
Function.h LibJS: Start building a JavaScript engine for SerenityOS :^) 2020-03-07 19:42:11 +01:00
Heap.cpp LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
Heap.h LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
HeapBlock.cpp LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
HeapBlock.h LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
Interpreter.cpp LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
Interpreter.h LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
Makefile LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
Object.cpp LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
Object.h LibJS: Add a basic mark&sweep garbage collector :^) 2020-03-08 19:23:58 +01:00
Value.cpp LibJS: Simplify LogStream::operator<<(JS::Value) and move to .cpp file 2020-03-07 23:17:07 +01:00
Value.h LibJS: Flesh out JS::Value a little bit more 2020-03-07 23:17:07 +01:00