pub trait PersyReader: Clone + Sized {
// Required methods
fn list_segments(&self) -> EIRes<Vec<(String, SegmentId)>>;
fn list_indexes(&self) -> EIRes<Vec<(String, IndexInfo)>>;
fn scan(
&self,
segment: &str,
) -> EIRes<Box<dyn Iterator<Item = (PersyId, Vec<u8>)>>>;
fn range<K, V, R>(
&self,
index_name: &str,
range: R,
) -> EIRes<Box<dyn Iterator<Item = (K, ValueIter<V>)>>>
where K: IndexType + 'static,
V: IndexType + 'static,
R: RangeBounds<K>;
}Required Methods§
fn list_segments(&self) -> EIRes<Vec<(String, SegmentId)>>
fn list_indexes(&self) -> EIRes<Vec<(String, IndexInfo)>>
fn scan( &self, segment: &str, ) -> EIRes<Box<dyn Iterator<Item = (PersyId, Vec<u8>)>>>
fn range<K, V, R>( &self, index_name: &str, range: R, ) -> EIRes<Box<dyn Iterator<Item = (K, ValueIter<V>)>>>
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.