Loading [MathJax]/extensions/tex2jax.js
Iros
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages Concepts
Loading...
Searching...
No Matches
di::container::OwningView< Cont > Class Template Reference

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

Inheritance diagram for di::container::OwningView< Cont >:
[legend]

Public Member Functions

constexpr OwningView ()=default
 
constexpr OwningView (OwningView const &)=delete
 
constexpr OwningView (OwningView &&)=default
 
constexpr OwningView (Cont &&container)
 
constexpr auto operator= (OwningView const &) -> OwningView &=delete
 
constexpr auto operator= (OwningView &&) -> OwningView &=default
 
constexpr auto base () &-> Cont &
 
constexpr auto base () const &-> Cont const &
 
constexpr auto base () &&-> Cont &&
 
constexpr auto base () const &&-> Cont const &&
 
constexpr auto begin ()
 
constexpr auto begin () const
 
constexpr auto end ()
 
constexpr auto end () const
 
constexpr auto empty () -> bool requires(concepts::HasEmptyContainer< Cont >)
 
constexpr auto empty () const -> bool requires(concepts::HasEmptyContainer< Cont const >)
 
constexpr auto size ()
 
constexpr auto size () const
 
constexpr auto data ()
 
constexpr auto data () const
 
- Public Member Functions inherited from di::container::ViewInterface< OwningView< Cont > >
constexpr auto empty () -> bool requires(concepts::SizedContainer< OwningView< Cont > >||concepts::ForwardContainer< OwningView< Cont > >)
 
constexpr auto empty () const -> bool requires(concepts::SizedContainer< OwningView< Cont > const >||concepts::ForwardContainer< OwningView< Cont > const >)
 
constexpr operator bool ()
 
constexpr operator bool () const
 
constexpr auto cbegin ()
 
constexpr auto cbegin () const
 
constexpr auto cend ()
 
constexpr auto cend () const
 
constexpr auto data ()
 
constexpr auto data () const
 
constexpr auto size ()
 
constexpr auto size () const
 
constexpr auto front ()
 
constexpr auto front () const
 
constexpr auto back ()
 
constexpr auto back () const
 
constexpr auto operator[] (meta::ContainerSSizeType< Cont > n) -> decltype(auto)
 
constexpr auto operator[] (meta::ContainerSSizeType< Cont > n) const -> decltype(auto)
 
constexpr auto at (meta::ContainerSSizeType< Cont > n) -> Optional< meta::ContainerReference< Cont > >
 
constexpr auto at (meta::ContainerSSizeType< Cont > n) const -> Optional< meta::ContainerReference< Cont > >
 

Friends

template<typename T, typename U>
requires (!concepts::SameAs<OwningView, Cont> && concepts::Invocable<decltype(container::reconstruct), InPlaceType<Cont>, T, U>)
constexpr friend auto tag_invoke (types::Tag< container::reconstruct >, InPlaceType< OwningView >, T &&t, U &&u)
 

Constructor & Destructor Documentation

◆ OwningView() [1/4]

template<concepts::Container Cont>
di::container::OwningView< Cont >::OwningView ( )
constexprdefault

◆ OwningView() [2/4]

template<concepts::Container Cont>
di::container::OwningView< Cont >::OwningView ( OwningView< Cont > const & )
constexprdelete

◆ OwningView() [3/4]

template<concepts::Container Cont>
di::container::OwningView< Cont >::OwningView ( OwningView< Cont > && )
constexprdefault

◆ OwningView() [4/4]

template<concepts::Container Cont>
di::container::OwningView< Cont >::OwningView ( Cont && container)
inlineconstexpr

Member Function Documentation

◆ base() [1/4]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::base ( ) && -> Cont&&
inlineconstexpr

◆ base() [2/4]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::base ( ) & -> Cont&
inlineconstexpr

◆ base() [3/4]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::base ( ) const && -> Cont const&&
inlineconstexpr

◆ base() [4/4]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::base ( ) const & -> Cont const&
inlineconstexpr

◆ begin() [1/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::begin ( )
inlineconstexpr

◆ begin() [2/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::begin ( ) const
inlineconstexpr

◆ data() [1/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::data ( )
inlineconstexpr

◆ data() [2/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::data ( ) const
inlineconstexpr

◆ empty() [1/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::empty ( ) -> bool requires(concepts::HasEmptyContainer<Cont>)
inlineconstexpr

◆ empty() [2/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::empty ( ) const -> bool requires(concepts::HasEmptyContainer<Cont const>)
inlineconstexpr

◆ end() [1/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::end ( )
inlineconstexpr

◆ end() [2/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::end ( ) const
inlineconstexpr

◆ operator=() [1/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::operator= ( OwningView< Cont > && ) -> OwningView &=default
constexprdefault

◆ operator=() [2/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::operator= ( OwningView< Cont > const & ) -> OwningView &=delete
constexprdelete

◆ size() [1/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::size ( )
inlineconstexpr

◆ size() [2/2]

template<concepts::Container Cont>
auto di::container::OwningView< Cont >::size ( ) const
inlineconstexpr

Friends And Related Symbol Documentation

◆ tag_invoke

template<concepts::Container Cont>
template<typename T, typename U>
requires (!concepts::SameAs<OwningView, Cont> && concepts::Invocable<decltype(container::reconstruct), InPlaceType<Cont>, T, U>)
friend auto tag_invoke ( types::Tag< container::reconstruct > ,
InPlaceType< OwningView< Cont > > ,
T && t,
U && u )
friend

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