diff options
| author | Dan Goodliffe <dan@randomdan.homeip.net> | 2019-02-25 21:18:46 +0000 | 
|---|---|---|
| committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2019-02-25 21:18:46 +0000 | 
| commit | 4e47d16745a8be7135e97833f497d3d282a7b3e4 (patch) | |
| tree | de40dad5a87ebd1450e262d4748ea9cce66d8a67 | |
| parent | Removed unrequired destructor (diff) | |
| download | libadhocutil-4e47d16745a8be7135e97833f497d3d282a7b3e4.tar.bz2 libadhocutil-4e47d16745a8be7135e97833f497d3d282a7b3e4.tar.xz libadhocutil-4e47d16745a8be7135e97833f497d3d282a7b3e4.zip  | |
Mark explicitly instantiated functions as public
Fixes link issue with Clang.
| -rw-r--r-- | libadhocutil/plugins.impl.h | 14 | 
1 files changed, 7 insertions, 7 deletions
diff --git a/libadhocutil/plugins.impl.h b/libadhocutil/plugins.impl.h index 8a2ca8a..7d70e8d 100644 --- a/libadhocutil/plugins.impl.h +++ b/libadhocutil/plugins.impl.h @@ -92,13 +92,13 @@ namespace AdHoc {  #define INSTANTIATEPLUGINOF(...) \  	template class AdHoc::PluginOf<__VA_ARGS__>; \ -	template void AdHoc::PluginManager::add<__VA_ARGS__>(const std::shared_ptr<__VA_ARGS__> &, const std::string_view &, const std::string_view &, int); \ -	template void AdHoc::PluginManager::remove<__VA_ARGS__>(const std::string_view &); \ -	template std::shared_ptr<const AdHoc::PluginOf<__VA_ARGS__>> AdHoc::PluginManager::get<__VA_ARGS__>(const std::string_view &) const; \ -	template std::shared_ptr<__VA_ARGS__> AdHoc::PluginManager::getImplementation<__VA_ARGS__>(const std::string_view &) const; \ -	template std::set<std::shared_ptr<const AdHoc::PluginOf<__VA_ARGS__>>> AdHoc::PluginManager::getAll<__VA_ARGS__>() const; \ -	template void AdHoc::PluginManager::addResolver<__VA_ARGS__>(const AdHoc::PluginManager::PluginResolver & f); \ -	template void AdHoc::PluginManager::removeResolver<__VA_ARGS__>(); \ +	template DLL_PUBLIC void AdHoc::PluginManager::add<__VA_ARGS__>(const std::shared_ptr<__VA_ARGS__> &, const std::string_view &, const std::string_view &, int); \ +	template DLL_PUBLIC void AdHoc::PluginManager::remove<__VA_ARGS__>(const std::string_view &); \ +	template DLL_PUBLIC std::shared_ptr<const AdHoc::PluginOf<__VA_ARGS__>> AdHoc::PluginManager::get<__VA_ARGS__>(const std::string_view &) const; \ +	template DLL_PUBLIC std::shared_ptr<__VA_ARGS__> AdHoc::PluginManager::getImplementation<__VA_ARGS__>(const std::string_view &) const; \ +	template DLL_PUBLIC std::set<std::shared_ptr<const AdHoc::PluginOf<__VA_ARGS__>>> AdHoc::PluginManager::getAll<__VA_ARGS__>() const; \ +	template DLL_PUBLIC void AdHoc::PluginManager::addResolver<__VA_ARGS__>(const AdHoc::PluginManager::PluginResolver & f); \ +	template DLL_PUBLIC void AdHoc::PluginManager::removeResolver<__VA_ARGS__>(); \  #define PLUGINRESOLVER(T, F) \  	namespace MAKE_UNIQUE(__plugin__) { \  | 
