1 // Copyright (c) 2019-present The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 5 #ifndef BITCOIN_UTIL_MACROS_H
6 #define BITCOIN_UTIL_MACROS_H
7 8 #define PASTE(x, y) x ## y
9 #define PASTE2(x, y) PASTE(x, y)
10 11 #define BITCOIN_UNIQUE_NAME(name) PASTE2(name, __COUNTER__)
12 13 /**
14 * Converts the parameter X to a string after macro replacement on X has been performed.
15 * Don't merge these into one macro!
16 */
17 #define STRINGIZE(X) DO_STRINGIZE(X)
18 #define DO_STRINGIZE(X) #X
19 20 #endif // BITCOIN_UTIL_MACROS_H
21