Product Documentation
Cadence SKILL Development Reference
Product Version IC23.1, June 2023

next

next( 
[ x_steps ] 
) 

Description

Allows execution to proceed until the next expression. This function only works if executed from within a break handler and if the code you want to step through was loaded under debugMode. See installDebugger.

next reenters the break handler after completing x_step expressions, as long as the program has not finished.

You cannot execute the next function inside functions that are read-protected.

Arguments

x_steps

Number of SKILL expressions to execute at or above the current stack depth.

Value Returned

None

Examples

Suppose /tmp/color.il defines function initColor:

(defun initColor (object)
(let ((colorList '(red green yellow)) color)
(setq color (concat (get object 'color)))
(if (memq color colorList)
(printf "color %s initialized" (get object 'name)))
)
)

Try this file in debugger:

installDebugger
=> t
(sstatus sourceTracing t) ; Turns on sourceTracing
; to get line numbers.
=> t
1> load "/tmp/color.il"
=> t
1> (putprop 'object1 "green" 'color)
=> "green"
1> breakpt(initColor (entry (null object)) concat)
=> concat(initColor)
1>  (initColor 'object1)
<<< Break >>> on calling concat with args ("green")
at line 3 in file /tmp/color.il
Debug 2> next                         ; Proceeds to 'if' form
stopped at line 4 in file /tmp/color.il
before evaluating if(memq(color colorList) printf("color %s initialized"...
Debug 2> step                         ; Steps into 'if' form
stopped at line 4 in file /tmp/color.il
before evaluating memq(color colorList)
Debug 2> next                          ; Proceeds to 'printf' form
stopped at line 5 in file /tmp/color.il
before evaluating printf("color %s initialized" get(object 'name))

Related Topics

Debug Functions

breakpt

installDebugger

step


Return to top
 ⠀
X