pub struct EffectTrace { /* private fields */ }Expand description
An effect trace that collects effects during parsing.
Effect traces are composable and can be filtered or transformed.
Implementations§
Source§impl EffectTrace
impl EffectTrace
Sourcepub fn record(&mut self, effect: ParserEffect)
pub fn record(&mut self, effect: ParserEffect)
Record an effect in the trace.
If the effect is terminal (FailClosed), subsequent effects are still recorded but the trace is marked as terminated.
Sourcepub fn is_terminated(&self) -> bool
pub fn is_terminated(&self) -> bool
Returns true if the trace contains any terminal effects.
Sourcepub fn effects(&self) -> &[ParserEffect]
pub fn effects(&self) -> &[ParserEffect]
Returns a slice of all effects.
Sourcepub fn terminal(&self) -> Option<&ParserEffect>
pub fn terminal(&self) -> Option<&ParserEffect>
Returns the terminal effect, if any.
Sourcepub fn filter_kind(&self, kind: ParserEffectKind) -> Vec<&ParserEffect>
pub fn filter_kind(&self, kind: ParserEffectKind) -> Vec<&ParserEffect>
Filter effects by kind.
Sourcepub fn count_kind(&self, kind: ParserEffectKind) -> usize
pub fn count_kind(&self, kind: ParserEffectKind) -> usize
Count effects by kind.
Sourcepub fn warnings(&self) -> Vec<&ParserEffect>
pub fn warnings(&self) -> Vec<&ParserEffect>
Returns all warning effects.
Sourcepub fn merge(&mut self, other: EffectTrace)
pub fn merge(&mut self, other: EffectTrace)
Merge another trace into this one.
Sourcepub fn summary(&self) -> EffectTraceSummary
pub fn summary(&self) -> EffectTraceSummary
Convert to a summary for logging.
Trait Implementations§
Source§impl Clone for EffectTrace
impl Clone for EffectTrace
Source§fn clone(&self) -> EffectTrace
fn clone(&self) -> EffectTrace
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for EffectTrace
impl Debug for EffectTrace
Source§impl Default for EffectTrace
impl Default for EffectTrace
Source§fn default() -> EffectTrace
fn default() -> EffectTrace
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for EffectTrace
impl<'de> Deserialize<'de> for EffectTrace
Source§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
Source§impl PartialEq for EffectTrace
impl PartialEq for EffectTrace
Source§impl Serialize for EffectTrace
impl Serialize for EffectTrace
impl StructuralPartialEq for EffectTrace
Auto Trait Implementations§
impl Freeze for EffectTrace
impl RefUnwindSafe for EffectTrace
impl Send for EffectTrace
impl Sync for EffectTrace
impl Unpin for EffectTrace
impl UnsafeUnpin for EffectTrace
impl UnwindSafe for EffectTrace
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