|
LLDB mainline
|
Holds either a standalone std::recursive_mutex (default-constructed SBMutex, no Target to resolve through) or a TargetAPIMutex (constructed from a Target). More...
Public Member Functions | |
| MutexVariant () | |
| MutexVariant (lldb::TargetSP target_sp) | |
| void | lock () |
| void | unlock () |
| bool | try_lock () |
Private Attributes | |
| std::variant< std::recursive_mutex, TargetAPIMutex > | m_variant |
Holds either a standalone std::recursive_mutex (default-constructed SBMutex, no Target to resolve through) or a TargetAPIMutex (constructed from a Target).
Kept out of SBMutex.h since std::variant is a C++17 feature and the public SB headers must stay usable from a C++11 client.
Definition at line 24 of file SBMutex.cpp.
|
inline |
Definition at line 26 of file SBMutex.cpp.
References m_variant.
|
inlineexplicit |
Definition at line 27 of file SBMutex.cpp.
References m_variant.
|
inline |
Definition at line 30 of file SBMutex.cpp.
References m_variant.
|
inline |
Definition at line 36 of file SBMutex.cpp.
References m_variant.
|
inline |
Definition at line 33 of file SBMutex.cpp.
References m_variant.
|
private |
Definition at line 41 of file SBMutex.cpp.
Referenced by lock(), MutexVariant(), MutexVariant(), try_lock(), and unlock().