NAH 1.0.6
Native Application Host - Library API Reference
Loading...
Searching...
No Matches
nah::Result< T, E > Class Template Reference

Result type for fallible operations. More...

#include <nahhost.hpp>

Public Member Functions

Eerror ()
 
const Eerror () const
 
template<typename F >
auto flatMap (F func) -> decltype(func(std::declval< T >()))
 
bool isErr () const
 
bool isOk () const
 
template<typename F >
auto map (F func) -> Result< decltype(func(std::declval< T >())), E >
 
Tvalue ()
 
const Tvalue () const
 
T valueOr (T default_value) const
 

Static Public Member Functions

static Result err (E error)
 
static Result ok (T value)
 

Detailed Description

template<typename T, typename E = Error>
class nah::Result< T, E >

Result type for fallible operations.

Template Parameters
TThe success value type
EThe error type (default: Error)

Used throughout the NAH API for operations that can fail. Check isOk() before accessing value(), or isErr() before error().

Definition at line 109 of file nahhost.hpp.

Member Function Documentation

◆ err()

template<typename T , typename E = Error>
static Result nah::Result< T, E >::err ( E  error)
inlinestatic

◆ error() [1/2]

template<typename T , typename E = Error>
E & nah::Result< T, E >::error ( )
inline

◆ error() [2/2]

template<typename T , typename E = Error>
const E & nah::Result< T, E >::error ( ) const
inline

Definition at line 120 of file nahhost.hpp.

◆ flatMap()

template<typename T , typename E = Error>
template<typename F >
auto nah::Result< T, E >::flatMap ( F  func) -> decltype(func(std::declval<T>()))
inline

◆ isErr()

template<typename T , typename E = Error>
bool nah::Result< T, E >::isErr ( ) const
inline

◆ isOk()

template<typename T , typename E = Error>
bool nah::Result< T, E >::isOk ( ) const
inline

◆ map()

template<typename T , typename E = Error>
template<typename F >
auto nah::Result< T, E >::map ( F  func) -> Result<decltype(func(std::declval<T>())), E>
inline

◆ ok()

template<typename T , typename E = Error>
static Result nah::Result< T, E >::ok ( T  value)
inlinestatic

◆ value() [1/2]

template<typename T , typename E = Error>
T & nah::Result< T, E >::value ( )
inline

◆ value() [2/2]

template<typename T , typename E = Error>
const T & nah::Result< T, E >::value ( ) const
inline

Definition at line 118 of file nahhost.hpp.

◆ valueOr()

template<typename T , typename E = Error>
T nah::Result< T, E >::valueOr ( T  default_value) const
inline

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