Struct rings_node::prelude::PersistenceStorage
source · pub struct PersistenceStorage { /* private fields */ }Expand description
StorageInstance struct
Implementations§
source§impl KvStorage
impl KvStorage
sourcepub async fn new_with_cap_and_path<P>(
cap: usize,
path: P
) -> impl Future<Output = Result<KvStorage, Error>>where
P: AsRef<Path>,
pub async fn new_with_cap_and_path<P>(
cap: usize,
path: P
) -> impl Future<Output = Result<KvStorage, Error>>where
P: AsRef<Path>,
New KvStorage
- cap: max_size in bytes
- path: db file location
sourcepub async fn new_with_cap(
cap: usize
) -> impl Future<Output = Result<KvStorage, Error>>
pub async fn new_with_cap(
cap: usize
) -> impl Future<Output = Result<KvStorage, Error>>
New KvStorage with default path
default_path is ./
sourcepub async fn new_with_path<P>(
path: P
) -> impl Future<Output = Result<KvStorage, Error>>where
P: AsRef<Path>,
pub async fn new_with_path<P>(
path: P
) -> impl Future<Output = Result<KvStorage, Error>>where
P: AsRef<Path>,
New KvStorage with default capacity and specific path
- path: db file location
sourcepub async fn new() -> impl Future<Output = Result<KvStorage, Error>>
pub async fn new() -> impl Future<Output = Result<KvStorage, Error>>
New KvStorage
- default capacity 200 megabytes
- default path
./data
sourcepub fn random_path(prefix: &str) -> String
pub fn random_path(prefix: &str) -> String
Generate a random path
Trait Implementations§
source§impl PersistenceStorageOperation for KvStorage
impl PersistenceStorageOperation for KvStorage
source§fn total_size<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
KvStorage: 'async_trait,
fn total_size<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
KvStorage: 'async_trait,
Get the storage size, if applicable.
source§fn prune<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
KvStorage: 'async_trait,
fn prune<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
KvStorage: 'async_trait,
Prune database storage
source§fn clear<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
KvStorage: 'async_trait,
fn clear<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
KvStorage: 'async_trait,
Clear Storage.
All
Entry will be deleted.source§fn count<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
KvStorage: 'async_trait,
fn count<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
KvStorage: 'async_trait,
Get the current storage usage, if applicable.
Auto Trait Implementations§
impl !RefUnwindSafe for KvStorage
impl Send for KvStorage
impl Sync for KvStorage
impl Unpin for KvStorage
impl !UnwindSafe for KvStorage
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T> AsTaggedExplicit<'a> for Twhere
T: 'a,
impl<'a, T> AsTaggedExplicit<'a> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T> AsTaggedImplicit<'a> for Twhere
T: 'a,
impl<'a, T> AsTaggedImplicit<'a> for Twhere
T: 'a,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<K, V, I> PersistenceStorageReadAndWrite<K, V> for Iwhere
K: ToString + FromStr + Sync + Send,
V: DeserializeOwned + Serialize + Sync + Send,
I: PersistenceStorageOperation + Sync + KvStorageBasic,
impl<K, V, I> PersistenceStorageReadAndWrite<K, V> for Iwhere
K: ToString + FromStr + Sync + Send,
V: DeserializeOwned + Serialize + Sync + Send,
I: PersistenceStorageOperation + Sync + KvStorageBasic,
source§fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 K
) -> Pin<Box<dyn Future<Output = Result<V, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
'life1: 'async_trait,
I: 'async_trait,
fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 K
) -> Pin<Box<dyn Future<Output = Result<V, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
'life1: 'async_trait,
I: 'async_trait,
Get a cache entry by key.
source§fn put<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
key: &'life1 K,
value: &'life2 V
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
I: 'async_trait,
fn put<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
key: &'life1 K,
value: &'life2 V
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
I: 'async_trait,
Put entry in the cache under key.