Struct yata::methods::ReversalSignal
source · [−]pub struct ReversalSignal { /* private fields */ }
Expand description
Searches for reversal points over last left
+right
+1 values of type ValueType
Parameters
Has a tuple of 2 parameters (left
: PeriodType
, right
: PeriodType
)
left
should be > 0
and right
should be > 0
There is an additional restriction on parameters: left
+right
+1 should be <= PeriodType
::MAX
.
So if your PeriodType
is default u8
, then left
+right
+1 should be <= 255
Input type
Input type is ValueType
Output type
Output type is Action
use yata::prelude::*;
use yata::methods::ReversalSignal;
let s = [1.0, 2.0, 3.0, 2.0, 1.0, 1.0, 2.0];
let r = [ 0, 0, 1, 0, -1, 0, 0 ];
let mut pivot = ReversalSignal::new(2, 2, &s[0]).unwrap();
let r2: Vec<i8> = s.iter().map(|v| pivot.next(v).analog()).collect();
assert_eq!(r2, r);
Performance
O(left
+right
)
See also
Implementations
Constructs new instanceof ReversalSignal
It’s just an alias for Method::new((left, right), value)
but without parentheses of Input
tuple
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, PeriodType)
type Params = (PeriodType, PeriodType)
Method parameters
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 RefUnwindSafe for ReversalSignal
impl Send for ReversalSignal
impl Sync for ReversalSignal
impl Unpin for ReversalSignal
impl UnwindSafe for ReversalSignal
Blanket Implementations
Mutably borrows from an owned value. Read more