pub trait QueryTransaction: MultiVersionQueryTransaction {
type SingleVersionQuery<'a>: SingleVersionQueryTransaction
where Self: 'a;
type CdcQuery<'a>: CdcQueryTransaction
where Self: 'a;
// Required methods
fn begin_single_query(&self) -> Result<Self::SingleVersionQuery<'_>>;
fn begin_cdc_query(&self) -> Result<Self::CdcQuery<'_>>;
// Provided methods
fn with_single_query<F, R>(&self, f: F) -> Result<R>
where F: FnOnce(&mut Self::SingleVersionQuery<'_>) -> Result<R> { ... }
fn with_cdc_query<F, R>(&self, f: F) -> Result<R>
where F: FnOnce(&mut Self::CdcQuery<'_>) -> Result<R> { ... }
}Required Associated Types§
type SingleVersionQuery<'a>: SingleVersionQueryTransaction where Self: 'a
type CdcQuery<'a>: CdcQueryTransaction where Self: 'a
Required Methods§
fn begin_single_query(&self) -> Result<Self::SingleVersionQuery<'_>>
fn begin_cdc_query(&self) -> Result<Self::CdcQuery<'_>>
Provided Methods§
fn with_single_query<F, R>(&self, f: F) -> Result<R>
fn with_cdc_query<F, R>(&self, f: F) -> Result<R>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.