OpenKalman
Public Types | Public Member Functions | List of all members
OpenKalman::collections::internal::movable_wrapper< T, typename > Struct Template Reference

Public Types

using type = T
 The wrapped type.
 

Public Member Functions

constexpr movable_wrapper () noexcept=default
 Default constructor.
 
constexpr movable_wrapper (T &&t) noexcept
 Construct from a value.
 
constexpr T & get () &noexcept
 Retrieve the stored value.
 
constexpr const T & get () const &noexcept
 
constexpr T && get () &&noexcept
 
constexpr const T && get () const &&noexcept
 
constexpr operator T & () &noexcept
 Convert to the underlying value or its reference.
 
constexpr operator const T & () const &noexcept
 
constexpr operator T () &&noexcept
 
constexpr operator const T () const &&noexcept
 
template<typename... ArgTypes>
constexpr std::invoke_result_t< T &, ArgTypes... > operator() (ArgTypes &&...args) &noexcept(std::is_nothrow_invocable_v< T &, ArgTypes... >)
 Call the callable object.
 
template<typename... ArgTypes>
std::invoke_result_t< T &, ArgTypes... > constexpr operator() (ArgTypes &&...args) const &noexcept(std::is_nothrow_invocable_v< T &, ArgTypes... >)
 
template<typename... ArgTypes>
std::invoke_result_t< T &, ArgTypes... > constexpr operator() (ArgTypes &&...args) &&noexcept(std::is_nothrow_invocable_v< T &, ArgTypes... >)
 
template<typename... ArgTypes>
std::invoke_result_t< T &, ArgTypes... > constexpr operator() (ArgTypes &&...args) const &&noexcept(std::is_nothrow_invocable_v< T &, ArgTypes... >)
 

Member Function Documentation

◆ get() [1/3]

template<typename T, typename = void>
constexpr const T& OpenKalman::collections::internal::movable_wrapper< T, typename >::get ( ) const &
inlinenoexcept

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

◆ get() [2/3]

template<typename T, typename = void>
constexpr T&& OpenKalman::collections::internal::movable_wrapper< T, typename >::get ( ) &&
inlinenoexcept

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

◆ get() [3/3]

template<typename T, typename = void>
constexpr const T&& OpenKalman::collections::internal::movable_wrapper< T, typename >::get ( ) const &&
inlinenoexcept

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

◆ operator const T()

template<typename T, typename = void>
constexpr OpenKalman::collections::internal::movable_wrapper< T, typename >::operator const T ( ) const &&
inlinenoexcept

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

◆ operator const T &()

template<typename T, typename = void>
constexpr OpenKalman::collections::internal::movable_wrapper< T, typename >::operator const T & ( ) const &
inlinenoexcept

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

◆ operator T()

template<typename T, typename = void>
constexpr OpenKalman::collections::internal::movable_wrapper< T, typename >::operator T ( ) &&
inlinenoexcept

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

◆ operator()() [1/3]

template<typename T, typename = void>
template<typename... ArgTypes>
std::invoke_result_t<T&, ArgTypes...> constexpr OpenKalman::collections::internal::movable_wrapper< T, typename >::operator() ( ArgTypes &&...  args) const &
inlinenoexcept

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

◆ operator()() [2/3]

template<typename T, typename = void>
template<typename... ArgTypes>
std::invoke_result_t<T&, ArgTypes...> constexpr OpenKalman::collections::internal::movable_wrapper< T, typename >::operator() ( ArgTypes &&...  args) &&
inlinenoexcept

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

◆ operator()() [3/3]

template<typename T, typename = void>
template<typename... ArgTypes>
std::invoke_result_t<T&, ArgTypes...> constexpr OpenKalman::collections::internal::movable_wrapper< T, typename >::operator() ( ArgTypes &&...  args) 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: