preprocessor.hh
Go to the documentation of this file.
1 //
2 // Copyright (c) 2020 Fraunhofer Institute for Applied Information Technology (FIT)
3 // Network Research Group (NET)
4 // Schloss Birlinghoven, 53754 Sankt Augustin, GERMANY
5 // Contact: support@wiback.org
6 //
7 // This file is part of the SENF code tree.
8 // It is licensed under the 3-clause BSD License (aka New BSD License).
9 // See LICENSE.txt in the top level directory for details or visit
10 // https://opensource.org/licenses/BSD-3-Clause
11 //
12 
13 
17 #ifndef HH_SENF_Utils_preprocessor_
18 #define HH_SENF_Utils_preprocessor_ 1
19 
20 // Custom includes
21 #include <boost/preprocessor/seq/size.hpp>
22 #include <boost/preprocessor/seq/elem.hpp>
23 #include <boost/preprocessor/dec.hpp>
24 
25 //#include "preprocessor.mpp"
26 //-/////////////////////////////////////////////////////////////////////////////////////////////////
27 
33 //\{
35 
39 #define SENF_PP_SEQ_BACK(seq) BOOST_PP_SEQ_ELEM(BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(seq)),seq)
40 
41 # // No recursive call so we need some more of these ... ARGH !!!
42 # define SENF_CAT_RECURS1(a, b) SENF_CAT_RECURS1_I(a,b)
43 # define SENF_CAT_RECURS1_I(a, b) a ## b
44 # define SENF_CAT_RECURS2(a, b) SENF_CAT_RECURS2_I(a,b)
45 # define SENF_CAT_RECURS2_I(a, b) a ## b
46 # define SENF_CAT_RECURS3(a, b) SENF_CAT_RECURS3_I(a,b)
47 # define SENF_CAT_RECURS3_I(a, b) a ## b
48 #
49 
50 //\}
51 
52 //-/////////////////////////////////////////////////////////////////////////////////////////////////
53 //#include "preprocessor.cci"
54 //#include "preprocessor.ct"
55 //#include "preprocessor.cti"
56 #endif
57 
58 
59 // Local Variables:
60 // mode: c++
61 // fill-column: 100
62 // comment-column: 40
63 // c-file-style: "senf"
64 // indent-tabs-mode: nil
65 // ispell-local-dictionary: "american"
66 // compile-command: "scons -u test"
67 // End: