di 0.1.0
Loading...
Searching...
No Matches
di::UniqueLock< Lock > Class Template Reference

#include <di/sync/unique_lock.h>

Public Member Functions

 UniqueLock ()=default
 
constexpr UniqueLock (UniqueLock &&other)
 
constexpr UniqueLock (Lock &mutex)
 
constexpr UniqueLock (Lock &mutex, DeferLock)
 
constexpr UniqueLock (Lock &mutex, TryToLock)
 
constexpr UniqueLock (Lock &mutex, AdoptLock)
 
constexpr ~UniqueLock ()
 
constexpr auto operator= (UniqueLock &&other) -> UniqueLock &
 
constexpr void lock ()
 
constexpr auto try_lock () -> bool
 
constexpr void unlock ()
 
constexpr void swap (UniqueLock &other)
 
constexpr auto release () -> Lock *
 
constexpr auto mutex () const -> Lock *
 
constexpr auto owns_lock () const -> bool
 
constexpr operator bool () const
 

Constructor & Destructor Documentation

◆ UniqueLock() [1/6]

template<concepts::Lock Lock>
di::sync::UniqueLock< Lock >::UniqueLock ( )
default

◆ UniqueLock() [2/6]

template<concepts::Lock Lock>
di::sync::UniqueLock< Lock >::UniqueLock ( UniqueLock< Lock > && other)
inlineconstexpr

◆ UniqueLock() [3/6]

template<concepts::Lock Lock>
di::sync::UniqueLock< Lock >::UniqueLock ( Lock & mutex)
inlineexplicitconstexpr

◆ UniqueLock() [4/6]

template<concepts::Lock Lock>
di::sync::UniqueLock< Lock >::UniqueLock ( Lock & mutex,
DeferLock  )
inlineconstexpr

◆ UniqueLock() [5/6]

template<concepts::Lock Lock>
di::sync::UniqueLock< Lock >::UniqueLock ( Lock & mutex,
TryToLock  )
inlineconstexpr

◆ UniqueLock() [6/6]

template<concepts::Lock Lock>
di::sync::UniqueLock< Lock >::UniqueLock ( Lock & mutex,
AdoptLock  )
inlineconstexpr

◆ ~UniqueLock()

template<concepts::Lock Lock>
di::sync::UniqueLock< Lock >::~UniqueLock ( )
inlineconstexpr

Member Function Documentation

◆ lock()

template<concepts::Lock Lock>
void di::sync::UniqueLock< Lock >::lock ( )
inlineconstexpr

◆ mutex()

template<concepts::Lock Lock>
auto di::sync::UniqueLock< Lock >::mutex ( ) const -> Lock*
inlineconstexpr

◆ operator bool()

template<concepts::Lock Lock>
di::sync::UniqueLock< Lock >::operator bool ( ) const
inlineexplicitconstexpr

◆ operator=()

template<concepts::Lock Lock>
auto di::sync::UniqueLock< Lock >::operator= ( UniqueLock< Lock > && other) -> UniqueLock&
inlineconstexpr

◆ owns_lock()

template<concepts::Lock Lock>
auto di::sync::UniqueLock< Lock >::owns_lock ( ) const -> bool
inlineconstexpr

◆ release()

template<concepts::Lock Lock>
auto di::sync::UniqueLock< Lock >::release ( ) -> Lock*
inlineconstexpr

◆ swap()

template<concepts::Lock Lock>
void di::sync::UniqueLock< Lock >::swap ( UniqueLock< Lock > & other)
inlineconstexpr

◆ try_lock()

template<concepts::Lock Lock>
auto di::sync::UniqueLock< Lock >::try_lock ( ) -> bool
inlineconstexpr

◆ unlock()

template<concepts::Lock Lock>
void di::sync::UniqueLock< Lock >::unlock ( )
inlineconstexpr

The documentation for this class was generated from the following file: