pub trait LocalInvalidation: MaybeSend + MaybeSync {
// Required method
fn invalidate<'a>(
&'a self,
request: &'a Request,
cursor: u32,
budget: &'a SliceBudget,
) -> BoxFuture<'a, Result<Option<u32>, StoreError>>;
// Provided method
fn invalidate_checkpoint<'a>(
&'a self,
request: &'a Request,
checkpoint: &'a [u8],
budget: &'a SliceBudget,
) -> BoxFuture<'a, Result<Option<Vec<u8>>, StoreError>> { ... }
}Expand description
Checkpointed local cache invalidation, including namespace enumeration.
Required Methods§
Sourcefn invalidate<'a>(
&'a self,
request: &'a Request,
cursor: u32,
budget: &'a SliceBudget,
) -> BoxFuture<'a, Result<Option<u32>, StoreError>>
fn invalidate<'a>( &'a self, request: &'a Request, cursor: u32, budget: &'a SliceBudget, ) -> BoxFuture<'a, Result<Option<u32>, StoreError>>
Charge enumeration and deletes before doing them. None means complete;
Some(cursor) resumes at the next operation in another alarm.
Provided Methods§
Sourcefn invalidate_checkpoint<'a>(
&'a self,
request: &'a Request,
checkpoint: &'a [u8],
budget: &'a SliceBudget,
) -> BoxFuture<'a, Result<Option<Vec<u8>>, StoreError>>
fn invalidate_checkpoint<'a>( &'a self, request: &'a Request, checkpoint: &'a [u8], budget: &'a SliceBudget, ) -> BoxFuture<'a, Result<Option<Vec<u8>>, StoreError>>
Opaque durable position for catalog traversal; legacy local adapters use a u32.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".