1 // Copyright 2023 The Chromium Authors 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef BASE_MACROS_CONCAT_H_ 6 #define BASE_MACROS_CONCAT_H_ 7 8 // A macro that expands to the concatenation of its arguments. If the arguments 9 // are themselves macros, they are first expanded (due to the indirection 10 // through a second macro). This can be used to construct tokens. 11 #define BASE_CONCAT(a, b) BASE_INTERNAL_CONCAT(a, b) 12 13 // Implementation details: do not use directly. 14 #define BASE_INTERNAL_CONCAT(a, b) a##b 15 16 #endif // BASE_MACROS_CONCAT_H_ 17