(
&self,
projection: &ProjectionExprs,
)
| 141 | } |
| 142 | |
| 143 | fn try_pushdown_projection( |
| 144 | &self, |
| 145 | projection: &ProjectionExprs, |
| 146 | ) -> Result<Option<Arc<dyn FileSource>>> { |
| 147 | let mut source = self.clone(); |
| 148 | let new_projection = self.projection.source.try_merge(projection)?; |
| 149 | let split_projection = |
| 150 | SplitProjection::new(self.table_schema.file_schema(), &new_projection); |
| 151 | source.projection = split_projection; |
| 152 | Ok(Some(Arc::new(source))) |
| 153 | } |
| 154 | |
| 155 | fn projection(&self) -> Option<&ProjectionExprs> { |
| 156 | Some(&self.projection.source) |
nothing calls this directly
no test coverage detected