YACLib
C++ library for concurrent tasks execution
|
#include <guard.hpp>
Public Member Functions | |
Guard () noexcept=default | |
Guard (Guard &&other) noexcept | |
Guard (M &m, std::defer_lock_t) noexcept | |
Guard (M &m, std::try_to_lock_t) noexcept | |
Guard (M &m, std::adopt_lock_t) noexcept | |
~Guard () noexcept | |
Guard & | operator= (Guard &&other) noexcept |
auto | Lock () noexcept |
bool | TryLock () noexcept |
auto | Unlock () noexcept |
auto | UnlockOn (IExecutor &e) noexcept |
void | UnlockHere () noexcept |
void | Swap (Guard &other) noexcept |
M * | Release () noexcept |
M * | Mutex () const noexcept |
bool | OwnsLock () const noexcept |
operator bool () const noexcept | |
Additional Inherited Members | |
Protected Member Functions inherited from yaclib::detail::GuardState | |
GuardState () noexcept=default | |
GuardState (void *ptr, bool owns) noexcept | |
GuardState (GuardState &&other) noexcept | |
GuardState & | operator= (GuardState &&other) noexcept |
void | Swap (GuardState &other) noexcept |
void * | Ptr () const |
bool | Owns () const noexcept |
void * | LockState () noexcept |
void * | UnlockState () noexcept |
void * | ReleaseState () noexcept |
Protected Attributes inherited from yaclib::detail::GuardState | |
std::uintptr_t | _state = 0 |
Definition at line 15 of file guard.hpp.
References yaclib::MakeContract().
|
inlineexplicitnoexcept |
Definition at line 17 of file guard.hpp.
References yaclib::MakeContract().
|
inlineexplicitnoexcept |
Definition at line 19 of file guard.hpp.
References yaclib::MakeContract().
|
inlineexplicitnoexcept |
Definition at line 21 of file guard.hpp.
References yaclib::MakeContract().
Definition at line 24 of file guard.hpp.
References yaclib::detail::Guard< M, Shared >::UnlockHere().
Definition at line 35 of file guard.hpp.
References yaclib::detail::GuardState::LockState(), and yaclib::MakeContract().
|
inlinenoexcept |
Definition at line 88 of file guard.hpp.
References yaclib::MakeContract(), and yaclib::detail::GuardState::Ptr().
|
inlineexplicitnoexcept |
Definition at line 96 of file guard.hpp.
References yaclib::detail::Guard< M, Shared >::OwnsLock().
|
inlinenoexcept |
Definition at line 30 of file guard.hpp.
References yaclib::MakeContract(), and yaclib::detail::Guard< M, Shared >::Swap().
|
inlinenoexcept |
Definition at line 92 of file guard.hpp.
References yaclib::detail::GuardState::Owns().
Referenced by yaclib::detail::Guard< M, Shared >::operator bool().
|
inlinenoexcept |
Definition at line 84 of file guard.hpp.
References yaclib::MakeContract(), and yaclib::detail::GuardState::ReleaseState().
Definition at line 80 of file guard.hpp.
References yaclib::detail::GuardState::_state, and yaclib::MakeContract().
Referenced by yaclib::detail::Guard< M, Shared >::operator=().
|
inlinenoexcept |
Definition at line 44 of file guard.hpp.
References yaclib::detail::GuardState::LockState(), yaclib::MakeContract(), and yaclib::detail::GuardState::UnlockState().
|
inlinenoexcept |
Definition at line 53 of file guard.hpp.
References yaclib::MakeContract(), and yaclib::detail::GuardState::UnlockState().
|
inlinenoexcept |
Definition at line 71 of file guard.hpp.
References yaclib::MakeContract(), and yaclib::detail::GuardState::UnlockState().
Referenced by yaclib::detail::Guard< M, Shared >::~Guard().
|
inlinenoexcept |
Definition at line 62 of file guard.hpp.
References yaclib::MakeContract(), and yaclib::detail::GuardState::UnlockState().