16#ifndef WPIUTIL_WPI_EPOCHTRACKER_H
17#define WPIUTIL_WPI_EPOCHTRACKER_H
24#if LLVM_ENABLE_ABI_BREAKING_CHECKS
25#define LLVM_DEBUGEPOCHBASE_HANDLEBASE_EMPTYBASE
40 DebugEpochBase() =
default;
59 const uint64_t *EpochAddress =
nullptr;
60 uint64_t EpochAtCreation = UINT64_MAX;
65 explicit HandleBase(
const DebugEpochBase *Parent)
66 : EpochAddress(&Parent->Epoch), EpochAtCreation(Parent->Epoch) {}
71 bool isHandleInSync()
const {
return *EpochAddress == EpochAtCreation; }
82#define LLVM_DEBUGEPOCHBASE_HANDLEBASE_EMPTYBASE __declspec(empty_bases)
84#define LLVM_DEBUGEPOCHBASE_HANDLEBASE_EMPTYBASE
Definition EpochTracker.h:91
bool isHandleInSync() const
Definition EpochTracker.h:95
const void * getEpochAddress() const
Definition EpochTracker.h:96
HandleBase(const DebugEpochBase *)
Definition EpochTracker.h:94
Definition EpochTracker.h:87
void incrementEpoch()
Definition EpochTracker.h:89
Definition ntcore_cpp.h:26