pub trait AnonymousScan: Send + Sync {
// Required methods
fn as_any(&self) -> &dyn Any;
fn scan(&self, scan_opts: AnonymousScanArgs) -> PolarsResult<DataFrame>;
// Provided methods
fn next_batch(
&self,
scan_opts: AnonymousScanArgs,
) -> PolarsResult<Option<DataFrame>> { ... }
fn schema(
&self,
_infer_schema_length: Option<usize>,
) -> PolarsResult<SchemaRef> { ... }
fn allows_predicate_pushdown(&self) -> bool { ... }
fn allows_projection_pushdown(&self) -> bool { ... }
fn allows_slice_pushdown(&self) -> bool { ... }
}
Required Methods§
fn as_any(&self) -> &dyn Any
Sourcefn scan(&self, scan_opts: AnonymousScanArgs) -> PolarsResult<DataFrame>
fn scan(&self, scan_opts: AnonymousScanArgs) -> PolarsResult<DataFrame>
Creates a DataFrame from the supplied function & scan options.
Provided Methods§
Sourcefn next_batch(
&self,
scan_opts: AnonymousScanArgs,
) -> PolarsResult<Option<DataFrame>>
fn next_batch( &self, scan_opts: AnonymousScanArgs, ) -> PolarsResult<Option<DataFrame>>
Produce the next batch Polars can consume. Implement this method to get proper streaming support.
Sourcefn schema(&self, _infer_schema_length: Option<usize>) -> PolarsResult<SchemaRef>
fn schema(&self, _infer_schema_length: Option<usize>) -> PolarsResult<SchemaRef>
function to supply the schema. Allows for an optional infer schema argument for data sources with dynamic schemas
Sourcefn allows_predicate_pushdown(&self) -> bool
fn allows_predicate_pushdown(&self) -> bool
Specify if the scan provider should allow predicate pushdowns.
Defaults to false
Sourcefn allows_projection_pushdown(&self) -> bool
fn allows_projection_pushdown(&self) -> bool
Specify if the scan provider should allow projection pushdowns.
Defaults to false
Sourcefn allows_slice_pushdown(&self) -> bool
fn allows_slice_pushdown(&self) -> bool
Specify if the scan provider should allow slice pushdowns.
Defaults to false