debug library

This package contains some simple debugging tools.

Classes

ProfileFrame
Encapsulates the data around a parser profile.
ProgressFrame
Encapsulates the data around a parser progress.
TraceEvent
Encapsulates the entry and exit data around a parser trace.

Functions

profile<T>(Parser<T> root, {VoidCallback<ProfileFrame> output = print, Predicate<Parser>? predicate}) Parser<T>
Returns a transformed Parser that when being used measures the activation count and total time of each parser.
progress<T>(Parser<T> root, {VoidCallback<ProgressFrame> output = print, Predicate<Parser>? predicate}) Parser<T>
Returns a transformed Parser that when being used to read input visually prints its progress while progressing.
trace<T>(Parser<T> root, {VoidCallback<TraceEvent> output = print, Predicate<Parser>? predicate}) Parser<T>
Returns a transformed Parser that when being used to read input prints a trace of all activated parsers and their respective parse results.