mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-22 15:40:19 +00:00
829391e714
This will allow us to use the GC to manage the lifetime of objects that are not C++ objects, such as Swift objects. In the future we could expand this cursed FFI to other languages as well.
35 lines
533 B
C++
35 lines
533 B
C++
/*
|
|
* Copyright (c) 2024, Shannon Booth <shannon@serenityos.org>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <AK/Types.h>
|
|
|
|
namespace GC {
|
|
|
|
class Cell;
|
|
class CellAllocator;
|
|
class DeferGC;
|
|
class ForeignCell;
|
|
class RootImpl;
|
|
class Heap;
|
|
class HeapBlock;
|
|
class NanBoxedValue;
|
|
class WeakContainer;
|
|
|
|
template<typename T>
|
|
class Function;
|
|
|
|
template<class T>
|
|
class Root;
|
|
|
|
template<class T, size_t inline_capacity = 0>
|
|
class ConservativeVector;
|
|
|
|
template<class T, size_t inline_capacity = 0>
|
|
class MarkedVector;
|
|
|
|
}
|