YACLib
C++ library for concurrent tasks execution
|
#include <guard_state.hpp>
Public Member Functions | |
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 | |
std::uintptr_t | _state = 0 |
Definition at line 9 of file guard_state.hpp.
|
defaultnoexcept |
Definition at line 15 of file guard_state.hpp.
References yaclib::MakeContract().
|
inlinenoexcept |
Definition at line 18 of file guard_state.hpp.
References yaclib::MakeContract().
|
inlinenoexcept |
Definition at line 39 of file guard_state.hpp.
References _state, Owns(), Ptr(), and YACLIB_DEBUG.
Referenced by yaclib::detail::Guard< M, Shared >::Lock(), and yaclib::detail::Guard< M, Shared >::TryLock().
|
inlinenoexcept |
Definition at line 22 of file guard_state.hpp.
References yaclib::MakeContract(), and Swap().
|
inlinenoexcept |
Definition at line 35 of file guard_state.hpp.
References _state.
Referenced by LockState(), yaclib::detail::Guard< M, Shared >::OwnsLock(), and UnlockState().
|
inline |
Definition at line 31 of file guard_state.hpp.
References _state.
Referenced by LockState(), yaclib::detail::Guard< M, Shared >::Mutex(), ReleaseState(), and UnlockState().
|
inlinenoexcept |
Definition at line 51 of file guard_state.hpp.
References _state, yaclib::MakeContract(), and Ptr().
Referenced by yaclib::detail::Guard< M, Shared >::Release().
|
inlinenoexcept |
Definition at line 27 of file guard_state.hpp.
References _state, and yaclib::MakeContract().
Referenced by operator=().
|
inlinenoexcept |
Definition at line 45 of file guard_state.hpp.
References _state, Owns(), Ptr(), and YACLIB_DEBUG.
Referenced by yaclib::detail::Guard< M, Shared >::TryLock(), yaclib::detail::Guard< M, Shared >::Unlock(), yaclib::detail::Guard< M, Shared >::UnlockHere(), and yaclib::detail::Guard< M, Shared >::UnlockOn().
|
protected |
Definition at line 58 of file guard_state.hpp.
Referenced by LockState(), Owns(), Ptr(), ReleaseState(), yaclib::detail::Guard< M, Shared >::Swap(), Swap(), and UnlockState().