All Classes Files Functions Variables Typedefs Pages
NotCloneable.hpp
1 #pragma once
2 
3 namespace lumina {
4 
5 class NotCopyable {
6 protected:
7  NotCopyable() = default;
8  NotCopyable(const NotCopyable&) = delete;
9  NotCopyable& operator=(const NotCopyable&) = delete;
10 };
11 
12 class NotMoveable {
13 protected:
14  NotMoveable() = default;
15  NotMoveable(NotMoveable&&) = delete;
16  NotMoveable& operator==(NotMoveable&&) = delete;
17 };
18 
19 class NotCloneable : public NotCopyable, public NotMoveable {};
20 
21 }
Definition: NotCloneable.hpp:19
Definition: NotCloneable.hpp:5
Definition: NotCloneable.hpp:12