GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/elisp/Source-Breakpoints.html ・ emacs-doc.conao3.com

19.2.6.3 ソースブレークポイント

定義内のすべてのブレークポイントは、再インストルメンテーションを行うたびに消去されます。消去されないブレークポイントを作成したい場合は、ソースブレークポイントを記述できます。これは単に、ソースコード内の関数 edebug を呼び出すものです。もちろん、このような呼び出しを条件付きにすることも可能です。例えば、fac 関数に以下のように1行目を挿入すれば、引数が0に達した時点で停止します:

(defun fac (n)
  (if (= n 0) (edebug))
  (if (< 0 n)
      (* n (fac (1- n)))
    1))

fac の定義にインストルメンテーションが施され、関数が呼び出されると、edebug への呼び出しがブレークポイントとして機能します。実行モード(Edebug 実行モードを参照)に応じて、Edebug はそこで停止または一時停止します。

edebug が呼び出された際にインストルメンテーションされたコードが実行されていない場合、その関数は debug を呼び出します。