LeviLamina
Loading...
Searching...
No Matches
optional_ref< T > Class Template Reference

Public Member Functions

constexpr optional_ref (std::nullopt_t) noexcept
constexpr optional_ref (std::nullptr_t) noexcept
template<class U>
constexpr optional_ref (std::optional< U > &o) noexcept
template<class U>
constexpr optional_ref (U *p) noexcept
template<class U>
constexpr optional_ref (U &r) noexcept
template<class U>
constexpr optional_ref (U const &r) noexcept
template<class U>
constexpr optional_ref (const std::optional< U > &o) noexcept
template<typename U>
constexpr optional_ref (optional_ref< U > rhs) noexcept
constexpr optional_ref (optional_ref &&) noexcept=default
LL_MAY_CONSTEXPR optional_refoperator= (optional_ref &&) noexcept=default
constexpr optional_ref (optional_ref const &) noexcept=default
LL_MAY_CONSTEXPR optional_refoperator= (optional_ref const &) noexcept=default
constexpr operator bool () const noexcept
constexpr bool has_value () const noexcept
constexpr T * as_ptr () const noexcept
constexpr T & value () const
constexpr T & get () const
constexpr T & operator* () const noexcept
constexpr T * operator-> () const noexcept
constexpr operator T& () const
constexpr operator T* () const noexcept
template<class U>
constexpr T & value_or (U &right) const &
template<class U>
constexpr T value_or (U &&right) const &&
template<typename U = std::decay_t<T>>
constexpr std::optional< U > copy_as_optional () const
template<class... Types>
constexpr decltype(auto) operator() (Types &&... args) const noexcept(noexcept(std::invoke(value(), static_cast< Types && >(args)...)))
template<class Arg>
constexpr decltype(auto) operator[] (Arg &&index) const
constexpr decltype(auto) end () const
constexpr decltype(auto) begin () const
constexpr decltype(auto) cend () const
constexpr decltype(auto) cbegin () const
constexpr decltype(auto) rend () const
constexpr decltype(auto) rbegin () const
constexpr decltype(auto) crend () const
constexpr decltype(auto) crbegin () const
template<class Fn>
constexpr auto and_then (Fn &&fn) const
template<class Fn>
constexpr auto transform (Fn &&fn) const
template<std::invocable<> Fn>
constexpr auto or_else (Fn &&fn) const -> std::invoke_result_t< Fn >

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