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

获取值(如果存在)。


此类文档由以下文件生成