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

step

step( 
[ x_steps ] 
)

Description

Steps into functions and executes a given number of SKILL functions. 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.

The number of steps defaults to 1 if there is no argument given. After completing x_steps, step re-enters the break handler before executing its next function, as long as the program has not finished. You cannot step inside functions that are read-protected.

Arguments

x_steps

Number of SKILL commands to execute.

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
1> (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
stopped at line 4 in file /tmp/color.il
before evaluating if(memq(color colorList) printf("color %s initialized"...
Debug 2> step
stopped at line 4 in file /tmp/color.il
before evaluating memq(color colorList)
Debug 2> next
stopped at line 5 in file /tmp/color.il
before evaluating printf("color %s initialized" get(object 'name))
Debug 2> step
stopped at line 5 in file /tmp/color.il
before evaluating get(object 'name)

Related Topics

breakpt

cont, continue

dump

next

stepend

stepout

unbreakpt

where


Return to top
 ⠀
X