Trait polars_lazy::prelude::AnonymousScan

pub trait AnonymousScan: Send + Sync {
    // Required methods
    fn as_any(&self) -> &(dyn Any + 'static);
    fn scan(
        &self,
        scan_opts: AnonymousScanArgs
    ) -> Result<DataFrame, PolarsError>;

    // Provided methods
    fn schema(
        &self,
        _infer_schema_length: Option<usize>
    ) -> Result<Arc<Schema>, PolarsError> { ... }
    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 + 'static)

fn scan(&self, scan_opts: AnonymousScanArgs) -> Result<DataFrame, PolarsError>

Creates a DataFrame from the supplied function & scan options.

Provided Methods§

fn schema( &self, _infer_schema_length: Option<usize> ) -> Result<Arc<Schema>, PolarsError>

function to supply the schema. Allows for an optional infer schema argument for data sources with dynamic schemas

fn allows_predicate_pushdown(&self) -> bool

specify if the scan provider should allow predicate pushdowns

Defaults to false

fn allows_projection_pushdown(&self) -> bool

specify if the scan provider should allow projection pushdowns

Defaults to false

fn allows_slice_pushdown(&self) -> bool

specify if the scan provider should allow slice pushdowns

Defaults to false

Trait Implementations§

§

impl Debug for dyn AnonymousScan

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more

Implementors§

source§

impl AnonymousScan for LazyJsonLineReader

Available on crate feature json only.
§

impl<F> AnonymousScan for F
where F: Fn(AnonymousScanArgs) -> Result<DataFrame, PolarsError> + Send + Sync,