package frontend
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