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

Public Types

using first_type = First
 
using second_type = Second
 

Public Member Functions

template<typename U , typename V >
requires constructible_from< First, U > &&constructible_from< Second, V > constexpr compressed_pair (U &&u, V &&v) noexcept(noexcept(First((U &&) u)) &&noexcept(Second((V &&) v)))
 
- Public Member Functions inherited from ranges::box< First, meta::size_t< 0 > >
constexpr box (E &&e) noexcept(std::is_nothrow_constructible< First, E >::value) requires(!defer
 
constexpr box (E &&e) noexcept(std::is_nothrow_constructible< First, E >::value) requires(!defer
 
constexpr Firstget () &noexcept
 
constexpr First const & get () const &noexcept
 
constexpr First && get () &&noexcept
 
constexpr First const && get () const &&noexcept
 
- Public Member Functions inherited from ranges::box< Second, meta::size_t< 1 > >
constexpr box (E &&e) noexcept(std::is_nothrow_constructible< Second, E >::value) requires(!defer
 
constexpr box (E &&e) noexcept(std::is_nothrow_constructible< Second, E >::value) requires(!defer
 
constexpr Secondget () &noexcept
 
constexpr Second const & get () const &noexcept
 
constexpr Second && get () &&noexcept
 
constexpr Second const && get () const &&noexcept