#ifndef V8_HEAP_CPPGC_MARKING_VISITOR_H_
#define V8_HEAP_CPPGC_MARKING_VISITOR_H_
#include "include/cppgc/trace-trait.h"
#include "src/base/macros.h"
#include "src/heap/base/stack.h"
#include "src/heap/cppgc/visitor.h"
namespace cppgc {
namespace internal {
class HeapBase;
class HeapObjectHeader;
class Marker;
class BasicMarkingState;
class MutatorMarkingState;
class ConcurrentMarkingState;
class V8_EXPORT_PRIVATE MarkingVisitorBase : public VisitorBase { … };
class V8_EXPORT_PRIVATE MutatorMarkingVisitor : public MarkingVisitorBase { … };
class V8_EXPORT_PRIVATE ConcurrentMarkingVisitor final
: public MarkingVisitorBase { … };
class V8_EXPORT_PRIVATE RootMarkingVisitor : public RootVisitorBase { … };
class ConservativeMarkingVisitor : public ConservativeTracingVisitor,
public heap::base::StackVisitor { … };
}
}
#endif