v8  8.4.371 (node 14.15.5)
V8 is Google's open source JavaScript engine
Visitor Class Reference

#include <visitor.h>

Public Member Functions

template<typename T >
void Trace (const Member< T > &member)
 
template<typename T >
void Trace (const WeakMember< T > &weak_member)
 
template<typename Persistent , std::enable_if_t< Persistent::IsStrongPersistent::value > * = nullptr>
void TraceRoot (const Persistent &p, const SourceLocation &loc)
 
template<typename WeakPersistent , std::enable_if_t<!WeakPersistent::IsStrongPersistent::value > * = nullptr>
void TraceRoot (const WeakPersistent &p, const SourceLocation &loc)
 
template<typename T , void(T::*)(const LivenessBroker &) method>
void RegisterWeakCallbackMethod (const T *obj)
 
virtual void RegisterWeakCallback (WeakCallback, const void *)
 

Protected Member Functions

virtual void Visit (const void *self, TraceDescriptor)
 
virtual void VisitWeak (const void *self, TraceDescriptor, WeakCallback, const void *weak_member)
 
virtual void VisitRoot (const void *, TraceDescriptor)
 
virtual void VisitWeakRoot (const void *self, TraceDescriptor, WeakCallback, const void *weak_root)
 

Friends

class internal::VisitorBase
 

Detailed Description

Visitor passed to trace methods. All managed pointers must have called the visitor's trace method on them.

Definition at line 27 of file visitor.h.

Member Function Documentation

◆ RegisterWeakCallback()

virtual void RegisterWeakCallback ( WeakCallback  ,
const void *   
)
inlinevirtual

Definition at line 89 of file visitor.h.

Referenced by Visitor::RegisterWeakCallbackMethod().

◆ RegisterWeakCallbackMethod()

void RegisterWeakCallbackMethod ( const T *  obj)
inline

Definition at line 85 of file visitor.h.

References Visitor::RegisterWeakCallback().

◆ Trace() [1/2]

void Trace ( const Member< T > &  member)
inline

Definition at line 30 of file visitor.h.

References cppgc::kSentinelPointer.

◆ Trace() [2/2]

void Trace ( const WeakMember< T > &  weak_member)
inline

Definition at line 37 of file visitor.h.

References Visitor::VisitWeak().

◆ TraceRoot() [1/2]

void TraceRoot ( const Persistent p,
const SourceLocation loc 
)
inline

Definition at line 57 of file visitor.h.

References Visitor::VisitRoot().

◆ TraceRoot() [2/2]

void TraceRoot ( const WeakPersistent p,
const SourceLocation loc 
)
inline

Definition at line 73 of file visitor.h.

References Visitor::VisitWeakRoot().

◆ Visit()

virtual void Visit ( const void *  self,
TraceDescriptor   
)
inlineprotectedvirtual

Definition at line 92 of file visitor.h.

◆ VisitRoot()

virtual void VisitRoot ( const void *  ,
TraceDescriptor   
)
inlineprotectedvirtual

Definition at line 95 of file visitor.h.

Referenced by Visitor::TraceRoot().

◆ VisitWeak()

virtual void VisitWeak ( const void *  self,
TraceDescriptor  ,
WeakCallback  ,
const void *  weak_member 
)
inlineprotectedvirtual

Definition at line 93 of file visitor.h.

Referenced by Visitor::Trace().

◆ VisitWeakRoot()

virtual void VisitWeakRoot ( const void *  self,
TraceDescriptor  ,
WeakCallback  ,
const void *  weak_root 
)
inlineprotectedvirtual

Definition at line 96 of file visitor.h.

Referenced by Visitor::TraceRoot().

Friends And Related Function Documentation

◆ internal::VisitorBase

friend class internal::VisitorBase
friend

Definition at line 133 of file visitor.h.


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