/*============================================================================= Copyright (c) 2011-2019 Bolero MURAKAMI https://github.com/bolero-MURAKAMI/Sprout 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 SPROUT_CONTAINER_SUB_CONTAINER_TRAITS_HPP #define SPROUT_CONTAINER_SUB_CONTAINER_TRAITS_HPP #include #include #include namespace sprout { // // sub_container_traits // template struct sub_container_traits { public: template struct internal { public: typedef Cont&& type; }; public: template static SPROUT_CONSTEXPR typename internal::type get_internal(Cont&& cont) { return SPROUT_FORWARD(Cont, cont); } }; template struct sub_container_traits : public sprout::sub_container_traits {}; } // namespace sprout #endif // #ifndef SPROUT_CONTAINER_SUB_CONTAINER_TRAITS_HPP