pub struct PatternStateMachine { /* private fields */ }Expand description
Generic pattern state machine for event sequence detection
Implementations§
Source§impl PatternStateMachine
impl PatternStateMachine
Sourcepub fn register(&mut self, name: &str, sequence: PatternSequence) -> &mut Self
pub fn register(&mut self, name: &str, sequence: PatternSequence) -> &mut Self
Register a pattern
Sourcepub fn process(
&mut self,
timestamp: DateTime<Utc>,
fields: HashMap<String, ValueWord>,
) -> Result<()>
pub fn process( &mut self, timestamp: DateTime<Utc>, fields: HashMap<String, ValueWord>, ) -> Result<()>
Process an event
Sourcepub fn take_matches(&mut self) -> Vec<PatternMatch>
pub fn take_matches(&mut self) -> Vec<PatternMatch>
Take completed matches
Sourcepub fn active_count(&self) -> usize
pub fn active_count(&self) -> usize
Get count of active match states
Trait Implementations§
Auto Trait Implementations§
impl Freeze for PatternStateMachine
impl RefUnwindSafe for PatternStateMachine
impl Send for PatternStateMachine
impl Sync for PatternStateMachine
impl Unpin for PatternStateMachine
impl UnsafeUnpin for PatternStateMachine
impl UnwindSafe for PatternStateMachine
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
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