#ifndef V8_HEAP_MARKING_H_
#define V8_HEAP_MARKING_H_
#include <cstdint>
#include "src/base/atomic-utils.h"
#include "src/common/globals.h"
#include "src/heap/marking-worklist.h"
#include "src/objects/heap-object.h"
#include "src/objects/map.h"
#include "src/utils/utils.h"
namespace v8::internal {
class PageMetadata;
class MarkBit final { … };
template <>
inline bool MarkBit::Set<AccessMode::NON_ATOMIC>() { … }
template <>
inline bool MarkBit::Set<AccessMode::ATOMIC>() { … }
template <>
inline bool MarkBit::Get<AccessMode::NON_ATOMIC>() const { … }
template <>
inline bool MarkBit::Get<AccessMode::ATOMIC>() const { … }
inline bool MarkBit::Clear() { … }
class V8_EXPORT_PRIVATE MarkingBitmap final { … };
class LiveObjectRange final { … };
struct MarkingHelper final : public AllStatic { … };
}
#endif