mini-llvm 0.1.0
Loading...
Searching...
No Matches
mini_llvm::Expected< T, E > Class Template Reference

#include <Expected.h>

Public Types

using value_type = T
using error_type = E

Public Member Functions

constexpr Expected ()=default
constexpr Expected (T value)
template<typename U>
requires std::is_convertible_v<U, T>
constexpr Expected (U value)
constexpr Expected (Unexpected< E > error)
template<typename F>
requires std::is_convertible_v<F, E>
constexpr Expected (Unexpected< F > error)
constexpr operator bool () const noexcept
constexpr T & operator* () &noexcept
constexpr const T & operator* () const &noexcept
constexpr T && operator* () &&noexcept
constexpr T * operator-> () noexcept
constexpr const T * operator-> () const noexcept
constexpr T & value () &noexcept
constexpr const T & value () const &noexcept
constexpr T && value () &&noexcept
constexpr E & error () &noexcept
constexpr const E & error () const &noexcept
constexpr E && error () &&noexcept

Member Typedef Documentation

◆ error_type

template<typename T, typename E>
using mini_llvm::Expected< T, E >::error_type = E

◆ value_type

template<typename T, typename E>
using mini_llvm::Expected< T, E >::value_type = T

Constructor & Destructor Documentation

◆ Expected() [1/5]

template<typename T, typename E>
mini_llvm::Expected< T, E >::Expected ( )
constexprdefault

◆ Expected() [2/5]

template<typename T, typename E>
mini_llvm::Expected< T, E >::Expected ( T value)
inlineconstexpr

◆ Expected() [3/5]

template<typename T, typename E>
template<typename U>
requires std::is_convertible_v<U, T>
mini_llvm::Expected< T, E >::Expected ( U value)
inlineconstexpr

◆ Expected() [4/5]

template<typename T, typename E>
mini_llvm::Expected< T, E >::Expected ( Unexpected< E > error)
inlineconstexpr

◆ Expected() [5/5]

template<typename T, typename E>
template<typename F>
requires std::is_convertible_v<F, E>
mini_llvm::Expected< T, E >::Expected ( Unexpected< F > error)
inlineconstexpr

Member Function Documentation

◆ error() [1/3]

template<typename T, typename E>
E && mini_llvm::Expected< T, E >::error ( ) &&
inlineconstexprnoexcept

◆ error() [2/3]

template<typename T, typename E>
E & mini_llvm::Expected< T, E >::error ( ) &
inlineconstexprnoexcept

◆ error() [3/3]

template<typename T, typename E>
const E & mini_llvm::Expected< T, E >::error ( ) const &
inlineconstexprnoexcept

◆ operator bool()

template<typename T, typename E>
mini_llvm::Expected< T, E >::operator bool ( ) const
inlineexplicitconstexprnoexcept

◆ operator*() [1/3]

template<typename T, typename E>
T && mini_llvm::Expected< T, E >::operator* ( ) &&
inlineconstexprnoexcept

◆ operator*() [2/3]

template<typename T, typename E>
T & mini_llvm::Expected< T, E >::operator* ( ) &
inlineconstexprnoexcept

◆ operator*() [3/3]

template<typename T, typename E>
const T & mini_llvm::Expected< T, E >::operator* ( ) const &
inlineconstexprnoexcept

◆ operator->() [1/2]

template<typename T, typename E>
const T * mini_llvm::Expected< T, E >::operator-> ( ) const
inlineconstexprnoexcept

◆ operator->() [2/2]

template<typename T, typename E>
T * mini_llvm::Expected< T, E >::operator-> ( )
inlineconstexprnoexcept

◆ value() [1/3]

template<typename T, typename E>
T && mini_llvm::Expected< T, E >::value ( ) &&
inlineconstexprnoexcept

◆ value() [2/3]

template<typename T, typename E>
T & mini_llvm::Expected< T, E >::value ( ) &
inlineconstexprnoexcept

◆ value() [3/3]

template<typename T, typename E>
const T & mini_llvm::Expected< T, E >::value ( ) const &
inlineconstexprnoexcept

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