Adaptive Framework  0.9.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
afw_lmdb_declare_helpers.h
Go to the documentation of this file.
1 // See the 'COPYING' file in the project root for licensing information.
2 /*
3  * Adaptive Framework Declare Helpers for afw_lmdb_
4  *
5  * Copyright (c) 2010-2023 Clemson University
6  *
7  */
8 
9 /* ----------------------------- N O T E -------------------------------------
10  *
11  * This file is generated by "afwdev generate afw_lmdb".
12  *
13  * Do not change this file directly or the changes will be lost the next time
14  * this file is regenerated.
15  *
16  * -------------------------------------------------------------------------*/
17 
18 
19 #ifndef __AFW_LMDB_DECLARE_HELPERS_H__
20 #define __AFW_LMDB_DECLARE_HELPERS_H__
21 
22 
29 #include <apr_general.h>
30 
31 
36 #ifdef __cplusplus
37 #define AFW_LMDB_BEGIN_DECLARES extern "C" {
38 #define AFW_LMDB_END_DECLARES }
39 #else
40 #define AFW_LMDB_BEGIN_DECLARES
41 #define AFW_LMDB_END_DECLARES
42 #endif
43 
44 
45 /* #defines for declspec and calling convention. */
46 #if defined(DOXYGEN) || !defined(WIN32)
47 #define AFW_LMDB_DECLSPEC_DECLARE extern
48 #define AFW_LMDB_DECLSPEC_DEFINE
49 #define AFW_LMDB_CALLING_CONVENTION
50 #define AFW_LMDB_CALLING_CONVENTION_ELLIPSIS
51 #elif defined(AFW_LMDB_DECLARE_STATIC)
52 #define AFW_LMDB_DECLSPEC_DECLARE extern
53 #define AFW_LMDB_DECLSPEC_DEFINE
54 #define AFW_LMDB_CALLING_CONVENTION __stdcall
55 #define AFW_LMDB_CALLING_CONVENTION_ELLIPSIS __cdecl
56 #elif defined(AFW_LMDB_DECLARE_EXPORT)
57 #define AFW_LMDB_DECLSPEC_DECLARE extern __declspec(dllexport)
58 #define AFW_LMDB_DECLSPEC_DEFINE __declspec(dllexport)
59 #define AFW_LMDB_CALLING_CONVENTION __stdcall
60 #define AFW_LMDB_CALLING_CONVENTION_ELLIPSIS __cdecl
61 #else
62 #define AFW_LMDB_DECLSPEC_DECLARE extern __declspec(dllimport)
63 #define AFW_LMDB_DECLSPEC_DEFINE __declspec(dllimport)
64 #define AFW_LMDB_CALLING_CONVENTION __stdcall
65 #define AFW_LMDB_CALLING_CONVENTION_ELLIPSIS __cdecl
66 #endif
67 
68 
80 #define AFW_LMDB_DECLARE_INTERNAL_CONST_DATA(type) extern const type
81 
82 
94 #define AFW_LMDB_DEFINE_INTERNAL_CONST_DATA(type) const type
95 
96 
108 #define AFW_LMDB_DECLARE_INTERNAL(type) extern type
109 
110 
122 #define AFW_LMDB_DEFINE_INTERNAL(type) type
123 
124 
141 #define AFW_LMDB_DECLARE(type) \
142 AFW_LMDB_DECLSPEC_DECLARE \
143 type \
144 AFW_LMDB_CALLING_CONVENTION
145 
146 
164 #define AFW_LMDB_DECLARE_ELLIPSIS(type) \
165 AFW_LMDB_DECLSPEC_DECLARE \
166 type \
167 AFW_LMDB_CALLING_CONVENTION_ELLIPSIS
168 
169 
187 #define AFW_LMDB_DECLARE_CONST_DATA(type) \
188 AFW_LMDB_DECLSPEC_DECLARE \
189 const type
190 
191 
209 #define AFW_LMDB_DEFINE(type) \
210 AFW_LMDB_DECLSPEC_DEFINE \
211 type \
212 AFW_LMDB_CALLING_CONVENTION
213 
214 
232 #define AFW_LMDB_DEFINE_ELLIPSIS(type) \
233 AFW_LMDB_DECLSPEC_DEFINE \
234 type \
235 AFW_LMDB_CALLING_CONVENTION_ELLIPSIS
236 
237 
255 #define AFW_LMDB_DEFINE_CONST_DATA(type) \
256 AFW_LMDB_DECLSPEC_DEFINE \
257 const type
258 
259 
260 #define AFW_LMDB_CALLBACK \
261 AFW_LMDB_CALLING_CONVENTION
262 
263 
264 #define AFW_LMDB_CALLBACK_ELLIPSIS \
265 AFW_LMDB_CALLING_CONVENTION_ELLIPSIS
266 
267 
268 #ifdef WIN32
269 #define AFW_LMDB_DEFINE_DSO(type) __declspec(dllexport) type
270 #else
271 #define AFW_LMDB_DEFINE_DSO(type) type
272 #endif
273 
274 
275 #ifdef AFW_LMDB_DISABLE_INLINE
276 #define AFW_LMDB_HAS_INLINE 0
277 #define AFW_LMDB_INLINE
278 #else
279 #define AFW_LMDB_HAS_INLINE APR_HAS_INLINE
280 #define AFW_LMDB_INLINE APR_INLINE
281 #endif
282 
283 
285 #define AFW_LMDB_STATIC_INLINE static AFW_LMDB_INLINE
286 
287 #define AFW_LMDB_DECLARE_STATIC(type) static type
288 
289 #if defined(DOXYGEN)
290 #define AFW_LMDB_DEFINE_STATIC_INLINE(type) type
291 #else
292 #define AFW_LMDB_DEFINE_STATIC_INLINE(type) AFW_LMDB_STATIC_INLINE type
293 #endif
294 
295 
296 
297 #endif /* __AFW_LMDB_DECLARE_HELPERS_H__ */