1 // This file belongs to the "MiniCore" game engine. 2 // Copyright (C) 2015 Jussi Lind <jussi.lind@iki.fi> 3 // 4 // This program is free software; you can redistribute it and/or 5 // modify it under the terms of the GNU General Public License 6 // as published by the Free Software Foundation; either version 2 7 // of the License, or (at your option) any later version. 8 // 9 // This program is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU General Public License for more details. 13 // 14 // You should have received a copy of the GNU General Public License 15 // along with this program; if not, write to the Free Software 16 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 17 // MA 02110-1301, USA. 18 // 19 20 #ifndef MCMACROS_HH 21 #define MCMACROS_HH 22 23 //! Disable copy constructor 24 #define DISABLE_COPY(className) className(const className & r) = delete 25 26 //! Disable assignment 27 #define DISABLE_ASSI(className) className & operator=(const className & r) = delete 28 29 //! Disable move 30 #define DISABLE_MOVE(className) className & operator=(const className && r) = delete 31 32 #endif // MCMACROS_HH 33