Mercurial > emacs
comparison lisp/emacs-lisp/edebug.el @ 70003:5fd1441a60f9
(edebug-basic-spec): New function for vetting file-local form specs.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Thu, 13 Apr 2006 10:51:17 +0000 |
parents | 651c5e7479de |
children | 84008c83cd50 c156f6a9e7b5 |
comparison
equal
deleted
inserted
replaced
70002:e753e12d2f33 | 70003:5fd1441a60f9 |
---|---|
255 (setq indirect (get edebug-form-spec 'edebug-form-spec))) | 255 (setq indirect (get edebug-form-spec 'edebug-form-spec))) |
256 ;; (edebug-trace "indirection: %s" edebug-form-spec) | 256 ;; (edebug-trace "indirection: %s" edebug-form-spec) |
257 (setq edebug-form-spec indirect)) | 257 (setq edebug-form-spec indirect)) |
258 edebug-form-spec | 258 edebug-form-spec |
259 )) | 259 )) |
260 | |
261 ;;;###autoload | |
262 (defun edebug-basic-spec (spec) | |
263 "Return t if SPEC uses only extant spec symbols. | |
264 An extant spec symbol is a symbol that is not a function and has a | |
265 `edebug-form-spec' property." | |
266 (cond ((listp spec) | |
267 (catch 'basic | |
268 (while spec | |
269 (unless (edebug-basic-spec (car spec)) (throw 'basic nil)) | |
270 (setq spec (cdr spec))) | |
271 t)) | |
272 ((symbolp spec) | |
273 (unless (functionp spec) (get spec 'edebug-form-spec))))) | |
260 | 274 |
261 ;;; Utilities | 275 ;;; Utilities |
262 | 276 |
263 ;; Define edebug-gensym - from old cl.el | 277 ;; Define edebug-gensym - from old cl.el |
264 (defvar edebug-gensym-index 0 | 278 (defvar edebug-gensym-index 0 |