Red Hat Data Grid HotRod C++ Client
7.2.0
Main Page
Namespaces
Classes
Files
File List
File Members
infinispan-hotrod-cpp-8.5.0.Final-Source
include
infinispan
hotrod
defs.h
Go to the documentation of this file.
1
#ifndef ISPN_HOTROD_DEFS_H
2
#define ISPN_HOTROD_DEFS_H
3
4
#include "
infinispan/hotrod/ImportExport.h
"
5
6
#include <memory>
7
8
/*
9
* Handle special cases for stdint.h and the definition for ssize_t.
10
* Third party libraries (e.g. Boost) may provide competing solutions.
11
*
12
* The effects of this include file may be controlled by overrides:
13
* PN_DEFINE_STDINT/PN_NODEFINE_STDINT : turn on/off definition of int64_t etc.
14
* PN_DEFINE_SSIZE_T/PN_NODEFINE_SSIZE_T : turn on/off definition of ssize_t
15
* PN_INCLUDE_STDINT/PN_NOINCLUDE_STDINT : include (or not) stdint.h
16
*/
17
18
// Honor positive overrides
19
#if defined(PN_DEFINE_STDINT)
20
#define PNI_DEFINE_STDINT
21
#endif
22
#if defined(PN_INCLUDE_STDINT)
23
#define PNI_INCLUDE_STDINT)
24
#endif
25
#if defined(PN_DEFINE_SSIZE_T)
26
#define PNI_DEFINE_SSIZE_T
27
#endif
28
29
// Determinine default action
30
#ifndef _MSC_VER
31
// Not Windows and not using Visual Studio
32
#ifndef PNI_INCLUDE_STDINT
33
#define PNI_INCLUDE_STDINT
34
#endif
35
#else
36
// all versions of Visual Studio
37
#ifndef PNI_DEFINE_SSIZE_T
38
// ssie_t def is needed, unless third party definition interferes, e.g. python/swig
39
#ifndef Py_CONFIG_H
40
#define PNI_DEFINE_SSIZE_T
41
#endif
42
#endif
43
44
#if (_MSC_VER < 1600)
45
// VS 2008 and earlier
46
#ifndef PNI_DEFINE_STDINT
47
#define PNI_DEFINE_STDINT
48
#endif
49
#else
50
// VS 2010 and newer
51
#ifndef PNI_INCLUDE_STDINT
52
#define PNI_INCLUDE_STDINT
53
#endif
54
55
#endif // (_MSC_VER < 1600)
56
#endif //_MSC_VER
57
58
// Honor negative overrides
59
#ifdef PN_NODEFINE_SSIZE_T
60
#undef PNI_DEFINE_SSIZE_T
61
#endif
62
#ifdef PN_NODEFINE_STDINT
63
#undef PNI_DEFINE_STDINT
64
#endif
65
#ifdef PN_NOINCLUDE_STDINT
66
#undef PNI_INCLUDE_STDINT
67
#endif
68
69
#ifdef PNI_INCLUDE_STDINT
70
#include <stdint.h>
71
#endif
72
73
#ifdef PNI_DEFINE_SSIZE_T
74
#ifdef _MSC_VER
75
#include <BaseTsd.h>
76
typedef
SSIZE_T ssize_t;
77
#else
78
#error ssize_t definition not kown
79
#endif
80
#endif // PNI_DEFINE_SSIZE_T
81
82
#ifdef PNI_DEFINE_STDINT
83
#ifdef _MSC_VER
84
85
typedef
signed
__int8 int8_t;
86
typedef
signed
__int16 int16_t;
87
typedef
signed
__int32 int32_t;
88
typedef
signed
__int64 int64_t;
89
90
typedef
unsigned
__int8 uint8_t;
91
typedef
unsigned
__int16 uint16_t;
92
typedef
unsigned
__int32 uint32_t;
93
typedef
unsigned
__int64 uint64_t;
94
95
#else // _MSC_VER
96
#error stdint.h definitions not kown
97
#endif
98
#endif // PNI_DEFINE_SSIZE_T
99
100
#ifdef _MSC_VER
101
# define strtoull _strtoui64
102
#endif
103
104
// warnings
105
#ifndef _MSC_VER
106
# define __pragma(...)
107
#endif
108
109
#endif
/* ISPN_HOTROD_DEFS_H */
ImportExport.h
Generated by
1.8.11