template <typename SeqLockType>

class SeqLockReadTransactionToken

Defined at line 54 of file ../../zircon/kernel/lib/kconcurrent/include/lib/kconcurrent/seqlock.h

A small wrapper for read transaction tokens which make them a bit easier to

declare, especially when using SeqLocks which have been instrumented with

lockdep.

Given two SeqLock instances, one wrapped in lockdep wrappers, and one not:

```

SeqLock

<

> lock;

DECLARE_SINGLETON_SEQLOCK(wrapped_lock);

```

Instead of saying:

```

typename decltype(lock)::ReadTransactionToken token;

typename decltype(lock)::LockType::ReadTransactionToken wrapped_token;

```

Users can also simply say:

```

SeqLockReadTransactionToken token{lock};

SeqLockReadTransactionToken wrapped_token{wrapped_lock};

```

`token` and `wrapped_token` will deduce the proper type for the token based

on the lock instance, and generate a class which publicly inherits from that

deduced type, allowing it to be used with the lock's routines).

Public Methods

void SeqLockReadTransactionToken<SeqLockType> (const SeqLockType & )

Defined at line 56 of file ../../zircon/kernel/lib/kconcurrent/include/lib/kconcurrent/seqlock.h

template <typename Class, typename LockType, size_t Index, ::lockdep::LockFlags Flags>
void SeqLockReadTransactionToken<SeqLockType> (const ::lockdep::LockDep<Class, LockType, Index, Flags> & )