Class DebugStepper
java.lang.Object
net.covers1624.coffeegrinder.debug.DebugStepper
- All Implemented Interfaces:
Stepper
A content tracing
Stepper implementation.
Created by covers1624 on 13/5/21.
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.covers1624.coffeegrinder.debug.Stepper
Stepper.CodeContext, Stepper.Instance -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddControlFlowGraph(String name, ControlFlowNode cfNode) voidAdd a step with a text info blob.voidAdd a step with a 2 part info blob, rendered as a diff.voidAdd a step wth a 2 part info blob.voidaddVariableLivenessGraph(String name, VariableLivenessGraph graph) voidbegin(DebugPrintOptions opts, int stopAtStep) voidfinish()getOpts()Get theDebugPrintOptionsfor this stepper.getRoots()booleanvoidpopStep()Stops a transformation step.voidStops a non-content step.voidStarts a step in the current context.voidpushStep(String name, StepContextType contextType) Starts a step in the current context.voidpushStep(String name, StepContextType contextType, Stepper.CodeContext context) Starts a step in the current context.voidpushTiming(String name) Starts a non-content step.voidtopLevelStep(String name, StepContextType contextType, Stepper.CodeContext context, Runnable r) Starts a top-level step.
-
Field Details
-
current
-
-
Constructor Details
-
DebugStepper
public DebugStepper()
-
-
Method Details
-
begin
-
finish
public void finish() -
getOpts
Description copied from interface:StepperGet theDebugPrintOptionsfor this stepper.- Specified by:
getOptsin interfaceStepper- Returns:
- The
DebugPrintOptions.
-
pushStep
Description copied from interface:StepperStarts a step in the current context. -
pushStep
Description copied from interface:StepperStarts a step in the current context. -
pushStep
Description copied from interface:StepperStarts a step in the current context. -
popStep
public void popStep()Description copied from interface:StepperStops a transformation step. -
topLevelStep
public void topLevelStep(String name, StepContextType contextType, Stepper.CodeContext context, Runnable r) Description copied from interface:StepperStarts a top-level step.If the given runnable throws an exception, will correctly unwind the stepper tree state and attribute the error to the currently executing step.
- Specified by:
topLevelStepin interfaceStepper- Parameters:
name- A descriptive name for the step.r- Runnable wrapper for exception tracking.
-
pushTiming
Description copied from interface:StepperStarts a non-content step.- Specified by:
pushTimingin interfaceStepper- Parameters:
name- The name.
-
popTiming
public void popTiming()Description copied from interface:StepperStops a non-content step. -
addInfo
Description copied from interface:StepperAdd a step with a text info blob. -
addInfo
Description copied from interface:StepperAdd a step with a 2 part info blob, rendered as a diff. -
addInfoDiff
Description copied from interface:StepperAdd a step wth a 2 part info blob.- Specified by:
addInfoDiffin interfaceStepper- Parameters:
name- The name.left- The left info blob.right- The right info blob.
-
addVariableLivenessGraph
- Specified by:
addVariableLivenessGraphin interfaceStepper
-
addControlFlowGraph
- Specified by:
addControlFlowGraphin interfaceStepper
-
isEnabled
public boolean isEnabled() -
getRoots
-