[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/emacs-lisp/cl-specs.el
From: |
Miles Bader |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/emacs-lisp/cl-specs.el |
Date: |
Fri, 04 Apr 2003 01:21:58 -0500 |
Index: emacs/lisp/emacs-lisp/cl-specs.el
diff -c emacs/lisp/emacs-lisp/cl-specs.el:1.12
emacs/lisp/emacs-lisp/cl-specs.el:1.13
*** emacs/lisp/emacs-lisp/cl-specs.el:1.12 Tue Oct 1 13:00:27 2002
--- emacs/lisp/emacs-lisp/cl-specs.el Tue Feb 4 07:53:34 2003
***************
*** 7,13 ****
;; LCD Archive Entry:
;; cl-specs.el|Daniel LaLiberte|address@hidden
;; |Edebug specs for cl.el
! ;; |$Date: 2002/10/01 17:00:27 $|1.1|
;; This file is part of GNU Emacs.
--- 7,13 ----
;; LCD Archive Entry:
;; cl-specs.el|Daniel LaLiberte|address@hidden
;; |Edebug specs for cl.el
! ;; |$Date: 2003/02/04 12:53:34 $|1.1|
;; This file is part of GNU Emacs.
***************
*** 53,74 ****
(def-edebug-spec ecase case)
(def-edebug-spec do
((&rest &or symbolp (symbolp &optional form form))
! (form body)
cl-declarations body))
(def-edebug-spec do* do)
! (def-edebug-spec dolist
((symbolp form &optional form) cl-declarations body))
(def-edebug-spec dotimes dolist)
(def-edebug-spec do-symbols
((symbolp &optional form form) cl-declarations body))
! (def-edebug-spec do-all-symbols
((symbolp &optional form) cl-declarations body))
;; Multiple values
(def-edebug-spec multiple-value-list (form))
(def-edebug-spec multiple-value-call (function-form body))
! (def-edebug-spec multiple-value-bind
((&rest symbolp) form cl-declarations body))
(def-edebug-spec multiple-value-setq ((&rest symbolp) form))
(def-edebug-spec multiple-value-prog1 (form body))
--- 53,74 ----
(def-edebug-spec ecase case)
(def-edebug-spec do
((&rest &or symbolp (symbolp &optional form form))
! (form body)
cl-declarations body))
(def-edebug-spec do* do)
! (def-edebug-spec dolist
((symbolp form &optional form) cl-declarations body))
(def-edebug-spec dotimes dolist)
(def-edebug-spec do-symbols
((symbolp &optional form form) cl-declarations body))
! (def-edebug-spec do-all-symbols
((symbolp &optional form) cl-declarations body))
;; Multiple values
(def-edebug-spec multiple-value-list (form))
(def-edebug-spec multiple-value-call (function-form body))
! (def-edebug-spec multiple-value-bind
((&rest symbolp) form cl-declarations body))
(def-edebug-spec multiple-value-setq ((&rest symbolp) form))
(def-edebug-spec multiple-value-prog1 (form body))
***************
*** 84,94 ****
(def-edebug-spec flet ((&rest (defun*)) cl-declarations body))
(def-edebug-spec labels flet)
! (def-edebug-spec macrolet
! ((&rest (&define name (&rest arg) cl-declarations-or-string def-body))
cl-declarations body))
! (def-edebug-spec symbol-macrolet
((&rest (symbol sexp)) cl-declarations body))
(def-edebug-spec destructuring-bind
--- 84,94 ----
(def-edebug-spec flet ((&rest (defun*)) cl-declarations body))
(def-edebug-spec labels flet)
! (def-edebug-spec macrolet
! ((&rest (&define name (&rest arg) cl-declarations-or-string def-body))
cl-declarations body))
! (def-edebug-spec symbol-macrolet
((&rest (symbol sexp)) cl-declarations body))
(def-edebug-spec destructuring-bind
***************
*** 105,117 ****
(def-edebug-spec letf* letf)
! (def-edebug-spec defsetf
! (&define name
[&or [symbolp &optional stringp]
[cl-lambda-list (symbolp)]]
cl-declarations-or-string def-body))
! (def-edebug-spec define-setf-method
(&define name cl-lambda-list cl-declarations-or-string def-body))
(def-edebug-spec define-modify-macro
--- 105,117 ----
(def-edebug-spec letf* letf)
! (def-edebug-spec defsetf
! (&define name
[&or [symbolp &optional stringp]
[cl-lambda-list (symbolp)]]
cl-declarations-or-string def-body))
! (def-edebug-spec define-setf-method
(&define name cl-lambda-list cl-declarations-or-string def-body))
(def-edebug-spec define-modify-macro
***************
*** 128,135 ****
(def-edebug-spec incf (place &optional form))
(def-edebug-spec decf incf)
(def-edebug-spec push (form place)) ; different for CL
! (def-edebug-spec pushnew
! (form place &rest
&or [[&or ":test" ":test-not" ":key"] function-form]
[edebug-keywordp form]))
(def-edebug-spec pop (place)) ; different for CL
--- 128,135 ----
(def-edebug-spec incf (place &optional form))
(def-edebug-spec decf incf)
(def-edebug-spec push (form place)) ; different for CL
! (def-edebug-spec pushnew
! (form place &rest
&or [[&or ":test" ":test-not" ":key"] function-form]
[edebug-keywordp form]))
(def-edebug-spec pop (place)) ; different for CL
***************
*** 180,186 ****
;; Declarations
! (def-edebug-spec cl-decl-spec
((symbolp &rest sexp)))
(def-edebug-spec cl-declarations
--- 180,186 ----
;; Declarations
! (def-edebug-spec cl-decl-spec
((symbolp &rest sexp)))
(def-edebug-spec cl-declarations
***************
*** 214,230 ****
(&or ([&or (symbolp arg) arg] &optional def-form arg) arg))
;; The lambda list for macros is different from that of normal lambdas.
! ;; Note that &environment is only allowed as first or last items in the
;; top level list.
(def-edebug-spec cl-macro-list
(([&optional "&environment" arg]
[&rest cl-macro-arg]
! [&optional ["&optional" &rest
&or (cl-macro-arg &optional def-form cl-macro-arg) arg]]
[&optional [[&or "&rest" "&body"] cl-macro-arg]]
! [&optional ["&key" [&rest
! [&or ([&or (symbolp cl-macro-arg) arg]
&optional def-form cl-macro-arg)
arg]]
&optional "&allow-other-keys"]]
--- 214,230 ----
(&or ([&or (symbolp arg) arg] &optional def-form arg) arg))
;; The lambda list for macros is different from that of normal lambdas.
! ;; Note that &environment is only allowed as first or last items in the
;; top level list.
(def-edebug-spec cl-macro-list
(([&optional "&environment" arg]
[&rest cl-macro-arg]
! [&optional ["&optional" &rest
&or (cl-macro-arg &optional def-form cl-macro-arg) arg]]
[&optional [[&or "&rest" "&body"] cl-macro-arg]]
! [&optional ["&key" [&rest
! [&or ([&or (symbolp cl-macro-arg) arg]
&optional def-form cl-macro-arg)
arg]]
&optional "&allow-other-keys"]]
***************
*** 239,249 ****
(def-edebug-spec cl-macro-list1
(([&optional "&whole" arg] ;; only allowed at lower levels
[&rest cl-macro-arg]
! [&optional ["&optional" &rest
&or (cl-macro-arg &optional def-form cl-macro-arg) arg]]
[&optional [[&or "&rest" "&body"] cl-macro-arg]]
! [&optional ["&key" [&rest
! [&or ([&or (symbolp cl-macro-arg) arg]
&optional def-form cl-macro-arg)
arg]]
&optional "&allow-other-keys"]]
--- 239,249 ----
(def-edebug-spec cl-macro-list1
(([&optional "&whole" arg] ;; only allowed at lower levels
[&rest cl-macro-arg]
! [&optional ["&optional" &rest
&or (cl-macro-arg &optional def-form cl-macro-arg) arg]]
[&optional [[&or "&rest" "&body"] cl-macro-arg]]
! [&optional ["&key" [&rest
! [&or ([&or (symbolp cl-macro-arg) arg]
&optional def-form cl-macro-arg)
arg]]
&optional "&allow-other-keys"]]
***************
*** 262,268 ****
def-body))
(def-edebug-spec defsubst* defun*)
! (def-edebug-spec defmacro*
(&define name cl-macro-list cl-declarations-or-string def-body))
(def-edebug-spec define-compiler-macro defmacro*)
--- 262,268 ----
def-body))
(def-edebug-spec defsubst* defun*)
! (def-edebug-spec defmacro*
(&define name cl-macro-list cl-declarations-or-string def-body))
(def-edebug-spec define-compiler-macro defmacro*)
***************
*** 280,286 ****
(def-edebug-spec function-form
;; form at the end could also handle "function",
;; but recognize it specially to avoid wrapping function forms.
! (&or ([&or "quote" "function"] &or symbolp lambda-expr)
("function*" function*)
form))
--- 280,286 ----
(def-edebug-spec function-form
;; form at the end could also handle "function",
;; but recognize it specially to avoid wrapping function forms.
! (&or ([&or "quote" "function"] &or symbolp lambda-expr)
("function*" function*)
form))
***************
*** 293,299 ****
(&define ; makes top-level form not be wrapped
[&or symbolp
(gate
! symbolp &rest
(&or [":conc-name" &or stringp "nil"]
[":constructor" symbolp &optional cl-lambda-list]
[":copier" symbolp]
--- 293,299 ----
(&define ; makes top-level form not be wrapped
[&or symbolp
(gate
! symbolp &rest
(&or [":conc-name" &or stringp "nil"]
[":constructor" symbolp &optional cl-lambda-list]
[":copier" symbolp]
***************
*** 329,335 ****
(def-edebug-spec loop
([&optional ["named" symbolp]]
! [&rest
&or
["repeat" form]
loop-for-as
--- 329,335 ----
(def-edebug-spec loop
([&optional ["named" symbolp]]
! [&rest
&or
["repeat" form]
loop-for-as
***************
*** 351,386 ****
&rest ["and" loop-for-as-subclause]))
(def-edebug-spec loop-for-as-subclause
! (loop-var
loop-type-spec
! &or
[[&or "in" "on" "in-ref" "across-ref"]
form &optional ["by" function-form]]
["=" form &optional ["then" form]]
["across" form]
! ["being"
[&or "the" "each"]
! &or
! [[&or "element" "elements"]
[&or "of" "in" "of-ref"] form
&optional "using" ["index" symbolp]];; is this right?
[[&or "hash-key" "hash-keys"
"hash-value" "hash-values"]
[&or "of" "in"]
! hash-table-p &optional ["using" ([&or "hash-value" "hash-values"
"hash-key" "hash-keys"] sexp)]]
!
[[&or "symbol" "present-symbol" "external-symbol"
"symbols" "present-symbols" "external-symbols"]
[&or "in" "of"] package-p]
!
;; Extensions for Emacs Lisp, including Lucid Emacs.
[[&or "frame" "frames"
"screen" "screens"
"buffer" "buffers"]]
! [[&or "window" "windows"]
[&or "of" "in"] form]
[[&or "overlay" "overlays"
--- 351,386 ----
&rest ["and" loop-for-as-subclause]))
(def-edebug-spec loop-for-as-subclause
! (loop-var
loop-type-spec
! &or
[[&or "in" "on" "in-ref" "across-ref"]
form &optional ["by" function-form]]
["=" form &optional ["then" form]]
["across" form]
! ["being"
[&or "the" "each"]
! &or
! [[&or "element" "elements"]
[&or "of" "in" "of-ref"] form
&optional "using" ["index" symbolp]];; is this right?
[[&or "hash-key" "hash-keys"
"hash-value" "hash-values"]
[&or "of" "in"]
! hash-table-p &optional ["using" ([&or "hash-value" "hash-values"
"hash-key" "hash-keys"] sexp)]]
!
[[&or "symbol" "present-symbol" "external-symbol"
"symbols" "present-symbols" "external-symbols"]
[&or "in" "of"] package-p]
!
;; Extensions for Emacs Lisp, including Lucid Emacs.
[[&or "frame" "frames"
"screen" "screens"
"buffer" "buffers"]]
! [[&or "window" "windows"]
[&or "of" "in"] form]
[[&or "overlay" "overlays"
***************
*** 388,410 ****
[&or "of" "in"] form
&optional [[&or "from" "to"] form]]
! [[&or "interval" "intervals"]
[&or "in" "of"] form
&optional [[&or "from" "to"] form]
["property" form]]
!
[[&or "key-code" "key-codes"
"key-seq" "key-seqs"
! "key-binding" "key-bindings"]
[&or "in" "of"] form
&optional ["using" ([&or "key-code" "key-codes"
"key-seq" "key-seqs"
! "key-binding" "key-bindings"]
sexp)]]
;; For arbitrary extensions, recognize anything else.
[symbolp &rest &or symbolp form]
]
!
;; arithmetic - must be last since all parts are optional.
[[&optional [[&or "from" "downfrom" "upfrom"] form]]
[&optional [[&or "to" "downto" "upto" "below" "above"] form]]
--- 388,410 ----
[&or "of" "in"] form
&optional [[&or "from" "to"] form]]
! [[&or "interval" "intervals"]
[&or "in" "of"] form
&optional [[&or "from" "to"] form]
["property" form]]
!
[[&or "key-code" "key-codes"
"key-seq" "key-seqs"
! "key-binding" "key-bindings"]
[&or "in" "of"] form
&optional ["using" ([&or "key-code" "key-codes"
"key-seq" "key-seqs"
! "key-binding" "key-bindings"]
sexp)]]
;; For arbitrary extensions, recognize anything else.
[symbolp &rest &or symbolp form]
]
!
;; arithmetic - must be last since all parts are optional.
[[&optional [[&or "from" "downfrom" "upfrom"] form]]
[&optional [[&or "to" "downto" "upto" "below" "above"] form]]
***************
*** 412,421 ****
]))
(def-edebug-spec loop-initial-final
! (&or ["initially"
;; [&optional &or "do" "doing"] ;; CLtL2 doesn't allow this.
&rest loop-non-atomic-expr]
! ["finally" &or
[[&optional &or "do" "doing"] &rest loop-non-atomic-expr]
["return" form]]))
--- 412,421 ----
]))
(def-edebug-spec loop-initial-final
! (&or ["initially"
;; [&optional &or "do" "doing"] ;; CLtL2 doesn't allow this.
&rest loop-non-atomic-expr]
! ["finally" &or
[[&optional &or "do" "doing"] &rest loop-non-atomic-expr]
["return" form]]))
***************
*** 425,435 ****
(def-edebug-spec loop-clause
(&or
[[&or "while" "until" "always" "never" "thereis"] form]
!
[[&or "collect" "collecting"
"append" "appending"
"nconc" "nconcing"
! "concat" "vconcat"] form
[&optional ["into" loop-var]]]
[[&or "count" "counting"
--- 425,435 ----
(def-edebug-spec loop-clause
(&or
[[&or "while" "until" "always" "never" "thereis"] form]
!
[[&or "collect" "collecting"
"append" "appending"
"nconc" "nconcing"
! "concat" "vconcat"] form
[&optional ["into" loop-var]]]
[[&or "count" "counting"
***************
*** 455,461 ****
(def-edebug-spec loop-var
;; The symbolp must be last alternative to recognize e.g. (a b . c)
! ;; loop-var =>
;; (loop-var . [&or nil loop-var])
;; (symbolp . [&or nil loop-var])
;; (symbolp . loop-var)
--- 455,461 ----
(def-edebug-spec loop-var
;; The symbolp must be last alternative to recognize e.g. (a b . c)
! ;; loop-var =>
;; (loop-var . [&or nil loop-var])
;; (symbolp . [&or nil loop-var])
;; (symbolp . loop-var)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/lisp/emacs-lisp/cl-specs.el,
Miles Bader <=