pub trait DataSource<A: Digest>:
DynClone
+ Debug
+ Sync
+ Send {
// Required methods
fn slice(&self, size: PartSize) -> IoResult<Option<DataSourceReader>>;
fn reset(&self) -> IoResult<()>;
fn total_size(&self) -> IoResult<Option<u64>>;
// Provided method
fn source_key(&self) -> IoResult<Option<SourceKey<A>>> { ... }
}
Expand description
Required Methods§
Sourcefn total_size(&self) -> IoResult<Option<u64>>
fn total_size(&self) -> IoResult<Option<u64>>
获取数据源大小
Provided Methods§
Sourcefn source_key(&self) -> IoResult<Option<SourceKey<A>>>
fn source_key(&self) -> IoResult<Option<SourceKey<A>>>
获取数据源 KEY
用于区分不同的数据源