pub struct CompositeSignalRule {
pub name: String,
pub signal_type: String,
pub contributing_series: Vec<String>,
pub cooldown_ns: i64,
pub condition: Box<dyn Fn(&MultiSeriesContext, &AnalyticsResults) -> (bool, f64) + Send + Sync>,
}Expand description
A rule that evaluates against a multi-series context.
Fields§
§name: StringUnique name of this rule.
signal_type: StringSignal type emitted when the rule fires (e.g. “critical”).
contributing_series: Vec<String>Series that contribute to this composite signal.
cooldown_ns: i64Cooldown between firings (nanoseconds).
condition: Box<dyn Fn(&MultiSeriesContext, &AnalyticsResults) -> (bool, f64) + Send + Sync>Condition closure: receives context reference and analytics results, returns (should_fire, confidence).
Auto Trait Implementations§
impl !RefUnwindSafe for CompositeSignalRule
impl !UnwindSafe for CompositeSignalRule
impl Freeze for CompositeSignalRule
impl Send for CompositeSignalRule
impl Sync for CompositeSignalRule
impl Unpin for CompositeSignalRule
impl UnsafeUnpin for CompositeSignalRule
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more