Mercurial > emacs
changeset 33709:bfee926318b1
(edebug-form-spec prop): use dolist.
(define-derived-mode, define-minor-mode): Add specs.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Tue, 21 Nov 2000 21:47:25 +0000 |
parents | 7c2b5397acbc |
children | bec245584796 |
files | lisp/emacs-lisp/edebug.el |
diffstat | 1 files changed, 30 insertions(+), 25 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/emacs-lisp/edebug.el Tue Nov 21 21:44:25 2000 +0000 +++ b/lisp/emacs-lisp/edebug.el Tue Nov 21 21:47:25 2000 +0000 @@ -1624,30 +1624,28 @@ ;; user may want to define macros or functions with the same names. ;; We could use an internal obarray for these primitive specs. -(mapcar - (function (lambda (pair) - (put (car pair) 'edebug-form-spec (cdr pair)))) - '((&optional . edebug-match-&optional) - (&rest . edebug-match-&rest) - (&or . edebug-match-&or) - (form . edebug-match-form) - (sexp . edebug-match-sexp) - (body . edebug-match-body) - (&define . edebug-match-&define) - (name . edebug-match-name) - (:name . edebug-match-colon-name) - (arg . edebug-match-arg) - (def-body . edebug-match-def-body) - (def-form . edebug-match-def-form) - ;; Less frequently used: - ;; (function . edebug-match-function) - (lambda-expr . edebug-match-lambda-expr) - (¬ . edebug-match-¬) - (&key . edebug-match-&key) - (place . edebug-match-place) - (gate . edebug-match-gate) - ;; (nil . edebug-match-nil) not this one - special case it. - )) +(dolist (pair '((&optional . edebug-match-&optional) + (&rest . edebug-match-&rest) + (&or . edebug-match-&or) + (form . edebug-match-form) + (sexp . edebug-match-sexp) + (body . edebug-match-body) + (&define . edebug-match-&define) + (name . edebug-match-name) + (:name . edebug-match-colon-name) + (arg . edebug-match-arg) + (def-body . edebug-match-def-body) + (def-form . edebug-match-def-form) + ;; Less frequently used: + ;; (function . edebug-match-function) + (lambda-expr . edebug-match-lambda-expr) + (¬ . edebug-match-¬) + (&key . edebug-match-&key) + (place . edebug-match-place) + (gate . edebug-match-gate) + ;; (nil . edebug-match-nil) not this one - special case it. + )) + (put (car pair) 'edebug-form-spec (cdr pair))) (defun edebug-match-symbol (cursor symbol) ;; Match a symbol spec. @@ -1972,7 +1970,7 @@ (def-edebug-spec def-edebug-spec ;; Top level is different from lower levels. - (&define :name edebug-spec name + (&define :name edebug-spec name &or "nil" edebug-spec-p "t" "0" (&rest edebug-spec))) (def-edebug-spec edebug-spec-list @@ -2009,6 +2007,13 @@ def-body)) (def-edebug-spec defmacro (&define name lambda-list def-body)) +(def-edebug-spec define-derived-mode + (&define name name stringp [&optional stringp] def-body)) +(def-edebug-spec define-minor-mode + (&define name stringp def-body)) +;; This plain doesn't work ;-( -sm +;; (def-edebug-spec define-skeleton +;; (&define name stringp def-body)) (def-edebug-spec arglist lambda-list) ;; deprecated - use lambda-list.