AdbcDatabase 的 CRTP 基类实现。 更多...
#include <database.h>
公共类型 | |
using | Base = Database<Derived> |
![]() | |
using | Base = BaseDatabase<Derived> |
公共成员函数 | |
virtual Status | InitImpl () |
初始化数据库。 | |
virtual Status | ReleaseImpl () |
释放数据库。 | |
virtual Status | SetOptionImpl (std::string_view key, Option value) |
设置一个选项。可以在 InitImpl 之前调用。 | |
![]() | |
AdbcStatusCode | Init (void *parent, AdbcError *error) override |
初始化对象。 | |
AdbcStatusCode | Release (AdbcError *error) override |
终结对象。 | |
AdbcStatusCode | SetOption (std::string_view key, Option value, AdbcError *error) override |
设置选项值。 | |
![]() | |
virtual Result< Option > | GetOption (std::string_view key) |
获取选项值。 | |
私有成员函数 | |
Derived & | impl () |
附加的继承成员 | |
![]() | |
LifecycleState | lifecycle_state_ |
AdbcDatabase 的 CRTP 基类实现。
Derived 应该重载并实现 Impl 方法,而不是其他方法。 重载方法应该在最后 defer 到超类版本。(提供 Base typedef 是为了更容易实现。) Derived 还应该定义一个 constexpr static 符号,名为 kErrorPrefix,用于构造错误消息。
|
inlinevirtual |
初始化数据库。
|
inlinevirtual |
释放数据库。
|
inlinevirtual |
设置一个选项。可以在 InitImpl 之前调用。