5#ifndef INCLUDE_CPPGC_TRACE_TRAIT_H_
6#define INCLUDE_CPPGC_TRACE_TRAIT_H_
27 IsGarbageCollectedMixinTypeV<typename std::remove_const<T>::type>>
78 static_assert(internal::IsTraceableV<T>,
"T must have a Trace() method");
88 static_cast<const T*
>(self));
98 static_cast<const T*
>(self)->
Trace(visitor);
111 static_assert(IsGarbageCollectedTypeV<T>,
112 "T must be of type GarbageCollected or GarbageCollectedMixin");
Definition: visitor.h:441
void(*)(RootVisitor &, const void *object) TraceRootCallback
Definition: trace-trait.h:21
Definition: allocation.h:38
void(*)(Visitor *visitor, const void *object) TraceCallback
Definition: trace-trait.h:38
TraceDescriptor(*)(const void *address) TraceDescriptorCallback
Definition: trace-trait.h:62
Definition: trace-trait.h:44
const void * base_object_payload
Definition: trace-trait.h:49
TraceCallback callback
Definition: trace-trait.h:53
Definition: trace-trait.h:105
Definition: trace-trait.h:77
static TraceDescriptor GetTraceDescriptor(const void *self)
Definition: trace-trait.h:86
static void Trace(Visitor *visitor, const void *self)
Definition: trace-trait.h:97
Definition: trace-trait.h:66
static TraceDescriptor GetTraceDescriptor(const void *address)
static TraceDescriptor GetTraceDescriptor(const void *self)
Definition: trace-trait.h:113
static TraceDescriptor GetTraceDescriptor(const void *self)
Definition: trace-trait.h:120
Definition: trace-trait.h:28
#define V8_EXPORT
Definition: v8config.h:793