Android-cuttlefish cvd tool
Classes | Namespaces | Macros | Functions | Variables
expected.h File Reference
#include <algorithm>
#include <initializer_list>
#include <type_traits>
#include <utility>
#include <variant>
Include dependency graph for expected.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  android::base::unexpect_t
 
class  android::base::expected< T, E >
 
class  android::base::expected< void, E >
 
class  android::base::unexpected< E >
 

Namespaces

namespace  android
 
namespace  android::base
 

Macros

#define _ENABLE_IF(...)    , std::enable_if_t<(__VA_ARGS__)>* = nullptr
 
#define _NODISCARD_
 

Functions

template<class E >
 android::base::unexpected (E) -> unexpected< E >
 
template<class T1 , class E1 , class T2 , class E2 >
constexpr bool android::base::operator== (const expected< T1, E1 > &x, const expected< T2, E2 > &y)
 
template<class T1 , class E1 , class T2 , class E2 >
constexpr bool android::base::operator!= (const expected< T1, E1 > &x, const expected< T2, E2 > &y)
 
template<class T1 , class E1 , class E2 >
constexpr bool android::base::operator== (const expected< T1, E1 > &x, const unexpected< E2 > &y)
 
template<class T1 , class E1 , class E2 >
constexpr bool android::base::operator== (const unexpected< E2 > &x, const expected< T1, E1 > &y)
 
template<class T1 , class E1 , class E2 >
constexpr bool android::base::operator!= (const expected< T1, E1 > &x, const unexpected< E2 > &y)
 
template<class T1 , class E1 , class E2 >
constexpr bool android::base::operator!= (const unexpected< E2 > &x, const expected< T1, E1 > &y)
 
template<class T1 , class E1 >
void android::base::swap (expected< T1, E1 > &x, expected< T1, E1 > &y) noexcept(noexcept(x.swap(y)))
 
template<class E1 , class E2 >
constexpr bool android::base::operator== (const expected< void, E1 > &x, const expected< void, E2 > &y)
 
template<class T1 , class E1 , class E2 >
constexpr bool android::base::operator== (const expected< T1, E1 > &x, const expected< void, E2 > &y)
 
template<class E1 , class T2 , class E2 >
constexpr bool android::base::operator== (const expected< void, E1 > &x, const expected< T2, E2 > &y)
 
template<class E1 , class E2 >
constexpr bool android::base::operator== (const unexpected< E1 > &e1, const unexpected< E2 > &e2)
 
template<class E1 , class E2 >
constexpr bool android::base::operator!= (const unexpected< E1 > &e1, const unexpected< E2 > &e2)
 
template<class E1 >
void android::base::swap (unexpected< E1 > &x, unexpected< E1 > &y) noexcept(noexcept(x.swap(y)))
 

Variables

constexpr unexpect_t android::base::unexpect {}
 

Macro Definition Documentation

◆ _ENABLE_IF

#define _ENABLE_IF (   ...)     , std::enable_if_t<(__VA_ARGS__)>* = nullptr

◆ _NODISCARD_

#define _NODISCARD_