summaryrefslogtreecommitdiffstats
path: root/include/raul/Maid.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/raul/Maid.hpp')
-rw-r--r--include/raul/Maid.hpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/raul/Maid.hpp b/include/raul/Maid.hpp
index 9841f82..34061ad 100644
--- a/include/raul/Maid.hpp
+++ b/include/raul/Maid.hpp
@@ -43,9 +43,15 @@ public:
class Disposable : public Deletable {
public:
Disposable() = default;
+
Disposable(const Disposable&) = delete;
Disposable& operator=(const Disposable&) = delete;
+ Disposable(Disposable&&) = delete;
+ Disposable& operator=(Disposable&&) = delete;
+
+ ~Disposable() override = default;
+
private:
friend class Maid;
Disposable* _maid_next{};
@@ -87,6 +93,12 @@ public:
Maid() : _disposed(nullptr) {}
+ Maid(const Maid&) = delete;
+ Maid& operator=(const Maid&) = delete;
+
+ Maid(Maid&&) = delete;
+ Maid& operator=(Maid&&) = delete;
+
inline ~Maid() { cleanup(); }
/** Return false iff there is currently no garbage. */