mirror of
https://github.com/XRPLF/rippled.git
synced 2025-12-06 17:27:55 +00:00
Use deleted members to prevent copying in Beast (RIPD-268)
This commit is contained in:
committed by
Vinnie Falco
parent
cd97b5beec
commit
60330da25c
@@ -28,7 +28,6 @@ namespace beast {
|
||||
*/
|
||||
class DeadlineTimer
|
||||
: public List <DeadlineTimer>::Node
|
||||
, public Uncopyable
|
||||
{
|
||||
public:
|
||||
/** Listener for a deadline timer.
|
||||
@@ -50,6 +49,9 @@ public:
|
||||
*/
|
||||
explicit DeadlineTimer (Listener* listener);
|
||||
|
||||
DeadlineTimer (DeadlineTimer const&) = delete;
|
||||
DeadlineTimer& operator= (DeadlineTimer const&) = delete;
|
||||
|
||||
~DeadlineTimer ();
|
||||
|
||||
/** Cancel all notifications.
|
||||
|
||||
@@ -29,7 +29,7 @@ namespace detail
|
||||
{
|
||||
|
||||
template <typename Mutex>
|
||||
class TrackedScopedLock : public Uncopyable
|
||||
class TrackedScopedLock
|
||||
{
|
||||
public:
|
||||
inline explicit TrackedScopedLock (Mutex const& mutex,
|
||||
@@ -40,6 +40,9 @@ public:
|
||||
lock (fileName, lineNumber);
|
||||
}
|
||||
|
||||
TrackedScopedLock (TrackedScopedLock const&) = delete;
|
||||
TrackedScopedLock& operator= (TrackedScopedLock const&) = delete;
|
||||
|
||||
inline ~TrackedScopedLock () noexcept
|
||||
{
|
||||
if (m_lock_count > 0)
|
||||
@@ -66,7 +69,7 @@ private:
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
template <typename Mutex>
|
||||
class TrackedScopedTryLock : public Uncopyable
|
||||
class TrackedScopedTryLock
|
||||
{
|
||||
public:
|
||||
inline explicit TrackedScopedTryLock (Mutex const& mutex,
|
||||
@@ -77,6 +80,9 @@ public:
|
||||
try_lock (fileName, lineNumber);
|
||||
}
|
||||
|
||||
TrackedScopedTryLock (TrackedScopedTryLock const&) = delete;
|
||||
TrackedScopedTryLock& operator= (TrackedScopedTryLock const&) = delete;
|
||||
|
||||
inline ~TrackedScopedTryLock () noexcept
|
||||
{
|
||||
if (m_lock_count > 0)
|
||||
@@ -110,7 +116,7 @@ private:
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
template <typename Mutex>
|
||||
class TrackedScopedUnlock : public Uncopyable
|
||||
class TrackedScopedUnlock
|
||||
{
|
||||
public:
|
||||
inline explicit TrackedScopedUnlock (Mutex const& mutex,
|
||||
@@ -122,6 +128,9 @@ public:
|
||||
m_mutex.unlock ();
|
||||
}
|
||||
|
||||
TrackedScopedUnlock (TrackedScopedUnlock const&) = delete;
|
||||
TrackedScopedUnlock& operator= (TrackedScopedUnlock const&) = delete;
|
||||
|
||||
inline ~TrackedScopedUnlock () noexcept
|
||||
{
|
||||
m_mutex.lock (m_fileName, m_lineNumber);
|
||||
@@ -136,7 +145,7 @@ private:
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
template <typename Mutex>
|
||||
class UntrackedScopedLock : public Uncopyable
|
||||
class UntrackedScopedLock
|
||||
{
|
||||
public:
|
||||
inline explicit UntrackedScopedLock (Mutex const& mutex,
|
||||
@@ -147,6 +156,9 @@ public:
|
||||
lock ();
|
||||
}
|
||||
|
||||
UntrackedScopedLock (UntrackedScopedLock const&) = delete;
|
||||
UntrackedScopedLock& operator= (UntrackedScopedLock const&) = delete;
|
||||
|
||||
inline ~UntrackedScopedLock () noexcept
|
||||
{
|
||||
if (m_lock_count > 0)
|
||||
@@ -178,7 +190,7 @@ private:
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
template <typename Mutex>
|
||||
class UntrackedScopedTryLock : public Uncopyable
|
||||
class UntrackedScopedTryLock
|
||||
{
|
||||
public:
|
||||
inline explicit UntrackedScopedTryLock (Mutex const& mutex,
|
||||
@@ -189,6 +201,9 @@ public:
|
||||
try_lock ();
|
||||
}
|
||||
|
||||
UntrackedScopedTryLock (UntrackedScopedTryLock const&) = delete;
|
||||
UntrackedScopedTryLock& operator= (UntrackedScopedTryLock const&) = delete;
|
||||
|
||||
inline ~UntrackedScopedTryLock () noexcept
|
||||
{
|
||||
if (m_lock_count > 0)
|
||||
@@ -227,7 +242,7 @@ private:
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
template <typename Mutex>
|
||||
class UntrackedScopedUnlock : public Uncopyable
|
||||
class UntrackedScopedUnlock
|
||||
{
|
||||
public:
|
||||
UntrackedScopedUnlock (Mutex const& mutex,
|
||||
@@ -239,6 +254,9 @@ public:
|
||||
m_owns_lock = false;
|
||||
}
|
||||
|
||||
UntrackedScopedUnlock (UntrackedScopedUnlock const&) = delete;
|
||||
UntrackedScopedUnlock& operator= (UntrackedScopedUnlock const&) = delete;
|
||||
|
||||
~UntrackedScopedUnlock () noexcept
|
||||
{
|
||||
MutexTraits <Mutex>::lock (m_mutex);
|
||||
|
||||
Reference in New Issue
Block a user