7#pragma warning(disable : 4251)
10#ifdef SLEIPNIR_EXPORTS
12#define SLEIPNIR_DLLEXPORT __attribute__((dllexport))
14#define SLEIPNIR_DLLEXPORT __declspec(dllexport)
17#elif defined(SLEIPNIR_IMPORTS)
20#define SLEIPNIR_DLLEXPORT __attribute__((dllimport))
22#define SLEIPNIR_DLLEXPORT __declspec(dllimport)
26#define SLEIPNIR_DLLEXPORT
31#ifdef SLEIPNIR_EXPORTS
32#define SLEIPNIR_DLLEXPORT __attribute__((visibility("default")))
34#define SLEIPNIR_DLLEXPORT
92#define EXPORT_TEMPLATE_DECLARE(export) \
93 EXPORT_TEMPLATE_INVOKE(DECLARE, EXPORT_TEMPLATE_STYLE(export, ), export)
94#define EXPORT_TEMPLATE_DEFINE(export) \
95 EXPORT_TEMPLATE_INVOKE(DEFINE, EXPORT_TEMPLATE_STYLE(export, ), export)
103#define EXPORT_TEMPLATE_INVOKE(which, style, export) \
104 EXPORT_TEMPLATE_INVOKE_2(which, style, export)
105#define EXPORT_TEMPLATE_INVOKE_2(which, style, export) \
106 EXPORT_TEMPLATE_##which##_##style(export, )
109#define EXPORT_TEMPLATE_DECLARE_DEFAULT(export, _) export
110#define EXPORT_TEMPLATE_DEFINE_DEFAULT(export, _)
115#define EXPORT_TEMPLATE_DECLARE_MSVC_HACK(export, _)
116#define EXPORT_TEMPLATE_DEFINE_MSVC_HACK(export, _) export
133#define EXPORT_TEMPLATE_STYLE(export, _) EXPORT_TEMPLATE_STYLE_2(export, )
134#define EXPORT_TEMPLATE_STYLE_2(export, _) \
135 EXPORT_TEMPLATE_STYLE_3( \
136 EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA##export)
137#define EXPORT_TEMPLATE_STYLE_3(style) style
146#define EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA DEFAULT
147#define EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__attribute__(...) \
149#define EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__declspec(arg) \
150 EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_##arg
153#define EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllexport MSVC_HACK
154#define EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllimport DEFAULT
178#define EXPORT_TEMPLATE_TEST(want, export) \
179 static_assert(EXPORT_TEMPLATE_INVOKE( \
180 TEST_##want, EXPORT_TEMPLATE_STYLE(export, ), export), \
182#define EXPORT_TEMPLATE_TEST_DEFAULT_DEFAULT(...) true
183#define EXPORT_TEMPLATE_TEST_MSVC_HACK_MSVC_HACK(...) true
190#undef EXPORT_TEMPLATE_TEST
191#undef EXPORT_TEMPLATE_TEST_DEFAULT_DEFAULT
192#undef EXPORT_TEMPLATE_TEST_MSVC_HACK_MSVC_HACK
#define EXPORT_TEMPLATE_TEST(want, export)
Definition SymbolExports.hpp:178