スタック要素とは、トレース スタック内の個々のレコードまたは行項目の履歴です。
スタックに表示される要素は 5 種類あります。
level (function-name {argument1} ...)
このリストの中の引数には、ローカル パラメータ名ではなく、実際に関数に渡された値が示されます。
level :keyword - {optional-data}
keyword には、フレームのタイプが示されます。optional-data には、プログラムの状態に関する追加情報が示されます。
level (function-form ...)
たとえば、Visual LISP に次のコードをロードし、コードのコメントで示されるようにブレークポイントを設定し、TRACE-10-DEEP コマンドを実行します。
(defun stack-tracing (indexVal maxVal) (princ "At the top of the stack-tracing function, indexVal = ") (princ indexVal) (if (< indexVal maxVal) (stack-tracing (1+ indexVal) maxVal) (princ "Reached the maximum depth.") ; place a breakpoint ; at the beginning of ; this line ) ) (defun c:trace-10-deep () (terpri) (stack-tracing 1 10) )
上記のサンプル コードの[トレース スタック]ウィンドウは、設定されたブレークポイントでプログラムの実行が中断されたとき、次の図のようになります。