Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

Click here to view the latest version of this page.


// Boost.TypeErasure library
// Copyright 2011 Steven Watanabe
// Distributed under the Boost Software License Version 1.0. (See
// accompanying file LICENSE_1_0.txt or copy at
// $Id: same_type.hpp 78445 2012-05-13 01:53:52Z steven_watanabe $


namespace boost {
namespace type_erasure {

 * A built in concept that indicates that two
 * types are the same.  Either T or U or both
 * can be placeholders.
 * \warning Any number of instances of @ref deduced
 * can be connected with @ref same_type, but there
 * should be at most one regular placeholder in
 * the group. same_type<_a, _b> is not allowed.
 * The reason for this is that the library needs
 * to normalize all the placeholders, and in this
 * context there is no way to decide whether to
 * use @ref _a or @ref _b.
template<class T, class U>
struct same_type {};