Warning, file /sdk/codevis/thirdparty/soci/include/private/soci-cpp.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 //
0002 // Copyright (C) 2015 Vadim Zeitlin
0003 // Distributed under the Boost Software License, Version 1.0.
0004 // (See accompanying file LICENSE_1_0.txt or copy at
0005 // http://www.boost.org/LICENSE_1_0.txt)
0006 //
0007 
0008 #ifndef SOCI_PRIVATE_SOCI_CPP_H_INCLUDED
0009 #define SOCI_PRIVATE_SOCI_CPP_H_INCLUDED
0010 
0011 // Some very common preprocessor helpers.
0012 
0013 // SOCI_CONCAT() pastes together two tokens after expanding them.
0014 #define SOCI_CONCAT_IMPL(x, y) x ## y
0015 #define SOCI_CONCAT(x, y) SOCI_CONCAT_IMPL(x, y)
0016 
0017 // SOCI_STRINGIZE() makes a string of its argument after expanding it.
0018 #define SOCI_STRINGIZE_IMPL(x) #x
0019 #define SOCI_STRINGIZE(x) SOCI_STRINGIZE_IMPL(x)
0020 
0021 // SOCI_MAKE_UNIQUE_NAME() creates a uniquely named identifier with the given
0022 // prefix.
0023 //
0024 // It uses __COUNTER__ macro to avoid problems with broken __LINE__ in MSVC
0025 // when using "Edit and Continue" (/ZI) option as there are no compilers known
0026 // to work with SOCI and not support it. If one such is ever discovered, we
0027 // should use __LINE__ for it instead.
0028 #define SOCI_MAKE_UNIQUE_NAME(name) SOCI_CONCAT(name, __COUNTER__)
0029 
0030 #endif // SOCI_PRIVATE_SOCI_CPP_H_INCLUDED