name.hpp 945 B

1234567891011121314151617181920212223242526
  1. #ifndef BOOST_CONTRACT_DETAIL_NAME_HPP_
  2. #define BOOST_CONTRACT_DETAIL_NAME_HPP_
  3. // Copyright (C) 2008-2018 Lorenzo Caminiti
  4. // Distributed under the Boost Software License, Version 1.0 (see accompanying
  5. // file LICENSE_1_0.txt or a copy at http://www.boost.org/LICENSE_1_0.txt).
  6. // See: http://www.boost.org/doc/libs/release/libs/contract/doc/html/index.html
  7. #include <boost/contract/detail/config.hpp>
  8. #include <boost/preprocessor/cat.hpp>
  9. /* PUBLIC */
  10. // NOTE: Explicitly list number of names to concatenate using ..._NAME-n
  11. // (instead of using ..._SEQ_CAT or similar) for optimal speed and reentrancy.
  12. #define BOOST_CONTRACT_DETAIL_NAME1(name1) \
  13. BOOST_PP_CAT(BOOST_CONTRACT_DETAIL_NAME_PREFIX, name1)
  14. #define BOOST_CONTRACT_DETAIL_NAME2(name1, name2) \
  15. BOOST_PP_CAT(BOOST_CONTRACT_DETAIL_NAME_PREFIX, BOOST_PP_CAT(name1, \
  16. BOOST_PP_CAT(BOOST_CONTRACT_DETAIL_NAME_INFIX, name2)))
  17. #endif // #include guard