changeset 46784:546f1e0c46c9

(edebug-eval-top-level-form): Use eval-expression.
author Richard M. Stallman <rms@gnu.org>
date Fri, 02 Aug 2002 18:00:18 +0000
parents a4e9eb2530cb
children 28581ef4c224
files lisp/emacs-lisp/edebug.el
diffstat 1 files changed, 17 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/emacs-lisp/edebug.el	Fri Aug 02 17:59:22 2002 +0000
+++ b/lisp/emacs-lisp/edebug.el	Fri Aug 02 18:00:18 2002 +0000
@@ -531,12 +531,24 @@
 
 ;;;###autoload
 (defun edebug-eval-top-level-form ()
-  "Evaluate a top level form, such as a defun or defmacro.
-This is like `eval-defun', but the code is always instrumented for Edebug.
-Print its name in the minibuffer and leave point where it is,
-or if an error occurs, leave point after it with mark at the original point."
+  "Evaluate the top level form point is in, stepping through with Edebug.
+This is like `eval-defun' except that it steps the code for Edebug
+before evaluating it.  It displays the value in the echo area
+using `eval-expression' (which see).
+
+If you do this on a function definition
+such as a defun or defmacro, it defines the function and instruments
+its definition for Edebug, so it will do Edebug stepping when called
+later.  It displays `Edebug: FUNCTION' in the echo area to indicate
+that FUNCTION is now instrumented for Edebug.
+
+If the current defun is actually a call to `defvar' or `defcustom',
+evaluating it this way resets the variable using its initial value
+expression even if the variable already has some other value.
+\(Normally `defvar' and `defcustom' do not alter the value if there
+already is one.)"
   (interactive)
-  (eval 
+  (eval-expression
    ;; Bind edebug-all-forms only while reading, not while evalling
    ;; but this causes problems while edebugging edebug.
    (let ((edebug-all-forms t)