v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
cppgc::internal::RootVisitor Class Reference

#include <visitor.h>

Inheritance diagram for cppgc::internal::RootVisitor:
Collaboration diagram for cppgc::internal::RootVisitor:

Public Member Functions

 RootVisitor (Visitor::Key)
 
virtual ~RootVisitor ()=default
 
template<typename AnyStrongPersistentType , std::enable_if_t< AnyStrongPersistentType::IsStrongPersistent::value > * = nullptr>
void Trace (const AnyStrongPersistentType &p)
 
template<typename AnyWeakPersistentType , std::enable_if_t< !AnyWeakPersistentType::IsStrongPersistent::value > * = nullptr>
void Trace (const AnyWeakPersistentType &p)
 

Protected Member Functions

virtual void VisitRoot (const void *, TraceDescriptor, const SourceLocation &)
 
virtual void VisitWeakRoot (const void *self, TraceDescriptor, WeakCallback, const void *weak_root, const SourceLocation &)
 

Static Private Member Functions

template<typename AnyPersistentType >
static const void * Extract (AnyPersistentType &p)
 
template<typename PointerType >
static void HandleWeak (const LivenessBroker &info, const void *object)
 

Detailed Description

Definition at line 465 of file visitor.h.

Constructor & Destructor Documentation

◆ RootVisitor()

cppgc::internal::RootVisitor::RootVisitor ( Visitor::Key )
inlineexplicit

Definition at line 467 of file visitor.h.

◆ ~RootVisitor()

virtual cppgc::internal::RootVisitor::~RootVisitor ( )
virtualdefault

Member Function Documentation

◆ Extract()

template<typename AnyPersistentType >
static const void * cppgc::internal::RootVisitor::Extract ( AnyPersistentType & p)
inlinestaticprivate

Definition at line 506 of file visitor.h.

◆ HandleWeak()

template<typename PointerType >
static void cppgc::internal::RootVisitor::HandleWeak ( const LivenessBroker & info,
const void * object )
inlinestaticprivate

Definition at line 517 of file visitor.h.

◆ Trace() [1/2]

template<typename AnyStrongPersistentType , std::enable_if_t< AnyStrongPersistentType::IsStrongPersistent::value > * = nullptr>
void cppgc::internal::RootVisitor::Trace ( const AnyStrongPersistentType & p)
inline

Definition at line 474 of file visitor.h.

Here is the caller graph for this function:

◆ Trace() [2/2]

template<typename AnyWeakPersistentType , std::enable_if_t< !AnyWeakPersistentType::IsStrongPersistent::value > * = nullptr>
void cppgc::internal::RootVisitor::Trace ( const AnyWeakPersistentType & p)
inline

Definition at line 487 of file visitor.h.

◆ VisitRoot()

virtual void cppgc::internal::RootVisitor::VisitRoot ( const void * ,
TraceDescriptor ,
const SourceLocation &  )
inlineprotectedvirtual

◆ VisitWeakRoot()

virtual void cppgc::internal::RootVisitor::VisitWeakRoot ( const void * self,
TraceDescriptor ,
WeakCallback ,
const void * weak_root,
const SourceLocation &  )
inlineprotectedvirtual

Reimplemented in cppgc::internal::RootMarkingVisitor.

Definition at line 501 of file visitor.h.


The documentation for this class was generated from the following file: