sol2/examples/require_dll_example/my_object_api.hpp
ThePhD 03c229b25b overhaul examples and add 2 new ones in preparation for the coming hell
fix how `stack_aligned_protected_function` and its friends behave
add new internal handler details to allow for stack-based handlers with maximum performance
update `string_shim` typedef to simply be called `string_view` and use `string_view` in all public-facing APIs.
2017-08-06 12:20:32 -04:00

28 lines
656 B
C++

#pragma once
namespace my_object {
#if defined _MSC_VER
#define MY_OBJECT_VC
#elif defined __GNUC__
#define MY_OBJECT_GCC
#elif defined __clang__
#define MY_OBJECT_CLANG
#endif
#if defined MY_OBJECT_VC
#if defined MY_OBJECT_DLL
#if defined MY_OBJECT_BUILD
#define MY_OBJECT_API __declspec(dllexport)
#else
#define MY_OBJECT_API __declspec(dllexport)
#endif // MY_OBJECT_BUILD - Building the Library vs. Using the Library
#else
#define MY_OBJECT_API
#endif // Building a DLL vs. Static Library
#else // g++ / clang++
#define MY_OBJECT_API __attribute__ ((visibility ("default")))
#endif // MY_OBJECT_BUILD
} // namespace my_object