package frontend
- Alphabetic
- Public
- Protected
Type Members
- sealed trait DebugFrontend extends AnyRef
A common interface for a debug frontend for a debugger to present the debug tree.
A common interface for a debug frontend for a debugger to present the debug tree. Inherit from one of the two provided subtraits to use.
Any compliant implementation that handles all nodes of a parsley.debugger.DebugTree can be used in place of any other implementation (e.g. a serialiser to JSON, a GUI, etc.).
If a frontend is reusable, one can implement it as either an
object
or aclass
, but anobject
is recommended. Either way, it should inherit ReusableFrontend.If a frontend is single-use (e.g. it has some non-reusable state), never implement it as an
object
. Always implement single-use frontends as aclass
of some sort inheriting from SingleUseFrontend.If the results of some processing of a tree are needed out of a frontend, create a frontend class that accepts some continuation parameter of
ReturnType => Unit
and call it somewhere within the implementation.- Since
4.5.0
- trait ReusableFrontend extends DebugFrontend
Signifies that the frontend inheriting from this can be used multiple times.
Signifies that the frontend inheriting from this can be used multiple times.
- Since
4.5.0
- See also
- trait SingleUseFrontend extends DebugFrontend
Signifies that the frontend inheriting from this can only be run once.
Signifies that the frontend inheriting from this can only be run once.
- Since
4.5.0
- See also
Value Members
- object ConsolePrettyPrinter extends ConsolePrettyPrinterImpl
A console pretty-printer for the debugger.
A console pretty-printer for the debugger.
It is recommended that all memory-heavy types (e.g. closures) are not stored explicitly. Consult the documentation on attaching debuggers to find out how to prevent that.
- Since
5.0.0