mirror of
https://github.com/SerenityOS/serenity
synced 2024-11-05 17:46:52 +00:00
22 lines
538 B
C
22 lines
538 B
C
/*
|
|
* Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#define AK_MAKE_NONCOPYABLE(c) \
|
|
private: \
|
|
c(c const&) = delete; \
|
|
c& operator=(c const&) = delete
|
|
|
|
#define AK_MAKE_NONMOVABLE(c) \
|
|
private: \
|
|
c(c&&) = delete; \
|
|
c& operator=(c&&) = delete
|
|
|
|
#define AK_MAKE_DEFAULT_MOVABLE(c) \
|
|
public: \
|
|
c(c&&) = default; \
|
|
c& operator=(c&&) = default
|