lance_file/v2/io.rs
1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: Copyright The Lance Authors
3
4use futures::{future::BoxFuture, FutureExt};
5use lance_encoding::EncodingsIo;
6use lance_io::scheduler::FileScheduler;
7
8#[derive(Debug)]
9pub struct LanceEncodingsIo(pub FileScheduler);
10
11impl EncodingsIo for LanceEncodingsIo {
12 fn submit_request(
13 &self,
14 range: Vec<std::ops::Range<u64>>,
15 priority: u64,
16 ) -> BoxFuture<'static, lance_core::Result<Vec<bytes::Bytes>>> {
17 self.0.submit_request(range, priority).boxed()
18 }
19}