19 std::lock_guard<mutex_t>
21 return std::lock_guard { _lock };
24 template <
class... Args>
26 raw { std::forward<Args>(
args)... } {}
29 operator=(
sync_t &&other)
noexcept {
30 std::lock(_lock, other._lock);
32 raw = std::move(other.raw);
41 operator=(
sync_t &other)
noexcept {
42 std::lock(_lock, other._lock);
63 operator=(
const value_t &val)
noexcept {
72 operator=(value_t &&val)
noexcept {