// (C) Copyright Jonathan Turkanis 2004. // 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.) // Disclaimer: Not a Boost library. #ifndef BOOST_IDL_EXTENDS_HPP_INCLUDED #define BOOST_IDL_EXTENDS_HPP_INCLUDED #if defined(_MSC_VER) && (_MSC_VER >= 1020) # pragma once #endif #include #include #include #include #include namespace boost { namespace interfaces { namespace detail { template struct is_base_and_derived_impl : boost::is_base_and_derived< typename Superinterface::proxy_idl_, typename Subinterface::proxy_idl_ > { }; template struct is_base_and_derived_impl : mpl::true_ { }; } // End namespace detail. template struct is_base_and_derived : mpl::and_< is_interface, is_interface, detail::is_base_and_derived_impl > { }; } } // End namespaces interfaces, boost. #endif // #ifndef BOOST_IDL_EXTENDS_HPP_INCLUDED