#ifndef SPROUT_TUPLE_PIT_HPP #define SPROUT_TUPLE_PIT_HPP #include #include #include #include #include namespace sprout { namespace tuples { // // get // template inline SPROUT_CONSTEXPR typename sprout::container_traits >::value_type& get(sprout::pit& t) SPROUT_NOEXCEPT { static_assert(I < sprout::container_traits >::static_size, "get: index out of range"); return t[I]; } template inline SPROUT_CONSTEXPR typename sprout::container_traits >::value_type const& get(sprout::pit const& t) SPROUT_NOEXCEPT { static_assert(I < sprout::container_traits >::static_size, "get: index out of range"); return t[I]; } template inline SPROUT_CONSTEXPR typename sprout::container_traits >::value_type&& get(sprout::pit&& t) SPROUT_NOEXCEPT_EXPR(SPROUT_NOEXCEPT_EXPR(sprout::move(sprout::tuples::get(t)))) { return sprout::move(sprout::tuples::get(t)); } } // namespace tuples using sprout::tuples::get; } // namespace sprout #endif // #ifndef SPROUT_TUPLE_PIT_HPP