#![allow(non_upper_case_globals)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
use crate::cursor::OH_Cursor;
use crate::predicates::OH_Predicates;
#[cfg(feature = "api-20")]
use crate::rdb_crypto_param::OH_Rdb_CryptoParam;
#[cfg(feature = "api-18")]
use crate::rdb_transaction::{OH_RDB_TransOptions, OH_Rdb_Transaction};
#[cfg(feature = "api-23")]
use crate::rdb_types::OH_RDB_ReturningContext;
#[cfg(feature = "api-18")]
use crate::rdb_types::{OH_Data_Value, OH_Data_Values, Rdb_ConflictResolution};
use crate::value_object::OH_VObject;
#[cfg(feature = "api-18")]
use crate::values_bucket::OH_Data_VBuckets;
use crate::values_bucket::OH_VBucket;
pub const DISTRIBUTED_CONFIG_VERSION: u32 = 1;
pub const DISTRIBUTED_CHANGE_INFO_VERSION: u32 = 1;
pub const DISTRIBUTED_PROGRESS_DETAIL_VERSION: u32 = 1;
impl OH_Rdb_SecurityLevel {
pub const S1: OH_Rdb_SecurityLevel = OH_Rdb_SecurityLevel(1);
pub const S2: OH_Rdb_SecurityLevel = OH_Rdb_SecurityLevel(2);
pub const S3: OH_Rdb_SecurityLevel = OH_Rdb_SecurityLevel(3);
pub const S4: OH_Rdb_SecurityLevel = OH_Rdb_SecurityLevel(4);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_Rdb_SecurityLevel(pub ::core::ffi::c_uint);
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
impl Rdb_SecurityArea {
pub const RDB_SECURITY_AREA_EL1: Rdb_SecurityArea = Rdb_SecurityArea(1);
pub const RDB_SECURITY_AREA_EL2: Rdb_SecurityArea = Rdb_SecurityArea(2);
pub const RDB_SECURITY_AREA_EL3: Rdb_SecurityArea = Rdb_SecurityArea(3);
pub const RDB_SECURITY_AREA_EL4: Rdb_SecurityArea = Rdb_SecurityArea(4);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub const RDB_SECURITY_AREA_EL5: Rdb_SecurityArea = Rdb_SecurityArea(5);
}
#[repr(transparent)]
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct Rdb_SecurityArea(pub ::core::ffi::c_uint);
#[repr(C, packed)]
#[derive(Debug, Copy, Clone)]
pub struct OH_Rdb_Config {
pub selfSize: ::core::ffi::c_int,
pub dataBaseDir: *const ::core::ffi::c_char,
pub storeName: *const ::core::ffi::c_char,
pub bundleName: *const ::core::ffi::c_char,
pub moduleName: *const ::core::ffi::c_char,
pub isEncrypt: bool,
pub securityLevel: ::core::ffi::c_int,
pub area: ::core::ffi::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct OH_Rdb_Store {
pub id: i64,
}
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
#[repr(C)]
pub struct OH_Rdb_ConfigV2 {
_unused: [u8; 0],
}
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
impl Rdb_DBType {
pub const RDB_SQLITE: Rdb_DBType = Rdb_DBType(1);
pub const RDB_CAYLEY: Rdb_DBType = Rdb_DBType(2);
pub const DBTYPE_BUTT: Rdb_DBType = Rdb_DBType(64);
}
#[repr(transparent)]
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct Rdb_DBType(pub ::core::ffi::c_uint);
#[cfg(feature = "api-17")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-17")))]
impl Rdb_Tokenizer {
#[cfg(feature = "api-17")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-17")))]
pub const RDB_NONE_TOKENIZER: Rdb_Tokenizer = Rdb_Tokenizer(1);
#[cfg(feature = "api-17")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-17")))]
pub const RDB_ICU_TOKENIZER: Rdb_Tokenizer = Rdb_Tokenizer(2);
#[cfg(feature = "api-18")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-18")))]
pub const RDB_CUSTOM_TOKENIZER: Rdb_Tokenizer = Rdb_Tokenizer(3);
}
#[repr(transparent)]
#[cfg(feature = "api-17")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-17")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct Rdb_Tokenizer(pub ::core::ffi::c_uint);
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
impl Rdb_DistributedType {
pub const RDB_DISTRIBUTED_CLOUD: Rdb_DistributedType = Rdb_DistributedType(0);
}
#[repr(transparent)]
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct Rdb_DistributedType(pub ::core::ffi::c_uint);
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Rdb_DistributedConfig {
pub version: ::core::ffi::c_int,
pub isAutoSync: bool,
}
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
impl Rdb_ChangeType {
pub const RDB_DATA_CHANGE: Rdb_ChangeType = Rdb_ChangeType(0);
pub const RDB_ASSET_CHANGE: Rdb_ChangeType = Rdb_ChangeType(1);
}
#[repr(transparent)]
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct Rdb_ChangeType(pub ::core::ffi::c_uint);
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Rdb_KeyInfo {
pub count: ::core::ffi::c_int,
pub type_: ::core::ffi::c_int,
pub data: *mut Rdb_KeyInfo_Rdb_KeyData,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union Rdb_KeyInfo_Rdb_KeyData {
pub integer: u64,
pub real: f64,
pub text: *const ::core::ffi::c_char,
}
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Rdb_ChangeInfo {
pub version: ::core::ffi::c_int,
pub tableName: *const ::core::ffi::c_char,
pub ChangeType: ::core::ffi::c_int,
pub inserted: Rdb_KeyInfo,
pub updated: Rdb_KeyInfo,
pub deleted: Rdb_KeyInfo,
}
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
impl Rdb_SubscribeType {
pub const RDB_SUBSCRIBE_TYPE_CLOUD: Rdb_SubscribeType = Rdb_SubscribeType(0);
pub const RDB_SUBSCRIBE_TYPE_CLOUD_DETAILS: Rdb_SubscribeType = Rdb_SubscribeType(1);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub const RDB_SUBSCRIBE_TYPE_LOCAL_DETAILS: Rdb_SubscribeType = Rdb_SubscribeType(2);
}
#[repr(transparent)]
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct Rdb_SubscribeType(pub ::core::ffi::c_uint);
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub type Rdb_BriefObserver = ::core::option::Option<
unsafe extern "C" fn(
context: *mut ::core::ffi::c_void,
values: *mut *const ::core::ffi::c_char,
count: u32,
),
>;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub type Rdb_DetailsObserver = ::core::option::Option<
unsafe extern "C" fn(
context: *mut ::core::ffi::c_void,
changeInfo: *mut *const Rdb_ChangeInfo,
count: u32,
),
>;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[repr(C)]
#[derive(Copy, Clone)]
pub union Rdb_SubscribeCallback {
pub detailsObserver: Rdb_DetailsObserver,
pub briefObserver: Rdb_BriefObserver,
}
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[repr(C)]
#[derive(Copy, Clone)]
pub struct Rdb_DataObserver {
pub context: *mut ::core::ffi::c_void,
pub callback: Rdb_SubscribeCallback,
}
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
impl Rdb_SyncMode {
pub const RDB_SYNC_MODE_TIME_FIRST: Rdb_SyncMode = Rdb_SyncMode(0);
pub const RDB_SYNC_MODE_NATIVE_FIRST: Rdb_SyncMode = Rdb_SyncMode(1);
pub const RDB_SYNC_MODE_CLOUD_FIRST: Rdb_SyncMode = Rdb_SyncMode(2);
}
#[repr(transparent)]
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct Rdb_SyncMode(pub ::core::ffi::c_uint);
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Rdb_Statistic {
pub total: ::core::ffi::c_int,
pub successful: ::core::ffi::c_int,
pub failed: ::core::ffi::c_int,
pub remained: ::core::ffi::c_int,
}
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Rdb_TableDetails {
pub table: *const ::core::ffi::c_char,
pub upload: Rdb_Statistic,
pub download: Rdb_Statistic,
}
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
impl Rdb_Progress {
pub const RDB_SYNC_BEGIN: Rdb_Progress = Rdb_Progress(0);
pub const RDB_SYNC_IN_PROGRESS: Rdb_Progress = Rdb_Progress(1);
pub const RDB_SYNC_FINISH: Rdb_Progress = Rdb_Progress(2);
}
#[repr(transparent)]
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct Rdb_Progress(pub ::core::ffi::c_uint);
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
impl Rdb_ProgressCode {
pub const RDB_SUCCESS: Rdb_ProgressCode = Rdb_ProgressCode(0);
pub const RDB_UNKNOWN_ERROR: Rdb_ProgressCode = Rdb_ProgressCode(1);
pub const RDB_NETWORK_ERROR: Rdb_ProgressCode = Rdb_ProgressCode(2);
pub const RDB_CLOUD_DISABLED: Rdb_ProgressCode = Rdb_ProgressCode(3);
pub const RDB_LOCKED_BY_OTHERS: Rdb_ProgressCode = Rdb_ProgressCode(4);
pub const RDB_RECORD_LIMIT_EXCEEDED: Rdb_ProgressCode = Rdb_ProgressCode(5);
pub const RDB_NO_SPACE_FOR_ASSET: Rdb_ProgressCode = Rdb_ProgressCode(6);
}
#[repr(transparent)]
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct Rdb_ProgressCode(pub ::core::ffi::c_uint);
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Rdb_ProgressDetails {
pub version: ::core::ffi::c_int,
pub schedule: ::core::ffi::c_int,
pub code: ::core::ffi::c_int,
pub tableLength: i32,
}
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub type Rdb_ProgressCallback = ::core::option::Option<
unsafe extern "C" fn(
context: *mut ::core::ffi::c_void,
progressDetails: *mut Rdb_ProgressDetails,
),
>;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub type Rdb_SyncCallback =
::core::option::Option<unsafe extern "C" fn(progressDetails: *mut Rdb_ProgressDetails)>;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Rdb_ProgressObserver {
pub context: *mut ::core::ffi::c_void,
pub callback: Rdb_ProgressCallback,
}
#[cfg(feature = "api-22")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-22")))]
pub type Rdb_CorruptedHandler = ::core::option::Option<
unsafe extern "C" fn(
context: *mut ::core::ffi::c_void,
config: *mut OH_Rdb_ConfigV2,
store: *mut OH_Rdb_Store,
),
>;
extern "C" {
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_CreateConfig() -> *mut OH_Rdb_ConfigV2;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_DestroyConfig(config: *mut OH_Rdb_ConfigV2) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_SetDatabaseDir(
config: *mut OH_Rdb_ConfigV2,
databaseDir: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_SetStoreName(
config: *mut OH_Rdb_ConfigV2,
storeName: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_SetBundleName(
config: *mut OH_Rdb_ConfigV2,
bundleName: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_SetModuleName(
config: *mut OH_Rdb_ConfigV2,
moduleName: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_SetEncrypted(
config: *mut OH_Rdb_ConfigV2,
isEncrypted: bool,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_SetSecurityLevel(
config: *mut OH_Rdb_ConfigV2,
securityLevel: ::core::ffi::c_int,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_SetArea(
config: *mut OH_Rdb_ConfigV2,
area: ::core::ffi::c_int,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_SetDbType(
config: *mut OH_Rdb_ConfigV2,
dbType: ::core::ffi::c_int,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_Rdb_SetCustomDir(
config: *mut OH_Rdb_ConfigV2,
customDir: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_Rdb_SetReadOnly(config: *mut OH_Rdb_ConfigV2, readOnly: bool) -> ::core::ffi::c_int;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_Rdb_SetPlugins(
config: *mut OH_Rdb_ConfigV2,
plugins: *mut *const ::core::ffi::c_char,
length: i32,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_Rdb_SetCryptoParam(
config: *mut OH_Rdb_ConfigV2,
cryptoParam: *const OH_Rdb_CryptoParam,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-17")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-17")))]
pub fn OH_Rdb_SetTokenizer(
config: *mut OH_Rdb_ConfigV2,
tokenizer: Rdb_Tokenizer,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-18")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-18")))]
pub fn OH_Rdb_SetPersistent(
config: *mut OH_Rdb_ConfigV2,
isPersistent: bool,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_Rdb_SetSemanticIndex(
config: *mut OH_Rdb_ConfigV2,
enableSemanticIndex: bool,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-18")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-18")))]
pub fn OH_Rdb_IsTokenizerSupported(
tokenizer: Rdb_Tokenizer,
isSupported: *mut bool,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_GetSupportedDbType(
typeCount: *mut ::core::ffi::c_int,
) -> *const ::core::ffi::c_int;
pub fn OH_Rdb_CreateValueObject() -> *mut OH_VObject;
pub fn OH_Rdb_CreateValuesBucket() -> *mut OH_VBucket;
pub fn OH_Rdb_CreatePredicates(table: *const ::core::ffi::c_char) -> *mut OH_Predicates;
pub fn OH_Rdb_GetOrOpen(
config: *const OH_Rdb_Config,
errCode: *mut ::core::ffi::c_int,
) -> *mut OH_Rdb_Store;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_CreateOrOpen(
config: *const OH_Rdb_ConfigV2,
errCode: *mut ::core::ffi::c_int,
) -> *mut OH_Rdb_Store;
pub fn OH_Rdb_CloseStore(store: *mut OH_Rdb_Store) -> ::core::ffi::c_int;
pub fn OH_Rdb_DeleteStore(config: *const OH_Rdb_Config) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_DeleteStoreV2(config: *const OH_Rdb_ConfigV2) -> ::core::ffi::c_int;
pub fn OH_Rdb_Insert(
store: *mut OH_Rdb_Store,
table: *const ::core::ffi::c_char,
valuesBucket: *mut OH_VBucket,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_Rdb_InsertWithConflictResolution(
store: *mut OH_Rdb_Store,
table: *const ::core::ffi::c_char,
row: *mut OH_VBucket,
resolution: Rdb_ConflictResolution,
rowId: *mut i64,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-18")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-18")))]
pub fn OH_Rdb_BatchInsert(
store: *mut OH_Rdb_Store,
table: *const ::core::ffi::c_char,
rows: *const OH_Data_VBuckets,
resolution: Rdb_ConflictResolution,
changes: *mut i64,
) -> ::core::ffi::c_int;
pub fn OH_Rdb_Update(
store: *mut OH_Rdb_Store,
valuesBucket: *mut OH_VBucket,
predicates: *mut OH_Predicates,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_Rdb_UpdateWithConflictResolution(
store: *mut OH_Rdb_Store,
row: *mut OH_VBucket,
predicates: *mut OH_Predicates,
resolution: Rdb_ConflictResolution,
changes: *mut i64,
) -> ::core::ffi::c_int;
pub fn OH_Rdb_Delete(
store: *mut OH_Rdb_Store,
predicates: *mut OH_Predicates,
) -> ::core::ffi::c_int;
pub fn OH_Rdb_Query(
store: *mut OH_Rdb_Store,
predicates: *mut OH_Predicates,
columnNames: *const *const ::core::ffi::c_char,
length: ::core::ffi::c_int,
) -> *mut OH_Cursor;
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub fn OH_Rdb_QueryWithoutRowCount(
store: *mut OH_Rdb_Store,
predicates: *mut OH_Predicates,
columns: *const *const ::core::ffi::c_char,
length: ::core::ffi::c_int,
) -> *mut OH_Cursor;
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub fn OH_Rdb_QuerySqlWithoutRowCount(
store: *mut OH_Rdb_Store,
sql: *const ::core::ffi::c_char,
args: *const OH_Data_Values,
) -> *mut OH_Cursor;
pub fn OH_Rdb_Execute(
store: *mut OH_Rdb_Store,
sql: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-18")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-18")))]
pub fn OH_Rdb_ExecuteV2(
store: *mut OH_Rdb_Store,
sql: *const ::core::ffi::c_char,
args: *const OH_Data_Values,
result: *mut *mut OH_Data_Value,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_ExecuteByTrxId(
store: *mut OH_Rdb_Store,
trxId: i64,
sql: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
pub fn OH_Rdb_ExecuteQuery(
store: *mut OH_Rdb_Store,
sql: *const ::core::ffi::c_char,
) -> *mut OH_Cursor;
#[cfg(feature = "api-18")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-18")))]
pub fn OH_Rdb_ExecuteQueryV2(
store: *mut OH_Rdb_Store,
sql: *const ::core::ffi::c_char,
args: *const OH_Data_Values,
) -> *mut OH_Cursor;
pub fn OH_Rdb_BeginTransaction(store: *mut OH_Rdb_Store) -> ::core::ffi::c_int;
pub fn OH_Rdb_RollBack(store: *mut OH_Rdb_Store) -> ::core::ffi::c_int;
pub fn OH_Rdb_Commit(store: *mut OH_Rdb_Store) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_BeginTransWithTrxId(
store: *mut OH_Rdb_Store,
trxId: *mut i64,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_RollBackByTrxId(store: *mut OH_Rdb_Store, trxId: i64) -> ::core::ffi::c_int;
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub fn OH_Rdb_CommitByTrxId(store: *mut OH_Rdb_Store, trxId: i64) -> ::core::ffi::c_int;
pub fn OH_Rdb_Backup(
store: *mut OH_Rdb_Store,
databasePath: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
pub fn OH_Rdb_Restore(
store: *mut OH_Rdb_Store,
databasePath: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
pub fn OH_Rdb_GetVersion(
store: *mut OH_Rdb_Store,
version: *mut ::core::ffi::c_int,
) -> ::core::ffi::c_int;
pub fn OH_Rdb_SetVersion(
store: *mut OH_Rdb_Store,
version: ::core::ffi::c_int,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub fn OH_Rdb_SetDistributedTables(
store: *mut OH_Rdb_Store,
tables: *mut *const ::core::ffi::c_char,
count: u32,
type_: Rdb_DistributedType,
config: *const Rdb_DistributedConfig,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub fn OH_Rdb_FindModifyTime(
store: *mut OH_Rdb_Store,
tableName: *const ::core::ffi::c_char,
columnName: *const ::core::ffi::c_char,
values: *mut OH_VObject,
) -> *mut OH_Cursor;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub fn OH_Rdb_Subscribe(
store: *mut OH_Rdb_Store,
type_: Rdb_SubscribeType,
observer: *const Rdb_DataObserver,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub fn OH_Rdb_Unsubscribe(
store: *mut OH_Rdb_Store,
type_: Rdb_SubscribeType,
observer: *const Rdb_DataObserver,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub fn OH_Rdb_GetTableDetails(
progress: *mut Rdb_ProgressDetails,
version: i32,
) -> *mut Rdb_TableDetails;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub fn OH_Rdb_CloudSync(
store: *mut OH_Rdb_Store,
mode: Rdb_SyncMode,
tables: *mut *const ::core::ffi::c_char,
count: u32,
observer: *const Rdb_ProgressObserver,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub fn OH_Rdb_SubscribeAutoSyncProgress(
store: *mut OH_Rdb_Store,
observer: *const Rdb_ProgressObserver,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub fn OH_Rdb_UnsubscribeAutoSyncProgress(
store: *mut OH_Rdb_Store,
observer: *const Rdb_ProgressObserver,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_Rdb_LockRow(
store: *mut OH_Rdb_Store,
predicates: *mut OH_Predicates,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_Rdb_UnlockRow(
store: *mut OH_Rdb_Store,
predicates: *mut OH_Predicates,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_Rdb_QueryLockedRow(
store: *mut OH_Rdb_Store,
predicates: *mut OH_Predicates,
columnNames: *const *const ::core::ffi::c_char,
length: ::core::ffi::c_int,
) -> *mut OH_Cursor;
#[cfg(feature = "api-18")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-18")))]
pub fn OH_Rdb_CreateTransaction(
store: *mut OH_Rdb_Store,
options: *const OH_RDB_TransOptions,
trans: *mut *mut OH_Rdb_Transaction,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_Rdb_Attach(
store: *mut OH_Rdb_Store,
config: *const OH_Rdb_ConfigV2,
attachName: *const ::core::ffi::c_char,
waitTime: i64,
attachedNumber: *mut usize,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_Rdb_Detach(
store: *mut OH_Rdb_Store,
attachName: *const ::core::ffi::c_char,
waitTime: i64,
attachedNumber: *mut usize,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub fn OH_Rdb_SetLocale(
store: *mut OH_Rdb_Store,
locale: *const ::core::ffi::c_char,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-22")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-22")))]
pub fn OH_Rdb_RegisterCorruptedHandler(
config: *const OH_Rdb_ConfigV2,
context: *mut ::core::ffi::c_void,
handler: Rdb_CorruptedHandler,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-22")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-22")))]
pub fn OH_Rdb_UnregisterCorruptedHandler(
config: *const OH_Rdb_ConfigV2,
context: *mut ::core::ffi::c_void,
handler: Rdb_CorruptedHandler,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-22")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-22")))]
pub fn OH_Rdb_RekeyEx(
store: *mut OH_Rdb_Store,
param: *mut OH_Rdb_CryptoParam,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub fn OH_Rdb_BatchInsertWithReturning(
store: *mut OH_Rdb_Store,
table: *const ::core::ffi::c_char,
rows: *const OH_Data_VBuckets,
resolution: Rdb_ConflictResolution,
context: *mut OH_RDB_ReturningContext,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub fn OH_Rdb_UpdateWithReturning(
store: *mut OH_Rdb_Store,
row: *mut OH_VBucket,
predicates: *mut OH_Predicates,
resolution: Rdb_ConflictResolution,
context: *mut OH_RDB_ReturningContext,
) -> ::core::ffi::c_int;
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub fn OH_Rdb_DeleteWithReturning(
store: *mut OH_Rdb_Store,
predicates: *mut OH_Predicates,
context: *mut OH_RDB_ReturningContext,
) -> ::core::ffi::c_int;
}