2024-11-14 12:01:23 -03:00
|
|
|
/*
|
|
|
|
|
* Copyright (c) 2024, Shannon Booth <shannon@serenityos.org>
|
|
|
|
|
*
|
|
|
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
2024-11-16 18:25:26 -03:00
|
|
|
#include <AK/Types.h>
|
2025-06-28 05:34:31 -03:00
|
|
|
#include <LibGC/Export.h>
|
2024-11-16 18:25:26 -03:00
|
|
|
|
2024-11-14 12:01:23 -03:00
|
|
|
namespace GC {
|
|
|
|
|
|
|
|
|
|
class Cell;
|
|
|
|
|
class CellAllocator;
|
|
|
|
|
class DeferGC;
|
|
|
|
|
class RootImpl;
|
|
|
|
|
class Heap;
|
2026-06-13 08:18:54 -03:00
|
|
|
class HeapGroup;
|
|
|
|
|
class CrossHeapMemberBase;
|
2024-11-14 12:01:23 -03:00
|
|
|
class HeapBlock;
|
|
|
|
|
class NanBoxedValue;
|
2026-01-28 21:02:15 -03:00
|
|
|
class Timer;
|
2024-11-14 12:01:23 -03:00
|
|
|
class WeakContainer;
|
2025-10-16 06:10:01 -03:00
|
|
|
class WeakImpl;
|
2024-11-14 12:01:23 -03:00
|
|
|
|
|
|
|
|
template<typename T>
|
|
|
|
|
class Function;
|
|
|
|
|
|
2026-01-15 17:02:53 -03:00
|
|
|
template<typename T>
|
|
|
|
|
class HeapHashTable;
|
|
|
|
|
|
2024-11-14 12:01:23 -03:00
|
|
|
template<class T>
|
|
|
|
|
class Root;
|
|
|
|
|
|
2026-05-20 15:58:28 -03:00
|
|
|
template<class T>
|
|
|
|
|
class Ref;
|
|
|
|
|
|
|
|
|
|
template<class T>
|
|
|
|
|
class Ptr;
|
|
|
|
|
|
2024-11-14 12:01:23 -03:00
|
|
|
template<class T, size_t inline_capacity = 0>
|
|
|
|
|
class ConservativeVector;
|
|
|
|
|
|
2026-04-09 12:33:01 -03:00
|
|
|
template<typename K, typename V, typename KeyTraits, typename ValueTraits, bool IsOrdered>
|
|
|
|
|
class ConservativeHashMap;
|
|
|
|
|
|
2026-04-09 10:59:02 -03:00
|
|
|
template<typename T, typename TraitsForT, bool IsOrdered>
|
|
|
|
|
class ConservativeHashTable;
|
|
|
|
|
|
2026-02-12 16:35:34 -03:00
|
|
|
template<class T>
|
|
|
|
|
class HeapVector;
|
|
|
|
|
|
2024-11-14 12:01:23 -03:00
|
|
|
template<class T, size_t inline_capacity = 0>
|
2024-12-26 10:32:52 -03:00
|
|
|
class RootVector;
|
2024-11-14 12:01:23 -03:00
|
|
|
|
2026-04-09 10:33:59 -03:00
|
|
|
template<typename T, typename TraitsForT, bool IsOrdered>
|
|
|
|
|
class RootHashTable;
|
|
|
|
|
|
2026-04-16 15:53:04 -03:00
|
|
|
template<typename K, typename V>
|
|
|
|
|
class WeakHashMap;
|
|
|
|
|
|
2024-11-14 12:01:23 -03:00
|
|
|
}
|