#ifndef SPROUT_UTILITY_AS_CONST_HPP #define SPROUT_UTILITY_AS_CONST_HPP #include #include #include namespace sprout { // // as_const // template inline SPROUT_CONSTEXPR typename std::conditional< std::is_lvalue_reference::value, typename std::remove_reference::type const&, typename std::remove_reference::type const&& >::type as_const(T&& t) { return sprout::forward(t); } } // namespace sprout #endif // #ifndef SPROUT_UTILITY_AS_CONST_HPP