Trait litcheck_filecheck::pattern::matcher::MatcherMut
source · pub trait MatcherMut: Debug + Spanned {
// Required method
fn try_match_mut<'input, 'context, C>(
&self,
input: Input<'input>,
context: &mut C
) -> DiagResult<MatchResult<'input>>
where C: Context<'input, 'context> + ?Sized;
}
Expand description
This trait is used for match patterns which have side effects on the current [MatchContext] when successful.
These matchers may bind new variables, push operands or otherwise modify the match context. Implementors should ensure that such effects are only applied if a match succeeds however, to avoid polluting the match context.
Required Methods§
sourcefn try_match_mut<'input, 'context, C>(
&self,
input: Input<'input>,
context: &mut C
) -> DiagResult<MatchResult<'input>>where
C: Context<'input, 'context> + ?Sized,
fn try_match_mut<'input, 'context, C>(
&self,
input: Input<'input>,
context: &mut C
) -> DiagResult<MatchResult<'input>>where
C: Context<'input, 'context> + ?Sized,
Search for a match in the given input buffer
The first match found is returned.
Object Safety§
This trait is not object safe.