Skip to main content

BatchNanExt

Trait BatchNanExt 

Source
pub trait BatchNanExt: Indicator<Input = f64, Output = f64> {
    // Provided method
    fn batch_nan(&mut self, inputs: &[f64]) -> Vec<f64> { ... }
}
Expand description

Fast batch for scalar f64 -> f64 indicators.

The generic BatchExt::batch returns Vec<Option<f64>> — 16 bytes per element (no niche fits an arbitrary f64), which a caller wanting a dense f64 series then has to walk a second time to map warmup Nones to NaN. This skips both the wide intermediate and the second pass: one allocation, one pass, warmup encoded as NaN. The default body is bit-identical to replaying update; indicators with a vectorizable closed form override it with an inherent batch_nan of the same name, which wins method resolution over this trait default.

Provided Methods§

Source

fn batch_nan(&mut self, inputs: &[f64]) -> Vec<f64>

One f64 per input, warmup positions filled with NaN.

Dyn Compatibility§

This trait is dyn compatible.

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

Implementors§

Source§

impl<T: Indicator<Input = f64, Output = f64>> BatchNanExt for T