summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/CompilerKit/Detail.h
blob: c098f27386fd734f735fc31f61ba9162a850ed37 (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
/* -------------------------------------------

	Copyright (C) 2024-2025, Amlal EL Mahrouss, all rights reserved.

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

#pragma once

#ifdef __NEOSKRNL__
#include <NewKit/Defines.h>
#endif // ifdef __NEOSKRNL__

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

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

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

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