MCPcopy Create free account
hub / github.com/apache/datafusion / create_file_opener

Method create_file_opener

datafusion/datasource-csv/src/source.rs:244–262  ·  view source on GitHub ↗
(
        &self,
        object_store: Arc<dyn ObjectStore>,
        base_config: &FileScanConfig,
        partition_index: usize,
    )

Source from the content-addressed store, hash-verified

242
243impl FileSource for CsvSource {
244 fn create_file_opener(
245 &self,
246 object_store: Arc<dyn ObjectStore>,
247 base_config: &FileScanConfig,
248 partition_index: usize,
249 ) -> Result<Arc<dyn FileOpener>> {
250 let mut opener = Arc::new(CsvOpener {
251 config: Arc::new(self.clone()),
252 file_compression_type: base_config.file_compression_type,
253 object_store,
254 partition_index,
255 }) as Arc<dyn FileOpener>;
256 opener = ProjectionOpener::try_new(
257 self.projection.clone(),
258 Arc::clone(&opener),
259 self.table_schema.file_schema(),
260 )?;
261 Ok(opener)
262 }
263
264 fn table_schema(&self) -> &TableSchema {
265 &self.table_schema

Callers

nothing calls this directly

Calls 3

newFunction · 0.85
cloneMethod · 0.45
file_schemaMethod · 0.45

Tested by

no test coverage detected