Skip to main content

LocyPredicate

Trait LocyPredicate 

Source
pub trait LocyPredicate: Send + Sync {
    // Required methods
    fn signature(&self) -> &PredSignature;
    fn evaluate(
        &self,
        args: &[ColumnarValue],
        rows: usize,
    ) -> Result<BooleanArray, FnError>;

    // Provided method
    fn evaluate_fuzzy(
        &self,
        _args: &[ColumnarValue],
        _rows: usize,
    ) -> Option<Result<Float64Array, FnError>> { ... }
}
Expand description

A Locy predicate plugin — boolean (or fuzzy) column over inputs.

Required Methods§

Source

fn signature(&self) -> &PredSignature

Static signature.

Source

fn evaluate( &self, args: &[ColumnarValue], rows: usize, ) -> Result<BooleanArray, FnError>

Evaluate the predicate over a batch of inputs to a boolean column.

§Errors

Returns FnError if the predicate cannot be evaluated on this input.

Provided Methods§

Source

fn evaluate_fuzzy( &self, _args: &[ColumnarValue], _rows: usize, ) -> Option<Result<Float64Array, FnError>>

Optional fuzzy evaluation — Some(scores) for predicates that participate in PROB chains, None otherwise.

§Errors

Returns FnError if fuzzy evaluation is unsupported or fails.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§