pub trait Shardable {
type Shard: Clone + Send + Sync;
// Required methods
fn shards(
&self,
pd_client: &Arc<impl PdClient>,
) -> BoxStream<'static, Result<(Self::Shard, RegionStore)>>;
fn apply_shard(
&mut self,
shard: Self::Shard,
store: &RegionStore,
) -> Result<()>;
}
Required Associated Types§
Required Methods§
fn shards( &self, pd_client: &Arc<impl PdClient>, ) -> BoxStream<'static, Result<(Self::Shard, RegionStore)>>
fn apply_shard(&mut self, shard: Self::Shard, store: &RegionStore) -> Result<()>
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.