Struct veilid_core::TableDB
source · pub struct TableDB { /* private fields */ }
Implementations§
source§impl TableDB
impl TableDB
sourcepub fn get_column_count(&self) -> VeilidAPIResult<u32>
pub fn get_column_count(&self) -> VeilidAPIResult<u32>
Get the total number of columns in the TableDB Not the number of columns that were opened, rather the total number that could be opened
sourcepub async fn get_keys(&self, col: u32) -> VeilidAPIResult<Vec<Vec<u8>>>
pub async fn get_keys(&self, col: u32) -> VeilidAPIResult<Vec<Vec<u8>>>
Get the list of keys in a column of the TableDAB
sourcepub fn transact(&self) -> TableDBTransaction
pub fn transact(&self) -> TableDBTransaction
Start a TableDB write transaction. The transaction object must be committed or rolled back before dropping.
sourcepub async fn store(
&self,
col: u32,
key: &[u8],
value: &[u8]
) -> VeilidAPIResult<()>
pub async fn store( &self, col: u32, key: &[u8], value: &[u8] ) -> VeilidAPIResult<()>
Store a key with a value in a column in the TableDB. Performs a single transaction immediately.
sourcepub async fn store_json<T>(
&self,
col: u32,
key: &[u8],
value: &T
) -> VeilidAPIResult<()>where
T: Serialize,
pub async fn store_json<T>(
&self,
col: u32,
key: &[u8],
value: &T
) -> VeilidAPIResult<()>where
T: Serialize,
Store a key in json format with a value in a column in the TableDB. Performs a single transaction immediately.
sourcepub async fn load(
&self,
col: u32,
key: &[u8]
) -> VeilidAPIResult<Option<Vec<u8>>>
pub async fn load( &self, col: u32, key: &[u8] ) -> VeilidAPIResult<Option<Vec<u8>>>
Read a key from a column in the TableDB immediately.
sourcepub async fn load_json<T>(
&self,
col: u32,
key: &[u8]
) -> VeilidAPIResult<Option<T>>where
T: for<'de> Deserialize<'de>,
pub async fn load_json<T>(
&self,
col: u32,
key: &[u8]
) -> VeilidAPIResult<Option<T>>where
T: for<'de> Deserialize<'de>,
Read an serde-json key from a column in the TableDB immediately
sourcepub async fn delete(
&self,
col: u32,
key: &[u8]
) -> VeilidAPIResult<Option<Vec<u8>>>
pub async fn delete( &self, col: u32, key: &[u8] ) -> VeilidAPIResult<Option<Vec<u8>>>
Delete key with from a column in the TableDB
sourcepub async fn delete_json<T>(
&self,
col: u32,
key: &[u8]
) -> VeilidAPIResult<Option<T>>where
T: for<'de> Deserialize<'de>,
pub async fn delete_json<T>(
&self,
col: u32,
key: &[u8]
) -> VeilidAPIResult<Option<T>>where
T: for<'de> Deserialize<'de>,
Delete serde-json key with from a column in the TableDB
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TableDB
impl !RefUnwindSafe for TableDB
impl Send for TableDB
impl Sync for TableDB
impl Unpin for TableDB
impl !UnwindSafe for TableDB
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more