Interface Documentation
Version: invalid
macros.hh
Go to the documentation of this file.
1 /*
2  @@@@@@@@ @@ @@@@@@ @@@@@@@@ @@
3  /@@///// /@@ @@////@@ @@////// /@@
4  /@@ /@@ @@@@@ @@ // /@@ /@@
5  /@@@@@@@ /@@ @@///@@/@@ /@@@@@@@@@/@@
6  /@@//// /@@/@@@@@@@/@@ ////////@@/@@
7  /@@ /@@/@@//// //@@ @@ /@@/@@
8  /@@ @@@//@@@@@@ //@@@@@@ @@@@@@@@ /@@
9  // /// ////// ////// //////// //
10 
11  Copyright (c) 2016, Triad National Security, LLC
12  All rights reserved.
13  */
14 #pragma once
15 
18 #if !defined(__FLECSI_PRIVATE__)
19 #error Do not include this file directly!
20 #endif
21 
22 #define _FLECSI_STRINGIFY(s) #s
23 
24 #define flecsi_internal_stringify(s) _FLECSI_STRINGIFY(s)
25 
26 #define _FLECSI_CONCAT_IMPL(a, b) a##b
27 #define _FLECSI_CONCAT(a, b) _FLECSI_CONCAT_IMPL(a, b)
28 
29 #define flecsi_internal_concatenate(a, b) _FLECSI_CONCAT(a, b)
30 
31 #define flecsi_internal_unique_name(base) _FLECSI_CONCAT(base, __COUNTER__)