boost/any/detail/placeholder.hpp
// Copyright Antony Polukhin, 2021-2025. // // Distributed under the Boost Software License, Version 1.0. (See // accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #ifndef BOOST_ANY_ANYS_DETAIL_PLACEHOLDER_HPP #define BOOST_ANY_ANYS_DETAIL_PLACEHOLDER_HPP #include <boost/any/detail/config.hpp> #if !defined(BOOST_USE_MODULES) || defined(BOOST_ANY_INTERFACE_UNIT) #ifndef BOOST_ANY_INTERFACE_UNIT #include <boost/config.hpp> #ifdef BOOST_HAS_PRAGMA_ONCE # pragma once #endif #include <boost/type_index.hpp> #endif /// @cond namespace boost { namespace anys { namespace detail { class BOOST_SYMBOL_VISIBLE placeholder { public: virtual ~placeholder() {} virtual const boost::typeindex::type_info& type() const noexcept = 0; }; } // namespace detail } // namespace anys } // namespace boost /// @endcond #endif // #if !defined(BOOST_USE_MODULES) || defined(BOOST_ANY_INTERFACE_UNIT) #endif // #ifndef BOOST_ANY_ANYS_DETAIL_PLACEHOLDER_HPP