1 /* Boost.Flyweight test of intermodule_holder. 2 * 3 * Copyright 2006-2018 Joaquin M Lopez Munoz. 4 * Distributed under the Boost Software License, Version 1.0. 5 * (See accompanying file LICENSE_1_0.txt or copy at 6 * http://www.boost.org/LICENSE_1_0.txt) 7 * 8 * See http://www.boost.org/libs/flyweight for library home page. 9 */ 10 11 #ifndef BOOST_FLYWEIGHT_TEST_INTERMOD_HOLDER_DLL_HPP 12 #define BOOST_FLYWEIGHT_TEST_INTERMOD_HOLDER_DLL_HPP 13 14 #if defined(_MSC_VER) 15 #pragma once 16 #endif 17 18 #include <boost/config.hpp> /* keep it first to prevent nasty warns in MSVC */ 19 #include <boost/flyweight/flyweight.hpp> 20 #include <boost/flyweight/hashed_factory.hpp> 21 #include <boost/flyweight/intermodule_holder.hpp> 22 #include <boost/flyweight/refcounted.hpp> 23 #include <boost/flyweight/simple_locking.hpp> 24 #include <string> 25 26 #ifdef BOOST_FLYWEIGHT_TEST_INTERMOD_HOLDER_DLL_SOURCE 27 #define BOOST_FLYWEIGHT_DLL_DECL BOOST_SYMBOL_EXPORT 28 #else 29 #define BOOST_FLYWEIGHT_DLL_DECL BOOST_SYMBOL_IMPORT 30 #endif 31 32 typedef boost::flyweights::flyweight< 33 std::string, 34 boost::flyweights::intermodule_holder> intermodule_flyweight_string; 35 36 BOOST_FLYWEIGHT_DLL_DECL intermodule_flyweight_string 37 create_intermodule_flyweight_string(const std::string&); 38 39 #undef BOOST_FLYWEIGHT_DLL_DECL 40 41 #endif 42