blob: 9a7610900d1bdc6c721af89f51988b480b7f46da (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#ifndef CORE_MACROS_HH
#define CORE_MACROS_HH 1
#pragma once
#define DISABLE_COPY_OPERATORS(class_name) \
public: \
explicit class_name(const class_name& other) = delete; \
class_name& operator=(const class_name& other) = delete
#define DISABLE_MOVE_OPERATORS(class_name) \
public: \
explicit class_name(class_name&& other) = delete; \
class_name& operator=(class_name&& other) = delete
#define DECLARE_DEFAULT_CONSTRUCTOR(class_name) \
public: \
class_name(void) = default
#endif /* CORE_MACROS_HH */
|