13template<concepts::View View>
18 template<
bool is_const>
21 template<
bool is_const>
24 template<
bool is_const>
27 template<
bool is_const>
30 template<
bool is_const>
35 constexpr explicit Sentinel(Sent<is_const> sentinel) : m_sentinel(sentinel) {}
37 constexpr Sentinel(Sentinel<!is_const> other)
39 : m_sentinel(util::move(other.base())) {}
41 constexpr auto base()
const {
return m_sentinel; }
45 return a.count() == 0 || a.base() == b.base();
48 template<
bool other_is_const = !is_const>
50 constexpr friend auto operator==(
CountedIterator<Iter<other_is_const>>
const& a, Sentinel
const& b) ->
bool {
51 return a.count() == 0 || a.base() == b.base();
54 Sent<is_const> m_sentinel;
69 constexpr auto base() && ->
View {
return util::move(m_base); }
113 constexpr auto end() const
143 SSizeType<false> m_count { 0 };
146template<
typename Con>
Definition counted_iterator.h:18
Definition take_view.h:16
constexpr auto size()
Definition take_view.h:127
constexpr auto begin() const
Definition take_view.h:85
constexpr auto end() const
Definition take_view.h:113
constexpr TakeView(View base, SSizeType< false > count)
Definition take_view.h:62
constexpr auto begin()
Definition take_view.h:71
constexpr auto size() const
Definition take_view.h:134
constexpr auto end()
Definition take_view.h:99
constexpr auto base() &&-> View
Definition take_view.h:69
constexpr auto base() const &-> View requires(concepts::CopyConstructible< View >)
Definition take_view.h:64
Definition view_interface.h:26
Definition operations.h:99
Definition operations.h:27
Definition random_access_container.h:8
Definition sentinel_for.h:9
Definition simple_view.h:11
Definition sized_container.h:8
Definition any_storable.h:9
constexpr auto min
Definition min.h:47
constexpr auto move
Definition move.h:38
constexpr auto operator==(MoveIterator< Iter > const &a, MoveIterator< U > const &b) -> bool
Definition move_iterator.h:85
constexpr auto size
Definition size.h:54
TakeView(Con &&, meta::ContainerSSizeType< Con >) -> TakeView< meta::AsView< Con > >
constexpr auto default_sentinel
Definition default_sentinel.h:6
constexpr auto count
Definition count.h:37
constexpr auto end
Definition end.h:47
constexpr auto begin
Definition begin.h:44