OpenKalman
Public Member Functions | List of all members
OpenKalman::ranges::owning_view< R > Struct Template Reference
Inheritance diagram for OpenKalman::ranges::owning_view< R >:
Inheritance graph
[legend]
Collaboration diagram for OpenKalman::ranges::owning_view< R >:
Collaboration graph
[legend]

Public Member Functions

template<typename aR = R, std::enable_if_t< std::is_default_constructible_v< aR >, int > = 0>
constexpr owning_view ()
 Default constructor.
 
constexpr owning_view (owning_view &&other)=default
 Move constructor.
 
constexpr owning_view (R &&t)
 Construct from a collection.
 
constexpr owning_viewoperator= (owning_view &&other)=default
 Move assignment operator.
 
decltype(auto) constexpr base () &
 Get the base object.
 
decltype(auto) constexpr base () const &
 
decltype(auto) constexpr base () &&noexcept
 
decltype(auto) constexpr base () const &&noexcept
 
constexpr auto begin ()
 
template<bool Enable = true, std::enable_if_t< Enable and range< const R >, int > = 0>
constexpr auto begin () const
 
constexpr auto end ()
 
template<bool Enable = true, std::enable_if_t< Enable and range< const R >, int > = 0>
constexpr auto end () const
 
template<typename Enable = void, typename = std::void_t<Enable, decltype(ranges::empty(std::declval<R>()))>>
constexpr auto empty ()
 Indicates whether the view is empty.
 
template<typename Enable = void, typename = std::void_t<Enable, decltype(ranges::empty(std::declval<const R>()))>>
constexpr auto empty () const
 
template<bool Enable = true, std::enable_if_t< Enable and sized_range< R >, int > = 0>
constexpr auto size () noexcept
 The size of the object.
 
template<bool Enable = true, std::enable_if_t< Enable and sized_range< const R >, int > = 0>
constexpr auto size () const noexcept
 
- Public Member Functions inherited from OpenKalman::ranges::view_interface< owning_view< R > >
constexpr bool empty ()
 
constexpr bool empty () const
 
constexpr auto cbegin ()
 
constexpr auto cbegin () const
 
constexpr auto cend ()
 
constexpr auto cend () const
 
constexpr operator bool ()
 
constexpr operator bool () const
 
constexpr auto size ()
 
constexpr auto size () const
 
decltype(auto) constexpr front ()
 
decltype(auto) constexpr front () const
 
decltype(auto) constexpr back ()
 
decltype(auto) constexpr back () const
 
decltype(auto) constexpr operator[] (range_difference_t< D > n)
 
decltype(auto) constexpr operator[] (range_difference_t< D > n) const
 

Member Function Documentation

◆ base() [1/3]

template<typename R >
decltype(auto) constexpr OpenKalman::ranges::owning_view< R >::base ( ) const &
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ base() [2/3]

template<typename R >
decltype(auto) constexpr OpenKalman::ranges::owning_view< R >::base ( ) &&
inlinenoexcept

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ base() [3/3]

template<typename R >
decltype(auto) constexpr OpenKalman::ranges::owning_view< R >::base ( ) const &&
inlinenoexcept

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ begin() [1/2]

template<typename R >
constexpr auto OpenKalman::ranges::owning_view< R >::begin ( )
inline
Returns
An iterator at the beginning, if the base object is a range.

◆ begin() [2/2]

template<typename R >
template<bool Enable = true, std::enable_if_t< Enable and range< const R >, int > = 0>
constexpr auto OpenKalman::ranges::owning_view< R >::begin ( ) const
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ empty()

template<typename R >
template<typename Enable = void, typename = std::void_t<Enable, decltype(ranges::empty(std::declval<const R>()))>>
constexpr auto OpenKalman::ranges::owning_view< R >::empty ( ) const
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ end() [1/2]

template<typename R >
constexpr auto OpenKalman::ranges::owning_view< R >::end ( )
inline
Returns
An iterator at the end, if the base object is a range.

◆ end() [2/2]

template<typename R >
template<bool Enable = true, std::enable_if_t< Enable and range< const R >, int > = 0>
constexpr auto OpenKalman::ranges::owning_view< R >::end ( ) const
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ size()

template<typename R >
template<bool Enable = true, std::enable_if_t< Enable and sized_range< const R >, int > = 0>
constexpr auto OpenKalman::ranges::owning_view< R >::size ( ) const
inlinenoexcept

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.


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