GPUdb C++ API  Version 7.0.19.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Utils.h
Go to the documentation of this file.
1 #ifndef __GPUDB_UTILS_H__
2 #define __GPUDB_UTILS_H__
3 
4 
5 #include <sstream>
6 
7 
8 namespace gpudb
9 {
10 
11 
12 
13 // Useful String Macros
14 // ----------------------
15 // Create an inline std::stringstream stream object and return the
16 // std::string from it.
17 // E.g. std::string msg( KINETICA_STREAM_TO_STRING( "Hello " << user_name << ", how are you?" ) );
18 // Note: Extra cast needed for gcc 4.8.7 (at least).
19 #define GPUDB_STREAM_TO_STRING(...) ( static_cast<const std::ostringstream&> (std::ostringstream() << __VA_ARGS__).str() )
20 
21 // Create an inline std::stringstream stream object and return the
22 // char array from it.
23 // E.g. std::string msg( KINETICA_STREAM_TO_STRING( "Hello " << user_name << ", how are you?" ) );
24 #define GPUDB_STREAM_TO_CSTRING(...) ( GPUDB_STREAM_TO_STRING(__VA_ARGS__).c_str() )
25 
26 
27 
28 } // end namespace gpudb
29 
30 
31 #endif // __GPUDB_UTILS_H__