5#ifndef INCLUDE_CPPGC_LIVENESS_BROKER_H_
6#define INCLUDE_CPPGC_LIVENESS_BROKER_H_
9#include "cppgc/member.h"
10#include "cppgc/sentinel-pointer.h"
11#include "cppgc/trace-trait.h"
17class LivenessBrokerFactory;
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
54 IsHeapObjectAliveImpl(
55 TraceTrait<T>::GetTraceDescriptor(object).base_object_payload);
60 return IsHeapObjectAlive<T>(weak_member.Get());
65 return IsHeapObjectAlive<T>(untraced_member.Get());
69 LivenessBroker() =
default;
71 bool IsHeapObjectAliveImpl(
const void*)
const;
bool IsHeapObjectAlive(const WeakMember< T > &weak_member) const
bool IsHeapObjectAlive(const T *object) const
constexpr internal::SentinelPointer kSentinelPointer