Horizon
Loading...
Searching...
No Matches
concepts.hpp File Reference
#include <utility>
#include <meta/meta.hpp>
#include <range/v3/range_fwd.hpp>
#include <range/v3/range/concepts.hpp>
#include <range/v3/range/traits.hpp>
#include <range/v3/detail/prologue.hpp>
#include <range/v3/detail/epilogue.hpp>

Go to the source code of this file.

Concepts

concept  ranges::semi_container
 The semi_container concept std::array is a semi_container, native arrays are not.
concept  ranges::container_
 The container_ concept std::vector is a container, std::array is not.
concept  ranges::container
 The container concept.
concept  ranges::reservable_
 The reservable_ concept.
concept  ranges::reservable
 The reservable concept.
concept  ranges::reservable_with_assign_
 The reservable_with_assign_ concept.
concept  ranges::reservable_with_assign
 The reservable_with_assign concept.
concept  ranges::random_access_reservable
 The random_access_reservable concept.
concept  ranges::lvalue_container_like_
 The lvalue_container_like_ concept.
concept  ranges::lvalue_container_like
 The lvalue_container_like concept.

Functions

 ranges::template (typename T)(concept(container_)(T)
template<typename C>
 ranges::CPP_requires (reservable_, requires(C &c, C const &cc)(c.reserve(ranges::size(c)), cc.capacity(), cc.max_size(), concepts::requires_< same_as< decltype(cc.capacity()), decltype(ranges::size(c))> >, concepts::requires_< same_as< decltype(cc.max_size()), decltype(ranges::size(c))> >))
template<typename C, typename I>
 ranges::CPP_requires (reservable_with_assign_, requires(C &c, I i)(c.assign(i, i)))

Variables

template<typename T>
CPP_concept ranges::semi_container
 ranges::constructible_from< uncvref_t< T >, detail::movable_input_iterator< range_value_t< T > >, detail::movable_input_iterator< range_value_t< T > > >
template<typename T>
CPP_concept ranges::container
template<typename C>
CPP_concept ranges::reservable
template<typename C, typename I>
CPP_concept ranges::reservable_with_assign
template<typename C>
CPP_concept ranges::random_access_reservable
 ranges::implicitly_convertible_to< detail::is_lvalue_container_like_t< T >, std::true_type >
template<typename T>
CPP_concept ranges::lvalue_container_like