di 0.1.0
Loading...
Searching...
No Matches
di::container::IotaView< T, Bound > Class Template Reference

#include <di/container/view/iota_view.h>

Inheritance diagram for di::container::IotaView< T, Bound >:
di::container::ViewInterface< IotaView< T, UnreachableSentinel > > di::meta::EnableBorrowedContainer< IotaView< T, UnreachableSentinel > > di::meta::EnableView< IotaView< T, UnreachableSentinel > >

Public Member Functions

constexpr IotaView ()=default
constexpr IotaView (T value)
constexpr IotaView (meta::TypeIdentity< T > value, meta::TypeIdentity< Bound > bound)
constexpr IotaView (Iterator first, Iterator last)
constexpr IotaView (Iterator first, Sentinel last)
constexpr IotaView (Iterator first, UnreachableSentinel)
constexpr auto begin () const -> Iterator
constexpr auto end () const
constexpr auto end () const -> Iterator requires(concepts::SameAs< T, Bound >)
constexpr auto size () const
Public Member Functions inherited from di::container::ViewInterface< IotaView< T, UnreachableSentinel > >
constexpr auto empty () -> bool requires(concepts::SizedContainer< IotaView< T, UnreachableSentinel > >||concepts::ForwardContainer< IotaView< T, UnreachableSentinel > >)
constexpr operator bool ()
constexpr auto cbegin ()
constexpr auto cend ()
constexpr auto data ()
constexpr auto size ()
constexpr auto front ()
constexpr auto back ()
constexpr auto operator[] (meta::ContainerSSizeType< Cont > n) -> decltype(auto)
constexpr auto at (meta::ContainerSSizeType< Cont > n) -> Optional< meta::ContainerReference< Cont > >

Friends

template<concepts::OneOf< Iterator, meta::Conditional< is_bounded, Sentinel, UnreachableSentinel > > Sent>
constexpr friend auto tag_invoke (types::Tag< container::reconstruct >, Iterator first, Sent last)

Constructor & Destructor Documentation

◆ IotaView() [1/6]

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
di::container::IotaView< T, Bound >::IotaView ( )
constexprdefault

◆ IotaView() [2/6]

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
di::container::IotaView< T, Bound >::IotaView ( T value)
inlineexplicitconstexpr

◆ IotaView() [3/6]

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
di::container::IotaView< T, Bound >::IotaView ( meta::TypeIdentity< T > value,
meta::TypeIdentity< Bound > bound )
inlineconstexpr

◆ IotaView() [4/6]

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
di::container::IotaView< T, Bound >::IotaView ( Iterator first,
Iterator last )
inlineconstexpr

◆ IotaView() [5/6]

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
di::container::IotaView< T, Bound >::IotaView ( Iterator first,
Sentinel last )
inlineconstexpr

◆ IotaView() [6/6]

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
di::container::IotaView< T, Bound >::IotaView ( Iterator first,
UnreachableSentinel  )
inlineconstexpr

Member Function Documentation

◆ begin()

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
auto di::container::IotaView< T, Bound >::begin ( ) const->Iterator
inlineconstexpr

◆ end() [1/2]

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
auto di::container::IotaView< T, Bound >::end ( ) const
inlineconstexpr

◆ end() [2/2]

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
auto di::container::IotaView< T, Bound >::end ( ) const->Iteratorrequires(concepts::SameAs< T, Bound >)
inlineconstexpr

◆ size()

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
auto di::container::IotaView< T, Bound >::size ( ) const
inlineconstexpr

◆ tag_invoke

template<concepts::Copyable T, concepts::Semiregular Bound = UnreachableSentinel>
template<concepts::OneOf< Iterator, meta::Conditional< is_bounded, Sentinel, UnreachableSentinel > > Sent>
friend auto tag_invoke ( types::Tag< container::reconstruct > ,
Iterator first,
Sent last )
friend

The documentation for this class was generated from the following file: