pub trait Debugger {
fn scope<R, Info: FnOnce() -> ParserInfo, F: FnOnce(&mut Self) -> R>(
&mut self,
info: Info,
f: F
) -> R;
fn emit_with<F: FnOnce() -> ParseEvent>(&mut self, f: F);
fn invoke<I: Clone, O, P: Parser<I, O> + ?Sized>(
&mut self,
parser: &P,
stream: &mut Stream<'_, I, <P::Error as Error<I>>::Span>
) -> (Vec<Located<I, P::Error>>, Result<(O, Option<Located<I, P::Error>>), Located<I, P::Error>>);
}
👎 Deprecated:
This trait is excluded from the semver guarantees of chumsky. If you decide to use it, broken builds are your fault.
Expand description
A trait implemented by parser debuggers.
Required Methods
👎 Deprecated:
This trait is excluded from the semver guarantees of chumsky. If you decide to use it, broken builds are your fault.
Create a new debugging scope.
fn emit_with<F: FnOnce() -> ParseEvent>(&mut self, f: F)
fn emit_with<F: FnOnce() -> ParseEvent>(&mut self, f: F)
👎 Deprecated:
This trait is excluded from the semver guarantees of chumsky. If you decide to use it, broken builds are your fault.
Emit a parse event, if the debugger supports them.
👎 Deprecated:
This trait is excluded from the semver guarantees of chumsky. If you decide to use it, broken builds are your fault.
Invoke the given parser with a mode specific to this debugger.