summaryrefslogtreecommitdiffhomepage
path: root/dev/CompilerKit/Macros.h
blob: fdef375375e3fafdbf5803f4b9970f3c71cc84e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/* -------------------------------------------

  Copyright (C) 2024-2025 Amlal EL Mahrouss, Licensed under Apache 2.0

------------------------------------------- */

/// @brief provide support for Macros.h header.

#ifndef _NECTI_MACROS_H_
#define _NECTI_MACROS_H_

#define NECTI_COPY_DELETE(KLASS)           \
  KLASS& operator=(const KLASS&) = delete; \
  KLASS(const KLASS&)            = delete;

#define NECTI_COPY_DEFAULT(KLASS)           \
  KLASS& operator=(const KLASS&) = default; \
  KLASS(const KLASS&)            = default;

#define NECTI_MOVE_DELETE(KLASS)      \
  KLASS& operator=(KLASS&&) = delete; \
  KLASS(KLASS&&)            = delete;

#define NECTI_MOVE_DEFAULT(KLASS)      \
  KLASS& operator=(KLASS&&) = default; \
  KLASS(KLASS&&)            = default;


#endif /* ifndef _NECTI_MACROS_H_ */