Navigating Scripts

Merely opening and attaching the debugger to an extension does not engage interactive debugging activity. You must also perform actions within the target product that call a loaded extension's script. Only then are breakpoints hit and execution details populated. For example, in the Workbench Project tab, to invoke the callback update() for the extension DebuggerDemo, you right-click the Pre-Geometry cell in the custom Pre-Design system and select Update.

The debugger listens as the script is executed. When it encounters the first breakpoint in main.py, the debugger pauses execution, highlighting the line in yellow to indicate that it is the next statement to execute.

In the debugger toolbar, you have a button for stepping over to the next function call. Additionally, if the current breakpoint is for a method, you have buttons for stepping into the method call and then subsequently for stepping back out of the method call. You can also use the shortcut keys assigned to these buttons.

When execution of the extension is paused at a breakpoint, all functions, variables, and objects remain in memory. Using the various tabs in the debugger's lower panes, you can look at current values and review the call stack to determine if script violations or issues exist.

When you step over, into, or out of a function, the debugger automatically follows line execution. If you double-click a breakpoint, the debugger takes you to the script and line where this breakpoint is set. Similarly, when execution is paused, you can double-click an entry in the call stack to have the debugger take you to the script and corresponding line.