Expand description
Moves timeseries by length
items forward
It’s just a simple method-like wrapper for Window<T>
Parameters
Has a single parameter length
: PeriodType
length
should be > 0
Input type
Input type is any T: Copy + std::fmt::Debug
Output type
Output type is the same as input type
Examples
use yata::prelude::*;
use yata::methods::Past;
// Move of length=3
let mut past = Past::new(3, &1.0).unwrap();
past.next(&1.0);
past.next(&2.0);
past.next(&3.0);
assert_eq!(past.next(&4.0), 1.0);
assert_eq!(past.next(&5.0), 2.0);
assert_eq!(past.next(&6.0), 3.0);
Performance
O(1)
See also
Trait Implementations
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
type Params = PeriodType
type Params = PeriodType
Method parameters
type Input = T
type Input = T
Input value type
type Output = T
type Output = T
Output value type
Static method for creating an instance of the method with given parameters
and initial value
(simply first input value)
Generates next output value based on the given input value
Creates an instance of the method with given parameters
and initial value
, wrapped by historical data holder
Creates an instance of the method with given parameters
and initial value
, wrapped by last produced value holder
Returns memory size of the method (size, align)
Iterates the Method
over the given inputs
slice and returns Vec
of output values. Read more
Applies method to the sequence in-place.
Creates new Method
instance and iterates it over the given inputs
slice and returns Vec
of output values. Read more
Creates new Method
instance and applies it to the sequence
.
Creates a function from the Method
instance
Auto Trait Implementations
impl<T> RefUnwindSafe for Past<T> where
T: RefUnwindSafe,
impl<T> UnwindSafe for Past<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more