summaryrefslogtreecommitdiffhomepage
path: root/compat/mutex.hpp
blob: 6ba4fa8c587c4bdce918d766281ecef81adceeb0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once

#include "export.hpp"

template<typename MutexType>
class OTR_COMPAT_EXPORT mutex
{
    mutable MutexType inner{};

public:
    mutex& operator=(const mutex& datum);
    MutexType* operator&() const;
    mutex(const mutex& datum);
    explicit mutex();

    explicit operator MutexType*() const noexcept;
    MutexType* operator->() const noexcept;
};