Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::compressed_pair< First, Second > Struct Template Reference

Public Types

using first_type = First
 
using second_type = Second
 

Public Member Functions

template<typename U , typename V >
requires constructible_from< First, U > &&constexpr constructible_from< Second, V > compressed_pair (U &&u, V &&v) noexcept(noexcept(First((U &&) u)) &&noexcept(Second((V &&) v)))
 
constexpr First & first () &
 
constexpr First && first () &&
 
constexpr First const & first () const &
 
template<typename F , typename S >
requires convertible_to< First const &, F > &&constexpr convertible_to< Second const &, S > operator std::pair< F, S > () const
 
constexpr Second & second () &
 
constexpr Second && second () &&
 
constexpr Second const & second () const &