31class GlobalEnabler 
final {
 
   33    explicit GlobalEnabler(
bool enable = 
true);
 
   36    GlobalEnabler(
const GlobalEnabler&) = 
delete;
 
   37    GlobalEnabler& operator=(
const GlobalEnabler&) = 
delete;
 
   41bool IsEnabled() 
noexcept;
 
   53    bool operator==(
const TaskId& other) 
const;
 
   54    bool operator!=(
const TaskId& other) 
const;
 
   57    std::thread::id created_thread_id_;
 
   58    std::uint64_t thread_local_counter_;
 
   64class TransactionLock 
final {
 
   66    TransactionLock() = 
default;
 
   67    TransactionLock(
const TransactionLock&) = 
delete;
 
   68    TransactionLock(TransactionLock&&) 
noexcept;
 
   69    TransactionLock operator=(
const TransactionLock&) = 
delete;
 
   70    TransactionLock& operator=(TransactionLock&&) 
noexcept;
 
   82    std::optional<impl::TaskId> task_id_;
 
 
   97class CheckDisabler 
final {
 
  105    CheckDisabler(
const CheckDisabler&) = 
delete;
 
  106    CheckDisabler(CheckDisabler&&) = 
delete;
 
  107    CheckDisabler operator=(
const CheckDisabler&) = 
delete;
 
  108    CheckDisabler operator=(CheckDisabler&&) = 
delete;
 
  114    bool reenabled_ = 
false;
 
 
  118struct TransactionTrackerStatistics 
final {