13template<concepts::View View>
18 constexpr static bool need_cache =
35 constexpr auto base() && ->
View {
return util::move(m_base); }
40 if constexpr (need_cache) {
41 if (m_begin_cache.value.has_value()) {
42 return m_begin_cache.value.value();
44 return m_begin_cache.value.emplace(
63 constexpr auto end() const
74 auto count =
static_cast<SizeType
>(m_count);
78 constexpr auto size() const
83 auto count =
static_cast<SizeType
>(m_count);
89 SSizeType m_count { 0 };
Definition drop_view.h:16
constexpr auto begin() const
Definition drop_view.h:51
constexpr auto size()
Definition drop_view.h:69
constexpr auto end()
Definition drop_view.h:57
constexpr auto begin()
Definition drop_view.h:37
constexpr DropView(View base, SSizeType count)
Definition drop_view.h:28
constexpr auto base() &&-> View
Definition drop_view.h:35
constexpr auto base() const &-> View requires(concepts::CopyConstructible< View >)
Definition drop_view.h:30
constexpr auto end() const
Definition drop_view.h:63
constexpr auto size() const
Definition drop_view.h:78
Definition view_interface.h:26
Definition operations.h:27
Definition random_access_container.h:8
Definition simple_view.h:11
Definition sized_container.h:8
Definition any_storable.h:9
constexpr auto next
Definition next.h:35
DropView(Con &&, meta::ContainerSSizeType< Con >) -> DropView< meta::AsView< Con > >
constexpr auto move
Definition move.h:38
constexpr auto size
Definition size.h:54
constexpr auto count
Definition count.h:37
constexpr auto end
Definition end.h:47
constexpr auto begin
Definition begin.h:44