ADBC
Arrow 数据库连接
加载中...
搜索中...
无匹配项
adbc::driver::Result< T > 类模板参考

值或错误的包装器。 更多...

#include <status.h>

公共成员函数

 Result (Status s)
 隐式构造函数,允许在函数中返回状态。
 
template<typename U , typename E = typename std::enable_if< std::is_constructible<T, U>::value && std::is_convertible<U, T>::value && !std::is_same<typename std::remove_reference< typename std::remove_cv<U>::type>::type, Status>::value>::type>
 Result (U &&t)
 隐式构造函数,允许在函数中返回值。
 
bool has_value () const
 检查是否有值。
 
const Statusstatus () const &
 获取状态(如果存在)。
 
Status && status(状态) () &&
 移动状态(如果存在)。
 
T & value(值) ()
 获取值(如果存在)。
 

私有属性

std::variant< Status, T > value_
 

详细描述

template<typename T>
class adbc::driver::Result< T >

值或错误的包装器。

我们或许可以通过使用像 std::expected 这样的库来做得更好,但这目前已经足够了。似乎没有一个维护良好的 std::expected 向后移植版本。

构造函数和析构函数文档

◆ Result() [1/2]

template<typename T >
adbc::driver::Result< T >::Result ( Status(状态) s)
inline(内联)

隐式构造函数,允许在函数中返回状态。

◆ Result() [2/2]

template<typename T >
template<typename U , typename E = typename std::enable_if< std::is_constructible<T, U>::value && std::is_convertible<U, T>::value && !std::is_same<typename std::remove_reference< typename std::remove_cv<U>::type>::type, Status>::value>::type>
adbc::driver::Result< T >::Result ( U && t)
inline(内联)

隐式构造函数,允许在函数中返回值。

成员函数文档

◆ has_value()

template<typename T >
bool adbc::driver::Result< T >::has_value ( ) const(常量)
inline(内联)

检查是否有值。

◆ status() [1/2]

template<typename T >
Status && adbc::driver::Result< T >::status ( ) &&
inline(内联)

移动状态(如果存在)。

◆ status() [2/2]

template<typename T >
const Status & adbc::driver::Result< T >::status ( ) const &(常量引用)
inline(内联)

获取状态(如果存在)。

◆ value()

template<typename T >
T & adbc::driver::Result< T >::value ( )
inline(内联)

获取值(如果存在)。


此类的文档是从以下文件生成的