Dataset length

This commit is contained in:
2026-03-23 14:12:11 -07:00
parent 4737acbcf4
commit 9008a248c1
4 changed files with 20 additions and 0 deletions

View File

@@ -112,6 +112,11 @@ impl DirDataSource {
}
impl DataSource for Arc<DirDataSource> {
#[expect(clippy::expect_used)]
fn len(&self) -> usize {
self.index.get().expect("index should be initialized").len()
}
#[expect(clippy::expect_used)]
async fn get(&self, key: &str) -> Result<Option<Item>, std::io::Error> {
return Ok(self

View File

@@ -8,6 +8,9 @@ pub mod misc;
/// A read-only set of [Item]s.
pub trait DataSource {
/// Get the number of items in this source
fn len(&self) -> usize;
/// Get an item from this datasource
fn get(
&self,

View File

@@ -163,6 +163,11 @@ impl S3DataSource {
}
impl DataSource for Arc<S3DataSource> {
#[expect(clippy::expect_used)]
fn len(&self) -> usize {
self.index.get().expect("index should be initialized").len()
}
#[expect(clippy::expect_used)]
async fn get(&self, key: &str) -> Result<Option<Item>, std::io::Error> {
return Ok(self