2007-06-27 19:14:41 +00:00
|
|
|
|
;;; cl-loaddefs.el --- automatically extracted autoloads
|
|
|
|
|
;;
|
|
|
|
|
;;; Code:
|
|
|
|
|
|
|
|
|
|
|
Use lexical-binding for all of CL, and clean up its namespace.
* lisp/emacs-lisp/cl-lib.el: Use lexical-binding.
(cl-map-extents, cl-maclisp-member): Remove.
(cl--set-elt, cl--set-nthcdr, cl--set-buffer-substring)
(cl--set-substring, cl--block-wrapper, cl--block-throw)
(cl--compiling-file, cl--mapcar-many, cl--do-subst): Use "cl--" prefix.
* lisp/emacs-lisp/cl-extra.el: Use lexical-binding.
(cl--mapcar-many, cl--map-keymap-recursively, cl--map-intervals)
(cl--map-overlays, cl--set-frame-visible-p, cl--progv-save)
(cl--progv-before, cl--progv-after, cl--finite-do, cl--set-getf)
(cl--do-remf, cl--do-prettyprint): Use "cl--" prefix.
* lisp/emacs-lisp/cl-seq.el: Use lexical-binding.
(cl--parsing-keywords, cl--check-key, cl--check-test-nokey)
(cl--check-test, cl--check-match): Use "cl--" prefix and backquotes.
(cl--alist, cl--sublis-rec, cl--nsublis-rec, cl--tree-equal-rec):
* lisp/emacs-lisp/cl-macs.el (cl--lambda-list-keywords): Use "cl--" prefix.
* lisp/edmacro.el (edmacro-mismatch): Simplify to remove dependence on
CL's internals.
2012-06-11 11:52:50 -04:00
|
|
|
|
;;;### (autoloads (cl-prettyexpand cl-remprop cl--do-remf cl--set-getf
|
Move old compatiblity to cl.el. Remove cl-macroexpand-all.
* emacs-lisp/cl-extra.el (cl-map-keymap, cl-copy-tree)
(cl-not-hash-table, cl-builtin-gethash, cl-builtin-remhash)
(cl-builtin-clrhash, cl-builtin-maphash, cl-gethash, cl-puthash)
(cl-remhash, cl-clrhash, cl-maphash, cl-make-hash-table)
(cl-hash-table-p, cl-hash-table-count): Move to cl.el.
(cl-macroexpand-cmacs): Remove var.
(cl-macroexpand-all, cl-macroexpand-body): Remove funs.
Use macroexpand-all instead.
* emacs-lisp/cl-lib.el (cl-macro-environment): Remove decl.
(cl-macroexpand): Move to cl-macs.el and rename to cl--sm-macroexpand.
(cl-member): Remove old alias.
* emacs-lisp/cl-macs.el (cl-macro-environment): Remove var.
Use macroexpand-all-environment instead.
(cl--old-macroexpand): New var.
(cl--sm-macroexpand): New function.
(cl-symbol-macrolet): Use it during macro expansion.
(cl--function-convert-cache): New var.
(cl--function-convert): New function, extracted from
cl-macroexpand-all.
(cl-lexical-let): Use it.
* emacs-lisp/cl.el (cl-macroexpand, cl-macro-environment)
(cl-macroexpand-all, cl-not-hash-table, cl-builtin-gethash)
(cl-builtin-remhash, cl-builtin-clrhash, cl-builtin-maphash)
(cl-map-keymap, cl-copy-tree, cl-gethash, cl-puthash, cl-remhash)
(cl-clrhash, cl-maphash, cl-make-hash-table, cl-hash-table-p)
(cl-hash-table-count): Add old compatibility aliases.
2012-06-07 15:48:22 -04:00
|
|
|
|
;;;;;; cl-getf cl-get cl-tailp cl-list-length cl-nreconc cl-revappend
|
|
|
|
|
;;;;;; cl-concatenate cl-subseq cl-float-limits cl-random-state-p
|
|
|
|
|
;;;;;; cl-make-random-state cl-random cl-signum cl-rem cl-mod cl-round
|
2012-07-12 06:20:34 -04:00
|
|
|
|
;;;;;; cl-truncate cl-ceiling cl-floor cl-isqrt cl-lcm cl-gcd cl--set-frame-visible-p
|
|
|
|
|
;;;;;; cl--map-overlays cl--map-intervals cl--map-keymap-recursively
|
|
|
|
|
;;;;;; cl-notevery cl-notany cl-every cl-some cl-mapcon cl-mapcan
|
|
|
|
|
;;;;;; cl-mapl cl-maplist cl-map cl--mapcar-many cl-equalp cl-coerce)
|
|
|
|
|
;;;;;; "cl-extra" "cl-extra.el" "535a24c1cff55a16e3d51219498a7858")
|
2007-06-27 19:14:41 +00:00
|
|
|
|
;;; Generated autoloads from cl-extra.el
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-coerce "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Coerce OBJECT to type TYPE.
|
|
|
|
|
TYPE is a Common Lisp type specifier.
|
|
|
|
|
|
|
|
|
|
\(fn OBJECT TYPE)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-equalp "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return t if two Lisp objects have similar structures and contents.
|
|
|
|
|
This is like `equal', except that it accepts numerically equal
|
|
|
|
|
numbers of different types (float vs. integer), and also compares
|
|
|
|
|
strings case-insensitively.
|
|
|
|
|
|
|
|
|
|
\(fn X Y)" nil nil)
|
|
|
|
|
|
Use lexical-binding for all of CL, and clean up its namespace.
* lisp/emacs-lisp/cl-lib.el: Use lexical-binding.
(cl-map-extents, cl-maclisp-member): Remove.
(cl--set-elt, cl--set-nthcdr, cl--set-buffer-substring)
(cl--set-substring, cl--block-wrapper, cl--block-throw)
(cl--compiling-file, cl--mapcar-many, cl--do-subst): Use "cl--" prefix.
* lisp/emacs-lisp/cl-extra.el: Use lexical-binding.
(cl--mapcar-many, cl--map-keymap-recursively, cl--map-intervals)
(cl--map-overlays, cl--set-frame-visible-p, cl--progv-save)
(cl--progv-before, cl--progv-after, cl--finite-do, cl--set-getf)
(cl--do-remf, cl--do-prettyprint): Use "cl--" prefix.
* lisp/emacs-lisp/cl-seq.el: Use lexical-binding.
(cl--parsing-keywords, cl--check-key, cl--check-test-nokey)
(cl--check-test, cl--check-match): Use "cl--" prefix and backquotes.
(cl--alist, cl--sublis-rec, cl--nsublis-rec, cl--tree-equal-rec):
* lisp/emacs-lisp/cl-macs.el (cl--lambda-list-keywords): Use "cl--" prefix.
* lisp/edmacro.el (edmacro-mismatch): Simplify to remove dependence on
CL's internals.
2012-06-11 11:52:50 -04:00
|
|
|
|
(autoload 'cl--mapcar-many "cl-extra" "\
|
2011-10-27 06:22:00 -04:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn CL-FUNC CL-SEQS)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-map "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Map a FUNCTION across one or more SEQUENCEs, returning a sequence.
|
|
|
|
|
TYPE is the sequence type to return.
|
|
|
|
|
|
|
|
|
|
\(fn TYPE FUNCTION SEQUENCE...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-maplist "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Map FUNCTION to each sublist of LIST or LISTs.
|
|
|
|
|
Like `mapcar', except applies to lists and their cdr's rather than to
|
|
|
|
|
the elements themselves.
|
|
|
|
|
|
|
|
|
|
\(fn FUNCTION LIST...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-mapl "cl-extra" "\
|
|
|
|
|
Like `cl-maplist', but does not accumulate values returned by the function.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn FUNCTION LIST...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-mapcan "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Like `mapcar', but nconc's together the values returned by the function.
|
|
|
|
|
|
|
|
|
|
\(fn FUNCTION SEQUENCE...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-mapcon "cl-extra" "\
|
|
|
|
|
Like `cl-maplist', but nconc's together the values returned by the function.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn FUNCTION LIST...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-some "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return true if PREDICATE is true of any element of SEQ or SEQs.
|
|
|
|
|
If so, return the true (non-nil) value returned by PREDICATE.
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-every "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return true if PREDICATE is true of every element of SEQ or SEQs.
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-notany "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return true if PREDICATE is false of every element of SEQ or SEQs.
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-notevery "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return true if PREDICATE is false of some element of SEQ or SEQs.
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ...)" nil nil)
|
|
|
|
|
|
Use lexical-binding for all of CL, and clean up its namespace.
* lisp/emacs-lisp/cl-lib.el: Use lexical-binding.
(cl-map-extents, cl-maclisp-member): Remove.
(cl--set-elt, cl--set-nthcdr, cl--set-buffer-substring)
(cl--set-substring, cl--block-wrapper, cl--block-throw)
(cl--compiling-file, cl--mapcar-many, cl--do-subst): Use "cl--" prefix.
* lisp/emacs-lisp/cl-extra.el: Use lexical-binding.
(cl--mapcar-many, cl--map-keymap-recursively, cl--map-intervals)
(cl--map-overlays, cl--set-frame-visible-p, cl--progv-save)
(cl--progv-before, cl--progv-after, cl--finite-do, cl--set-getf)
(cl--do-remf, cl--do-prettyprint): Use "cl--" prefix.
* lisp/emacs-lisp/cl-seq.el: Use lexical-binding.
(cl--parsing-keywords, cl--check-key, cl--check-test-nokey)
(cl--check-test, cl--check-match): Use "cl--" prefix and backquotes.
(cl--alist, cl--sublis-rec, cl--nsublis-rec, cl--tree-equal-rec):
* lisp/emacs-lisp/cl-macs.el (cl--lambda-list-keywords): Use "cl--" prefix.
* lisp/edmacro.el (edmacro-mismatch): Simplify to remove dependence on
CL's internals.
2012-06-11 11:52:50 -04:00
|
|
|
|
(autoload 'cl--map-keymap-recursively "cl-extra" "\
|
2011-10-27 06:22:00 -04:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn CL-FUNC-REC CL-MAP &optional CL-BASE)" nil nil)
|
|
|
|
|
|
Use lexical-binding for all of CL, and clean up its namespace.
* lisp/emacs-lisp/cl-lib.el: Use lexical-binding.
(cl-map-extents, cl-maclisp-member): Remove.
(cl--set-elt, cl--set-nthcdr, cl--set-buffer-substring)
(cl--set-substring, cl--block-wrapper, cl--block-throw)
(cl--compiling-file, cl--mapcar-many, cl--do-subst): Use "cl--" prefix.
* lisp/emacs-lisp/cl-extra.el: Use lexical-binding.
(cl--mapcar-many, cl--map-keymap-recursively, cl--map-intervals)
(cl--map-overlays, cl--set-frame-visible-p, cl--progv-save)
(cl--progv-before, cl--progv-after, cl--finite-do, cl--set-getf)
(cl--do-remf, cl--do-prettyprint): Use "cl--" prefix.
* lisp/emacs-lisp/cl-seq.el: Use lexical-binding.
(cl--parsing-keywords, cl--check-key, cl--check-test-nokey)
(cl--check-test, cl--check-match): Use "cl--" prefix and backquotes.
(cl--alist, cl--sublis-rec, cl--nsublis-rec, cl--tree-equal-rec):
* lisp/emacs-lisp/cl-macs.el (cl--lambda-list-keywords): Use "cl--" prefix.
* lisp/edmacro.el (edmacro-mismatch): Simplify to remove dependence on
CL's internals.
2012-06-11 11:52:50 -04:00
|
|
|
|
(autoload 'cl--map-intervals "cl-extra" "\
|
2011-10-27 06:22:00 -04:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn CL-FUNC &optional CL-WHAT CL-PROP CL-START CL-END)" nil nil)
|
|
|
|
|
|
Use lexical-binding for all of CL, and clean up its namespace.
* lisp/emacs-lisp/cl-lib.el: Use lexical-binding.
(cl-map-extents, cl-maclisp-member): Remove.
(cl--set-elt, cl--set-nthcdr, cl--set-buffer-substring)
(cl--set-substring, cl--block-wrapper, cl--block-throw)
(cl--compiling-file, cl--mapcar-many, cl--do-subst): Use "cl--" prefix.
* lisp/emacs-lisp/cl-extra.el: Use lexical-binding.
(cl--mapcar-many, cl--map-keymap-recursively, cl--map-intervals)
(cl--map-overlays, cl--set-frame-visible-p, cl--progv-save)
(cl--progv-before, cl--progv-after, cl--finite-do, cl--set-getf)
(cl--do-remf, cl--do-prettyprint): Use "cl--" prefix.
* lisp/emacs-lisp/cl-seq.el: Use lexical-binding.
(cl--parsing-keywords, cl--check-key, cl--check-test-nokey)
(cl--check-test, cl--check-match): Use "cl--" prefix and backquotes.
(cl--alist, cl--sublis-rec, cl--nsublis-rec, cl--tree-equal-rec):
* lisp/emacs-lisp/cl-macs.el (cl--lambda-list-keywords): Use "cl--" prefix.
* lisp/edmacro.el (edmacro-mismatch): Simplify to remove dependence on
CL's internals.
2012-06-11 11:52:50 -04:00
|
|
|
|
(autoload 'cl--map-overlays "cl-extra" "\
|
2011-10-27 06:22:00 -04:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn CL-FUNC &optional CL-BUFFER CL-START CL-END CL-ARG)" nil nil)
|
|
|
|
|
|
Use lexical-binding for all of CL, and clean up its namespace.
* lisp/emacs-lisp/cl-lib.el: Use lexical-binding.
(cl-map-extents, cl-maclisp-member): Remove.
(cl--set-elt, cl--set-nthcdr, cl--set-buffer-substring)
(cl--set-substring, cl--block-wrapper, cl--block-throw)
(cl--compiling-file, cl--mapcar-many, cl--do-subst): Use "cl--" prefix.
* lisp/emacs-lisp/cl-extra.el: Use lexical-binding.
(cl--mapcar-many, cl--map-keymap-recursively, cl--map-intervals)
(cl--map-overlays, cl--set-frame-visible-p, cl--progv-save)
(cl--progv-before, cl--progv-after, cl--finite-do, cl--set-getf)
(cl--do-remf, cl--do-prettyprint): Use "cl--" prefix.
* lisp/emacs-lisp/cl-seq.el: Use lexical-binding.
(cl--parsing-keywords, cl--check-key, cl--check-test-nokey)
(cl--check-test, cl--check-match): Use "cl--" prefix and backquotes.
(cl--alist, cl--sublis-rec, cl--nsublis-rec, cl--tree-equal-rec):
* lisp/emacs-lisp/cl-macs.el (cl--lambda-list-keywords): Use "cl--" prefix.
* lisp/edmacro.el (edmacro-mismatch): Simplify to remove dependence on
CL's internals.
2012-06-11 11:52:50 -04:00
|
|
|
|
(autoload 'cl--set-frame-visible-p "cl-extra" "\
|
2011-10-27 06:22:00 -04:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn FRAME VAL)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-gcd "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return the greatest common divisor of the arguments.
|
|
|
|
|
|
|
|
|
|
\(fn &rest ARGS)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-lcm "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return the least common multiple of the arguments.
|
|
|
|
|
|
|
|
|
|
\(fn &rest ARGS)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-isqrt "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return the integer square root of the argument.
|
|
|
|
|
|
|
|
|
|
\(fn X)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-floor "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return a list of the floor of X and the fractional part of X.
|
|
|
|
|
With two arguments, return floor and remainder of their quotient.
|
|
|
|
|
|
|
|
|
|
\(fn X &optional Y)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-ceiling "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return a list of the ceiling of X and the fractional part of X.
|
|
|
|
|
With two arguments, return ceiling and remainder of their quotient.
|
|
|
|
|
|
|
|
|
|
\(fn X &optional Y)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-truncate "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return a list of the integer part of X and the fractional part of X.
|
|
|
|
|
With two arguments, return truncation and remainder of their quotient.
|
|
|
|
|
|
|
|
|
|
\(fn X &optional Y)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-round "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return a list of X rounded to the nearest integer and the remainder.
|
|
|
|
|
With two arguments, return rounding and remainder of their quotient.
|
|
|
|
|
|
|
|
|
|
\(fn X &optional Y)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-mod "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
The remainder of X divided by Y, with the same sign as Y.
|
|
|
|
|
|
|
|
|
|
\(fn X Y)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-rem "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
The remainder of X divided by Y, with the same sign as X.
|
|
|
|
|
|
|
|
|
|
\(fn X Y)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-signum "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return 1 if X is positive, -1 if negative, 0 if zero.
|
|
|
|
|
|
|
|
|
|
\(fn X)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-random "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return a random nonnegative number less than LIM, an integer or float.
|
|
|
|
|
Optional second arg STATE is a random-state object.
|
|
|
|
|
|
|
|
|
|
\(fn LIM &optional STATE)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-make-random-state "cl-extra" "\
|
2012-05-17 16:04:56 -04:00
|
|
|
|
Return a copy of random-state STATE, or of the internal state if omitted.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
If STATE is t, return a new state object seeded from the time of day.
|
|
|
|
|
|
|
|
|
|
\(fn &optional STATE)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-random-state-p "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return t if OBJECT is a random-state object.
|
|
|
|
|
|
|
|
|
|
\(fn OBJECT)" nil nil)
|
|
|
|
|
|
2008-01-12 23:48:35 +00:00
|
|
|
|
(autoload 'cl-float-limits "cl-extra" "\
|
2011-10-27 06:22:00 -04:00
|
|
|
|
Initialize the Common Lisp floating-point parameters.
|
2012-06-04 10:00:32 -04:00
|
|
|
|
This sets the values of: `cl-most-positive-float', `cl-most-negative-float',
|
|
|
|
|
`cl-least-positive-float', `cl-least-negative-float', `cl-float-epsilon',
|
|
|
|
|
`cl-float-negative-epsilon', `cl-least-positive-normalized-float', and
|
|
|
|
|
`cl-least-negative-normalized-float'.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-subseq "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return the subsequence of SEQ from START to END.
|
|
|
|
|
If END is omitted, it defaults to the length of the sequence.
|
|
|
|
|
If START or END is negative, it counts from the end.
|
|
|
|
|
|
|
|
|
|
\(fn SEQ START &optional END)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-concatenate "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Concatenate, into a sequence of type TYPE, the argument SEQUENCEs.
|
|
|
|
|
|
|
|
|
|
\(fn TYPE SEQUENCE...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-revappend "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Equivalent to (append (reverse X) Y).
|
|
|
|
|
|
|
|
|
|
\(fn X Y)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nreconc "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Equivalent to (nconc (nreverse X) Y).
|
|
|
|
|
|
|
|
|
|
\(fn X Y)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-list-length "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return the length of list X. Return nil if list is circular.
|
|
|
|
|
|
|
|
|
|
\(fn X)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-tailp "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return true if SUBLIST is a tail of LIST.
|
|
|
|
|
|
|
|
|
|
\(fn SUBLIST LIST)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-get "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return the value of SYMBOL's PROPNAME property, or DEFAULT if none.
|
|
|
|
|
|
|
|
|
|
\(fn SYMBOL PROPNAME &optional DEFAULT)" nil nil)
|
|
|
|
|
|
2012-06-08 22:26:47 -04:00
|
|
|
|
(put 'cl-get 'compiler-macro #'cl--compiler-macro-get)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-getf "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Search PROPLIST for property PROPNAME; return its value or DEFAULT.
|
|
|
|
|
PROPLIST is a list of the sort returned by `symbol-plist'.
|
|
|
|
|
|
|
|
|
|
\(fn PROPLIST PROPNAME &optional DEFAULT)" nil nil)
|
|
|
|
|
|
Use lexical-binding for all of CL, and clean up its namespace.
* lisp/emacs-lisp/cl-lib.el: Use lexical-binding.
(cl-map-extents, cl-maclisp-member): Remove.
(cl--set-elt, cl--set-nthcdr, cl--set-buffer-substring)
(cl--set-substring, cl--block-wrapper, cl--block-throw)
(cl--compiling-file, cl--mapcar-many, cl--do-subst): Use "cl--" prefix.
* lisp/emacs-lisp/cl-extra.el: Use lexical-binding.
(cl--mapcar-many, cl--map-keymap-recursively, cl--map-intervals)
(cl--map-overlays, cl--set-frame-visible-p, cl--progv-save)
(cl--progv-before, cl--progv-after, cl--finite-do, cl--set-getf)
(cl--do-remf, cl--do-prettyprint): Use "cl--" prefix.
* lisp/emacs-lisp/cl-seq.el: Use lexical-binding.
(cl--parsing-keywords, cl--check-key, cl--check-test-nokey)
(cl--check-test, cl--check-match): Use "cl--" prefix and backquotes.
(cl--alist, cl--sublis-rec, cl--nsublis-rec, cl--tree-equal-rec):
* lisp/emacs-lisp/cl-macs.el (cl--lambda-list-keywords): Use "cl--" prefix.
* lisp/edmacro.el (edmacro-mismatch): Simplify to remove dependence on
CL's internals.
2012-06-11 11:52:50 -04:00
|
|
|
|
(autoload 'cl--set-getf "cl-extra" "\
|
2011-10-27 06:22:00 -04:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn PLIST TAG VAL)" nil nil)
|
|
|
|
|
|
Use lexical-binding for all of CL, and clean up its namespace.
* lisp/emacs-lisp/cl-lib.el: Use lexical-binding.
(cl-map-extents, cl-maclisp-member): Remove.
(cl--set-elt, cl--set-nthcdr, cl--set-buffer-substring)
(cl--set-substring, cl--block-wrapper, cl--block-throw)
(cl--compiling-file, cl--mapcar-many, cl--do-subst): Use "cl--" prefix.
* lisp/emacs-lisp/cl-extra.el: Use lexical-binding.
(cl--mapcar-many, cl--map-keymap-recursively, cl--map-intervals)
(cl--map-overlays, cl--set-frame-visible-p, cl--progv-save)
(cl--progv-before, cl--progv-after, cl--finite-do, cl--set-getf)
(cl--do-remf, cl--do-prettyprint): Use "cl--" prefix.
* lisp/emacs-lisp/cl-seq.el: Use lexical-binding.
(cl--parsing-keywords, cl--check-key, cl--check-test-nokey)
(cl--check-test, cl--check-match): Use "cl--" prefix and backquotes.
(cl--alist, cl--sublis-rec, cl--nsublis-rec, cl--tree-equal-rec):
* lisp/emacs-lisp/cl-macs.el (cl--lambda-list-keywords): Use "cl--" prefix.
* lisp/edmacro.el (edmacro-mismatch): Simplify to remove dependence on
CL's internals.
2012-06-11 11:52:50 -04:00
|
|
|
|
(autoload 'cl--do-remf "cl-extra" "\
|
2011-10-27 06:22:00 -04:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn PLIST TAG)" nil nil)
|
|
|
|
|
|
2008-01-12 23:48:35 +00:00
|
|
|
|
(autoload 'cl-remprop "cl-extra" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Remove from SYMBOL's plist the property PROPNAME and its value.
|
|
|
|
|
|
|
|
|
|
\(fn SYMBOL PROPNAME)" nil nil)
|
|
|
|
|
|
2008-01-12 23:48:35 +00:00
|
|
|
|
(autoload 'cl-prettyexpand "cl-extra" "\
|
2011-10-27 06:22:00 -04:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn FORM &optional FULL)" nil nil)
|
|
|
|
|
|
|
|
|
|
;;;***
|
|
|
|
|
|
2012-09-04 13:40:25 -04:00
|
|
|
|
;;;### (autoloads (cl--compiler-macro-adjoin cl-defsubst cl-compiler-macroexpand
|
Fix compiler-expansion of CL's cXXr functions.
* emacs-lisp/cl-lib.el (cl--defalias): New function.
(cl-values, cl-values-list, cl-copy-seq, cl-svref, cl-first)
(cl-second, cl-rest, cl-endp, cl-third, cl-fourth): Use it.
(cl-plusp, cl-minusp, cl-fifth, cl-sixth, cl-seventh, cl-eighth)
(cl-ninth, cl-tenth): Mark them as inlinable.
(cl-caaar, cl-caadr, cl-cadar, cl-caddr, cl-cdaar, cl-cdadr)
(cl-cddar, cl-cdddr, cl-caaaar, cl-caaadr, cl-caadar, cl-caaddr)
(cl-cadaar, cl-cadadr, cl-caddar, cl-cadddr, cl-cdaaar, cl-cdaadr)
(cl-cdadar, cl-cdaddr, cl-cddaar, cl-cddadr, cl-cdddar, cl-cddddr):
Add a compiler-macro declaration to use cl--compiler-macro-cXXr.
(cl-list*, cl-adjoin): Don't put an autoload manually.
* emacs-lisp/cl-macs.el (cl--compiler-macro-adjoin)
(cl--compiler-macro-list*): Add autoload cookie.
(cl--compiler-macro-cXXr): New function.
* help-fns.el (help-fns--compiler-macro): New function extracted from
describe-function-1; follow aliases and use `compiler-macro' property.
(describe-function-1): Use it.
Fixes: debbugs:11673
2012-06-11 16:35:00 -04:00
|
|
|
|
;;;;;; cl-define-compiler-macro cl-assert cl-check-type cl-typep
|
2012-07-12 06:20:34 -04:00
|
|
|
|
;;;;;; cl-deftype cl-defstruct cl-callf2 cl-callf cl-letf* cl-letf
|
|
|
|
|
;;;;;; cl-rotatef cl-shiftf cl-remf cl-psetf cl-declare cl-the cl-locally
|
|
|
|
|
;;;;;; cl-multiple-value-setq cl-multiple-value-bind cl-symbol-macrolet
|
|
|
|
|
;;;;;; cl-macrolet cl-labels cl-flet* cl-flet cl-progv cl-psetq
|
|
|
|
|
;;;;;; cl-do-all-symbols cl-do-symbols cl-dotimes cl-dolist cl-do*
|
|
|
|
|
;;;;;; cl-do cl-loop cl-return-from cl-return cl-block cl-etypecase
|
|
|
|
|
;;;;;; cl-typecase cl-ecase cl-case cl-load-time-value cl-eval-when
|
|
|
|
|
;;;;;; cl-destructuring-bind cl-function cl-defmacro cl-defun cl-gentemp
|
2012-09-04 13:40:25 -04:00
|
|
|
|
;;;;;; cl-gensym cl--compiler-macro-cXXr cl--compiler-macro-list*)
|
2012-09-09 21:16:13 -04:00
|
|
|
|
;;;;;; "cl-macs" "cl-macs.el" "6d0676869af66e5b5a671f95ee069461")
|
2007-06-27 19:14:41 +00:00
|
|
|
|
;;; Generated autoloads from cl-macs.el
|
|
|
|
|
|
2012-09-04 13:40:25 -04:00
|
|
|
|
(autoload 'cl--compiler-macro-list* "cl-macs" "\
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\(fn FORM ARG &rest OTHERS)" nil nil)
|
|
|
|
|
|
|
|
|
|
(autoload 'cl--compiler-macro-cXXr "cl-macs" "\
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\(fn FORM X)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-gensym "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Generate a new uninterned symbol.
|
|
|
|
|
The name is made by appending a number to PREFIX, default \"G\".
|
|
|
|
|
|
|
|
|
|
\(fn &optional PREFIX)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-gentemp "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Generate a new interned symbol with a unique name.
|
|
|
|
|
The name is made by appending a number to PREFIX, default \"G\".
|
|
|
|
|
|
|
|
|
|
\(fn &optional PREFIX)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-defun "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Define NAME as a function.
|
|
|
|
|
Like normal `defun', except ARGLIST allows full Common Lisp conventions,
|
2012-06-04 10:00:32 -04:00
|
|
|
|
and BODY is implicitly surrounded by (cl-block NAME ...).
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn NAME ARGLIST [DOCSTRING] BODY...)" nil t)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-defun 'doc-string-elt '3)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-defun 'lisp-indent-function '2)
|
2012-06-01 16:36:00 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-defmacro "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Define NAME as a macro.
|
|
|
|
|
Like normal `defmacro', except ARGLIST allows full Common Lisp conventions,
|
2012-06-04 10:00:32 -04:00
|
|
|
|
and BODY is implicitly surrounded by (cl-block NAME ...).
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn NAME ARGLIST [DOCSTRING] BODY...)" nil t)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-defmacro 'doc-string-elt '3)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-defmacro 'lisp-indent-function '2)
|
2012-06-01 16:36:00 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-function "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Introduce a function.
|
|
|
|
|
Like normal `function', except that if argument is a lambda form,
|
|
|
|
|
its argument list allows full Common Lisp conventions.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn FUNC)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-destructuring-bind "cl-macs" "\
|
2011-03-06 16:22:16 -05:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn ARGS EXPR &rest BODY)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-destructuring-bind 'lisp-indent-function '2)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-eval-when "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Control when BODY is evaluated.
|
|
|
|
|
If `compile' is in WHEN, BODY is evaluated when compiled at top-level.
|
|
|
|
|
If `load' is in WHEN, BODY is evaluated when loaded after top-level compile.
|
|
|
|
|
If `eval' is in WHEN, BODY is evaluated when interpreted or at non-top-level.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn (WHEN...) BODY...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-eval-when 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-load-time-value "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Like `progn', but evaluates the body at load time.
|
|
|
|
|
The result of the body appears to the compiler as a quoted constant.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn FORM &optional READ-ONLY)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-case "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Eval EXPR and choose among clauses on that value.
|
|
|
|
|
Each clause looks like (KEYLIST BODY...). EXPR is evaluated and compared
|
|
|
|
|
against each key in each KEYLIST; the corresponding BODY is evaluated.
|
2012-06-04 10:00:32 -04:00
|
|
|
|
If no clause succeeds, cl-case returns nil. A single atom may be used in
|
2007-06-27 19:14:41 +00:00
|
|
|
|
place of a KEYLIST of one atom. A KEYLIST of t or `otherwise' is
|
|
|
|
|
allowed only in the final clause, and matches if no other keys match.
|
|
|
|
|
Key values are compared by `eql'.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn EXPR (KEYLIST BODY...)...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-case 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-ecase "cl-macs" "\
|
2012-07-12 06:20:34 -04:00
|
|
|
|
Like `cl-case', but error if no case fits.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
`otherwise'-clauses are not allowed.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn EXPR (KEYLIST BODY...)...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-ecase 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-typecase "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Evals EXPR, chooses among clauses on that value.
|
|
|
|
|
Each clause looks like (TYPE BODY...). EXPR is evaluated and, if it
|
|
|
|
|
satisfies TYPE, the corresponding BODY is evaluated. If no clause succeeds,
|
2012-06-04 10:00:32 -04:00
|
|
|
|
cl-typecase returns nil. A TYPE of t or `otherwise' is allowed only in the
|
2007-06-27 19:14:41 +00:00
|
|
|
|
final clause, and matches if no other keys match.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn EXPR (TYPE BODY...)...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-typecase 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-etypecase "cl-macs" "\
|
|
|
|
|
Like `cl-typecase', but error if no case fits.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
`otherwise'-clauses are not allowed.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn EXPR (TYPE BODY...)...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-etypecase 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-block "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Define a lexically-scoped block named NAME.
|
2012-06-04 10:00:32 -04:00
|
|
|
|
NAME may be any symbol. Code inside the BODY forms can call `cl-return-from'
|
2007-06-27 19:14:41 +00:00
|
|
|
|
to jump prematurely out of the block. This differs from `catch' and `throw'
|
|
|
|
|
in two respects: First, the NAME is an unevaluated symbol rather than a
|
|
|
|
|
quoted symbol or other form; and second, NAME is lexically rather than
|
|
|
|
|
dynamically scoped: Only references to it within BODY will work. These
|
|
|
|
|
references may appear inside macro expansions, but not inside functions
|
|
|
|
|
called from BODY.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn NAME &rest BODY)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-block 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-return "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return from the block named nil.
|
2012-06-04 10:00:32 -04:00
|
|
|
|
This is equivalent to `(cl-return-from nil RESULT)'.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn &optional RESULT)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-return-from "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return from the block named NAME.
|
2012-06-04 10:00:32 -04:00
|
|
|
|
This jumps out to the innermost enclosing `(cl-block NAME ...)' form,
|
2007-06-27 19:14:41 +00:00
|
|
|
|
returning RESULT from that form (or nil if RESULT is omitted).
|
|
|
|
|
This is compatible with Common Lisp, but note that `defun' and
|
|
|
|
|
`defmacro' do not create implicit blocks as they do in Common Lisp.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn NAME &optional RESULT)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-return-from 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-loop "cl-macs" "\
|
|
|
|
|
The Common Lisp `cl-loop' macro.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Valid clauses are:
|
|
|
|
|
for VAR from/upfrom/downfrom NUM to/upto/downto/above/below NUM by NUM,
|
|
|
|
|
for VAR in LIST by FUNC, for VAR on LIST by FUNC, for VAR = INIT then EXPR,
|
|
|
|
|
for VAR across ARRAY, repeat NUM, with VAR = INIT, while COND, until COND,
|
|
|
|
|
always COND, never COND, thereis COND, collect EXPR into VAR,
|
|
|
|
|
append EXPR into VAR, nconc EXPR into VAR, sum EXPR into VAR,
|
|
|
|
|
count EXPR into VAR, maximize EXPR into VAR, minimize EXPR into VAR,
|
|
|
|
|
if COND CLAUSE [and CLAUSE]... else CLAUSE [and CLAUSE...],
|
|
|
|
|
unless COND CLAUSE [and CLAUSE]... else CLAUSE [and CLAUSE...],
|
|
|
|
|
do EXPRS..., initially EXPRS..., finally EXPRS..., return EXPR,
|
|
|
|
|
finally return EXPR, named NAME.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn CLAUSE...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-do "cl-macs" "\
|
|
|
|
|
The Common Lisp `cl-do' loop.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn ((VAR INIT [STEP])...) (END-TEST [RESULT...]) BODY...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-do 'lisp-indent-function '2)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-do* "cl-macs" "\
|
|
|
|
|
The Common Lisp `cl-do*' loop.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn ((VAR INIT [STEP])...) (END-TEST [RESULT...]) BODY...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-do* 'lisp-indent-function '2)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-dolist "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Loop over a list.
|
|
|
|
|
Evaluate BODY with VAR bound to each `car' from LIST, in turn.
|
|
|
|
|
Then evaluate RESULT to get return value, default nil.
|
2011-08-03 06:20:59 -04:00
|
|
|
|
An implicit nil block is established around the loop.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn (VAR LIST [RESULT]) BODY...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-07-12 06:20:34 -04:00
|
|
|
|
(put 'cl-dolist 'lisp-indent-function '1)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-dotimes "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Loop a certain number of times.
|
|
|
|
|
Evaluate BODY with VAR bound to successive integers from 0, inclusive,
|
|
|
|
|
to COUNT, exclusive. Then evaluate RESULT to get return value, default
|
|
|
|
|
nil.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn (VAR COUNT [RESULT]) BODY...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-07-12 06:20:34 -04:00
|
|
|
|
(put 'cl-dotimes 'lisp-indent-function '1)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-do-symbols "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Loop over all symbols.
|
|
|
|
|
Evaluate BODY with VAR bound to each interned symbol, or to each symbol
|
|
|
|
|
from OBARRAY.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn (VAR [OBARRAY [RESULT]]) BODY...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-do-symbols 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-do-all-symbols "cl-macs" "\
|
2011-03-06 16:22:16 -05:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn SPEC &rest BODY)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-do-all-symbols 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-psetq "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Set SYMs to the values VALs in parallel.
|
|
|
|
|
This is like `setq', except that all VAL forms are evaluated (in order)
|
|
|
|
|
before assigning any symbols SYM to the corresponding values.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn SYM VAL SYM VAL ...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-progv "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Bind SYMBOLS to VALUES dynamically in BODY.
|
|
|
|
|
The forms SYMBOLS and VALUES are evaluated, and must evaluate to lists.
|
|
|
|
|
Each symbol in the first list is bound to the corresponding value in the
|
|
|
|
|
second list (or made unbound if VALUES is shorter than SYMBOLS); then the
|
|
|
|
|
BODY forms are executed and their result is returned. This is much like
|
|
|
|
|
a `let' form, except that the list of symbols can be computed at run-time.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn SYMBOLS VALUES &rest BODY)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-progv 'lisp-indent-function '2)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-flet "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Make temporary function definitions.
|
2012-06-07 22:54:35 -04:00
|
|
|
|
Like `cl-labels' but the definitions are not recursive.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn ((FUNC ARGLIST BODY...) ...) FORM...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-flet 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-27 11:11:28 -04:00
|
|
|
|
(autoload 'cl-flet* "cl-macs" "\
|
|
|
|
|
Make temporary function definitions.
|
|
|
|
|
Like `cl-flet' but the definitions can refer to previous ones.
|
|
|
|
|
|
|
|
|
|
\(fn ((FUNC ARGLIST BODY...) ...) FORM...)" nil t)
|
|
|
|
|
|
|
|
|
|
(put 'cl-flet* 'lisp-indent-function '1)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-labels "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Make temporary function bindings.
|
2012-07-12 06:20:34 -04:00
|
|
|
|
The bindings can be recursive and the scoping is lexical, but capturing them
|
|
|
|
|
in closures will only work if `lexical-binding' is in use.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn ((FUNC ARGLIST BODY...) ...) FORM...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-labels 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-macrolet "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Make temporary macro definitions.
|
2012-06-04 10:00:32 -04:00
|
|
|
|
This is like `cl-flet', but for macros instead of functions.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn ((NAME ARGLIST BODY...) ...) FORM...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-macrolet 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-symbol-macrolet "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Make symbol macro definitions.
|
|
|
|
|
Within the body FORMs, references to the variable NAME will be replaced
|
Provide generalized variables in core Elisp.
* lisp/emacs-lisp/gv.el: New file.
* lisp/subr.el (push, pop): Extend to generalized variables.
* lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
* lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
* lisp/emacs-lisp/cl-macs.el: Require gv. Use gv-define-setter,
gv-define-simple-setter, and gv-define-expander.
Remove setf-methods defined in gv. Rename cl-setf -> setf.
(cl-setf, cl-do-pop, cl-get-setf-method): Remove.
(cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
(cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
(cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
gv-letplace.
(cl-defstruct): Don't define setf-method any more.
* lisp/emacs-lisp/cl.el (flet): Don't autoload.
(cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
(define-setf-expander, defsetf, define-modify-macro)
(cl-struct-setf-expander): Move from cl-lib.el.
* lisp/emacs-lisp/syntax.el:
* lisp/emacs-lisp/ewoc.el:
* lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/cconv.el:
* lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
(timer--time): Use gv-define-simple-setter.
* lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
to avoid coding-system problems in subr.el. Adjust all users.
(macroexp--maxsize, macroexp-small-p): New functions.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
* lisp/scroll-bar.el (scroll-bar-mode):
* lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode): Don't use the `eq' place.
* lisp/winner.el (winner-configuration, winner-make-point-alist)
(winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
* lisp/files.el (locate-file-completion-table): Avoid list*.
Fixes: debbugs:11657
2012-06-22 09:42:38 -04:00
|
|
|
|
by EXPANSION, and (setq NAME ...) will act like (setf EXPANSION ...).
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn ((NAME EXPANSION) ...) FORM...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-symbol-macrolet 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-multiple-value-bind "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Collect multiple return values.
|
|
|
|
|
FORM must return a list; the BODY is then executed with the first N elements
|
|
|
|
|
of this list bound (`let'-style) to each of the symbols SYM in turn. This
|
2012-06-04 10:00:32 -04:00
|
|
|
|
is analogous to the Common Lisp `cl-multiple-value-bind' macro, using lists to
|
|
|
|
|
simulate true multiple return values. For compatibility, (cl-values A B C) is
|
2007-06-27 19:14:41 +00:00
|
|
|
|
a synonym for (list A B C).
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn (SYM...) FORM BODY)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-multiple-value-bind 'lisp-indent-function '2)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-multiple-value-setq "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Collect multiple return values.
|
|
|
|
|
FORM must return a list; the first N elements of this list are stored in
|
|
|
|
|
each of the symbols SYM in turn. This is analogous to the Common Lisp
|
2012-06-04 10:00:32 -04:00
|
|
|
|
`cl-multiple-value-setq' macro, using lists to simulate true multiple return
|
|
|
|
|
values. For compatibility, (cl-values A B C) is a synonym for (list A B C).
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn (SYM...) FORM)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-multiple-value-setq 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-locally "cl-macs" "\
|
2011-03-06 16:22:16 -05:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn &rest BODY)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-the "cl-macs" "\
|
2011-03-11 15:04:22 -05:00
|
|
|
|
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn TYPE FORM)" nil t)
|
2011-03-11 15:04:22 -05:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-the 'lisp-indent-function '1)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-declare "cl-macs" "\
|
2011-07-15 19:21:57 +02:00
|
|
|
|
Declare SPECS about the current function while compiling.
|
2011-07-15 15:55:00 +02:00
|
|
|
|
For instance
|
2011-03-06 16:22:16 -05:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(cl-declare (warn 0))
|
2011-07-15 15:55:00 +02:00
|
|
|
|
|
2011-07-15 19:21:57 +02:00
|
|
|
|
will turn off byte-compile warnings in the function.
|
|
|
|
|
See Info node `(cl)Declarations' for details.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn &rest SPECS)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-psetf "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Set PLACEs to the values VALs in parallel.
|
Provide generalized variables in core Elisp.
* lisp/emacs-lisp/gv.el: New file.
* lisp/subr.el (push, pop): Extend to generalized variables.
* lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
* lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
* lisp/emacs-lisp/cl-macs.el: Require gv. Use gv-define-setter,
gv-define-simple-setter, and gv-define-expander.
Remove setf-methods defined in gv. Rename cl-setf -> setf.
(cl-setf, cl-do-pop, cl-get-setf-method): Remove.
(cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
(cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
(cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
gv-letplace.
(cl-defstruct): Don't define setf-method any more.
* lisp/emacs-lisp/cl.el (flet): Don't autoload.
(cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
(define-setf-expander, defsetf, define-modify-macro)
(cl-struct-setf-expander): Move from cl-lib.el.
* lisp/emacs-lisp/syntax.el:
* lisp/emacs-lisp/ewoc.el:
* lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/cconv.el:
* lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
(timer--time): Use gv-define-simple-setter.
* lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
to avoid coding-system problems in subr.el. Adjust all users.
(macroexp--maxsize, macroexp-small-p): New functions.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
* lisp/scroll-bar.el (scroll-bar-mode):
* lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode): Don't use the `eq' place.
* lisp/winner.el (winner-configuration, winner-make-point-alist)
(winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
* lisp/files.el (locate-file-completion-table): Avoid list*.
Fixes: debbugs:11657
2012-06-22 09:42:38 -04:00
|
|
|
|
This is like `setf', except that all VAL forms are evaluated (in order)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
before assigning any PLACEs to the corresponding values.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn PLACE VAL PLACE VAL ...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-remf "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Remove TAG from property list PLACE.
|
Provide generalized variables in core Elisp.
* lisp/emacs-lisp/gv.el: New file.
* lisp/subr.el (push, pop): Extend to generalized variables.
* lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
* lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
* lisp/emacs-lisp/cl-macs.el: Require gv. Use gv-define-setter,
gv-define-simple-setter, and gv-define-expander.
Remove setf-methods defined in gv. Rename cl-setf -> setf.
(cl-setf, cl-do-pop, cl-get-setf-method): Remove.
(cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
(cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
(cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
gv-letplace.
(cl-defstruct): Don't define setf-method any more.
* lisp/emacs-lisp/cl.el (flet): Don't autoload.
(cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
(define-setf-expander, defsetf, define-modify-macro)
(cl-struct-setf-expander): Move from cl-lib.el.
* lisp/emacs-lisp/syntax.el:
* lisp/emacs-lisp/ewoc.el:
* lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/cconv.el:
* lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
(timer--time): Use gv-define-simple-setter.
* lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
to avoid coding-system problems in subr.el. Adjust all users.
(macroexp--maxsize, macroexp-small-p): New functions.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
* lisp/scroll-bar.el (scroll-bar-mode):
* lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode): Don't use the `eq' place.
* lisp/winner.el (winner-configuration, winner-make-point-alist)
(winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
* lisp/files.el (locate-file-completion-table): Avoid list*.
Fixes: debbugs:11657
2012-06-22 09:42:38 -04:00
|
|
|
|
PLACE may be a symbol, or any generalized variable allowed by `setf'.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
The form returns true if TAG was found and removed, nil otherwise.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn PLACE TAG)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-shiftf "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Shift left among PLACEs.
|
2012-06-04 10:00:32 -04:00
|
|
|
|
Example: (cl-shiftf A B C) sets A to B, B to C, and returns the old A.
|
Provide generalized variables in core Elisp.
* lisp/emacs-lisp/gv.el: New file.
* lisp/subr.el (push, pop): Extend to generalized variables.
* lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
* lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
* lisp/emacs-lisp/cl-macs.el: Require gv. Use gv-define-setter,
gv-define-simple-setter, and gv-define-expander.
Remove setf-methods defined in gv. Rename cl-setf -> setf.
(cl-setf, cl-do-pop, cl-get-setf-method): Remove.
(cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
(cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
(cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
gv-letplace.
(cl-defstruct): Don't define setf-method any more.
* lisp/emacs-lisp/cl.el (flet): Don't autoload.
(cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
(define-setf-expander, defsetf, define-modify-macro)
(cl-struct-setf-expander): Move from cl-lib.el.
* lisp/emacs-lisp/syntax.el:
* lisp/emacs-lisp/ewoc.el:
* lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/cconv.el:
* lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
(timer--time): Use gv-define-simple-setter.
* lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
to avoid coding-system problems in subr.el. Adjust all users.
(macroexp--maxsize, macroexp-small-p): New functions.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
* lisp/scroll-bar.el (scroll-bar-mode):
* lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode): Don't use the `eq' place.
* lisp/winner.el (winner-configuration, winner-make-point-alist)
(winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
* lisp/files.el (locate-file-completion-table): Avoid list*.
Fixes: debbugs:11657
2012-06-22 09:42:38 -04:00
|
|
|
|
Each PLACE may be a symbol, or any generalized variable allowed by `setf'.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn PLACE... VAL)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-rotatef "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Rotate left among PLACEs.
|
2012-06-04 10:00:32 -04:00
|
|
|
|
Example: (cl-rotatef A B C) sets A to B, B to C, and C to A. It returns nil.
|
Provide generalized variables in core Elisp.
* lisp/emacs-lisp/gv.el: New file.
* lisp/subr.el (push, pop): Extend to generalized variables.
* lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
* lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
* lisp/emacs-lisp/cl-macs.el: Require gv. Use gv-define-setter,
gv-define-simple-setter, and gv-define-expander.
Remove setf-methods defined in gv. Rename cl-setf -> setf.
(cl-setf, cl-do-pop, cl-get-setf-method): Remove.
(cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
(cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
(cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
gv-letplace.
(cl-defstruct): Don't define setf-method any more.
* lisp/emacs-lisp/cl.el (flet): Don't autoload.
(cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
(define-setf-expander, defsetf, define-modify-macro)
(cl-struct-setf-expander): Move from cl-lib.el.
* lisp/emacs-lisp/syntax.el:
* lisp/emacs-lisp/ewoc.el:
* lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/cconv.el:
* lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
(timer--time): Use gv-define-simple-setter.
* lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
to avoid coding-system problems in subr.el. Adjust all users.
(macroexp--maxsize, macroexp-small-p): New functions.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
* lisp/scroll-bar.el (scroll-bar-mode):
* lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode): Don't use the `eq' place.
* lisp/winner.el (winner-configuration, winner-make-point-alist)
(winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
* lisp/files.el (locate-file-completion-table): Avoid list*.
Fixes: debbugs:11657
2012-06-22 09:42:38 -04:00
|
|
|
|
Each PLACE may be a symbol, or any generalized variable allowed by `setf'.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn PLACE...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-07-12 06:20:34 -04:00
|
|
|
|
(autoload 'cl-letf "cl-macs" "\
|
|
|
|
|
Temporarily bind to PLACEs.
|
|
|
|
|
This is the analogue of `let', but with generalized variables (in the
|
|
|
|
|
sense of `setf') for the PLACEs. Each PLACE is set to the corresponding
|
|
|
|
|
VALUE, then the BODY forms are executed. On exit, either normally or
|
|
|
|
|
because of a `throw' or error, the PLACEs are set back to their original
|
|
|
|
|
values. Note that this macro is *not* available in Common Lisp.
|
|
|
|
|
As a special case, if `(PLACE)' is used instead of `(PLACE VALUE)',
|
|
|
|
|
the PLACE is not modified before executing BODY.
|
|
|
|
|
|
|
|
|
|
\(fn ((PLACE VALUE) ...) BODY...)" nil t)
|
|
|
|
|
|
|
|
|
|
(put 'cl-letf 'lisp-indent-function '1)
|
|
|
|
|
|
|
|
|
|
(autoload 'cl-letf* "cl-macs" "\
|
|
|
|
|
Temporarily bind to PLACEs.
|
|
|
|
|
Like `cl-letf' but where the bindings are performed one at a time,
|
|
|
|
|
rather than all at the end (i.e. like `let*' rather than like `let').
|
|
|
|
|
|
|
|
|
|
\(fn BINDINGS &rest BODY)" nil t)
|
|
|
|
|
|
|
|
|
|
(put 'cl-letf* 'lisp-indent-function '1)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-callf "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Set PLACE to (FUNC PLACE ARGS...).
|
|
|
|
|
FUNC should be an unquoted function name. PLACE may be a symbol,
|
Provide generalized variables in core Elisp.
* lisp/emacs-lisp/gv.el: New file.
* lisp/subr.el (push, pop): Extend to generalized variables.
* lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
* lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
* lisp/emacs-lisp/cl-macs.el: Require gv. Use gv-define-setter,
gv-define-simple-setter, and gv-define-expander.
Remove setf-methods defined in gv. Rename cl-setf -> setf.
(cl-setf, cl-do-pop, cl-get-setf-method): Remove.
(cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
(cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
(cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
gv-letplace.
(cl-defstruct): Don't define setf-method any more.
* lisp/emacs-lisp/cl.el (flet): Don't autoload.
(cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
(define-setf-expander, defsetf, define-modify-macro)
(cl-struct-setf-expander): Move from cl-lib.el.
* lisp/emacs-lisp/syntax.el:
* lisp/emacs-lisp/ewoc.el:
* lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/cconv.el:
* lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
(timer--time): Use gv-define-simple-setter.
* lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
to avoid coding-system problems in subr.el. Adjust all users.
(macroexp--maxsize, macroexp-small-p): New functions.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
* lisp/scroll-bar.el (scroll-bar-mode):
* lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode): Don't use the `eq' place.
* lisp/winner.el (winner-configuration, winner-make-point-alist)
(winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
* lisp/files.el (locate-file-completion-table): Avoid list*.
Fixes: debbugs:11657
2012-06-22 09:42:38 -04:00
|
|
|
|
or any generalized variable allowed by `setf'.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
Provide generalized variables in core Elisp.
* lisp/emacs-lisp/gv.el: New file.
* lisp/subr.el (push, pop): Extend to generalized variables.
* lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
* lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
* lisp/emacs-lisp/cl-macs.el: Require gv. Use gv-define-setter,
gv-define-simple-setter, and gv-define-expander.
Remove setf-methods defined in gv. Rename cl-setf -> setf.
(cl-setf, cl-do-pop, cl-get-setf-method): Remove.
(cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
(cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
(cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
gv-letplace.
(cl-defstruct): Don't define setf-method any more.
* lisp/emacs-lisp/cl.el (flet): Don't autoload.
(cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
(define-setf-expander, defsetf, define-modify-macro)
(cl-struct-setf-expander): Move from cl-lib.el.
* lisp/emacs-lisp/syntax.el:
* lisp/emacs-lisp/ewoc.el:
* lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/cconv.el:
* lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
(timer--time): Use gv-define-simple-setter.
* lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
to avoid coding-system problems in subr.el. Adjust all users.
(macroexp--maxsize, macroexp-small-p): New functions.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
* lisp/scroll-bar.el (scroll-bar-mode):
* lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode): Don't use the `eq' place.
* lisp/winner.el (winner-configuration, winner-make-point-alist)
(winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
* lisp/files.el (locate-file-completion-table): Avoid list*.
Fixes: debbugs:11657
2012-06-22 09:42:38 -04:00
|
|
|
|
\(fn FUNC PLACE &rest ARGS)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-callf 'lisp-indent-function '2)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-callf2 "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Set PLACE to (FUNC ARG1 PLACE ARGS...).
|
2012-06-04 10:00:32 -04:00
|
|
|
|
Like `cl-callf', but PLACE is the second argument of FUNC, not the first.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn FUNC ARG1 PLACE ARGS...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-callf2 'lisp-indent-function '3)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-defstruct "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Define a struct type.
|
2010-01-16 15:04:29 -05:00
|
|
|
|
This macro defines a new data type called NAME that stores data
|
|
|
|
|
in SLOTs. It defines a `make-NAME' constructor, a `copy-NAME'
|
|
|
|
|
copier, a `NAME-p' predicate, and slot accessors named `NAME-SLOT'.
|
Provide generalized variables in core Elisp.
* lisp/emacs-lisp/gv.el: New file.
* lisp/subr.el (push, pop): Extend to generalized variables.
* lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
* lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
* lisp/emacs-lisp/cl-macs.el: Require gv. Use gv-define-setter,
gv-define-simple-setter, and gv-define-expander.
Remove setf-methods defined in gv. Rename cl-setf -> setf.
(cl-setf, cl-do-pop, cl-get-setf-method): Remove.
(cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
(cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
(cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
gv-letplace.
(cl-defstruct): Don't define setf-method any more.
* lisp/emacs-lisp/cl.el (flet): Don't autoload.
(cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
(define-setf-expander, defsetf, define-modify-macro)
(cl-struct-setf-expander): Move from cl-lib.el.
* lisp/emacs-lisp/syntax.el:
* lisp/emacs-lisp/ewoc.el:
* lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/cconv.el:
* lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
(timer--time): Use gv-define-simple-setter.
* lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
to avoid coding-system problems in subr.el. Adjust all users.
(macroexp--maxsize, macroexp-small-p): New functions.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
* lisp/scroll-bar.el (scroll-bar-mode):
* lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode): Don't use the `eq' place.
* lisp/winner.el (winner-configuration, winner-make-point-alist)
(winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
* lisp/files.el (locate-file-completion-table): Avoid list*.
Fixes: debbugs:11657
2012-06-22 09:42:38 -04:00
|
|
|
|
You can use the accessors to set the corresponding slots, via `setf'.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2010-01-16 15:04:29 -05:00
|
|
|
|
NAME may instead take the form (NAME OPTIONS...), where each
|
|
|
|
|
OPTION is either a single keyword or (KEYWORD VALUE).
|
|
|
|
|
See Info node `(cl)Structures' for a list of valid keywords.
|
|
|
|
|
|
|
|
|
|
Each SLOT may instead take the form (SLOT SLOT-OPTS...), where
|
|
|
|
|
SLOT-OPTS are keyword-value pairs for that slot. Currently, only
|
|
|
|
|
one keyword is supported, `:read-only'. If this has a non-nil
|
Provide generalized variables in core Elisp.
* lisp/emacs-lisp/gv.el: New file.
* lisp/subr.el (push, pop): Extend to generalized variables.
* lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
* lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
* lisp/emacs-lisp/cl-macs.el: Require gv. Use gv-define-setter,
gv-define-simple-setter, and gv-define-expander.
Remove setf-methods defined in gv. Rename cl-setf -> setf.
(cl-setf, cl-do-pop, cl-get-setf-method): Remove.
(cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
(cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
(cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
gv-letplace.
(cl-defstruct): Don't define setf-method any more.
* lisp/emacs-lisp/cl.el (flet): Don't autoload.
(cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
(define-setf-expander, defsetf, define-modify-macro)
(cl-struct-setf-expander): Move from cl-lib.el.
* lisp/emacs-lisp/syntax.el:
* lisp/emacs-lisp/ewoc.el:
* lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/cconv.el:
* lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
(timer--time): Use gv-define-simple-setter.
* lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
to avoid coding-system problems in subr.el. Adjust all users.
(macroexp--maxsize, macroexp-small-p): New functions.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
* lisp/scroll-bar.el (scroll-bar-mode):
* lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode): Don't use the `eq' place.
* lisp/winner.el (winner-configuration, winner-make-point-alist)
(winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
* lisp/files.el (locate-file-completion-table): Avoid list*.
Fixes: debbugs:11657
2012-06-22 09:42:38 -04:00
|
|
|
|
value, that slot cannot be set via `setf'.
|
2010-01-16 15:04:29 -05:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn NAME SLOTS...)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-defstruct 'doc-string-elt '2)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-09-04 13:40:25 -04:00
|
|
|
|
(put 'cl-defstruct 'lisp-indent-function '1)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-deftype "cl-macs" "\
|
2009-09-28 00:22:09 +00:00
|
|
|
|
Define NAME as a new data type.
|
2012-06-04 10:00:32 -04:00
|
|
|
|
The type name can then be used in `cl-typecase', `cl-check-type', etc.
|
2009-09-28 00:22:09 +00:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn NAME ARGLIST &rest BODY)" nil t)
|
2009-09-28 00:22:09 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(put 'cl-deftype 'doc-string-elt '3)
|
2012-05-17 21:46:20 -04:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-typep "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Check that OBJECT is of type TYPE.
|
|
|
|
|
TYPE is a Common Lisp-style type specifier.
|
|
|
|
|
|
|
|
|
|
\(fn OBJECT TYPE)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-check-type "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Verify that FORM is of type TYPE; signal an error if not.
|
|
|
|
|
STRING is an optional description of the desired type.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn FORM TYPE &optional STRING)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-assert "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Verify that FORM returns non-nil; signal an error if not.
|
|
|
|
|
Second arg SHOW-ARGS means to include arguments of FORM in message.
|
|
|
|
|
Other args STRING and ARGS... are arguments to be passed to `error'.
|
|
|
|
|
They are not evaluated unless the assertion fails. If STRING is
|
|
|
|
|
omitted, a default message listing FORM itself is used.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn FORM &optional SHOW-ARGS STRING &rest ARGS)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-define-compiler-macro "cl-macs" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Define a compiler-only macro.
|
|
|
|
|
This is like `defmacro', but macro expansion occurs only if the call to
|
|
|
|
|
FUNC is compiled (i.e., not interpreted). Compiler macros should be used
|
|
|
|
|
for optimizing the way calls to FUNC are compiled; the form returned by
|
|
|
|
|
BODY should do the same thing as a call to the normal function called
|
|
|
|
|
FUNC, though possibly more efficiently. Note that, like regular macros,
|
|
|
|
|
compiler macros are expanded repeatedly until no further expansions are
|
|
|
|
|
possible. Unlike regular macros, BODY can decide to \"punt\" and leave the
|
|
|
|
|
original function call alone by declaring an initial `&whole foo' parameter
|
|
|
|
|
and then returning foo.
|
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn FUNC ARGS &rest BODY)" nil t)
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-compiler-macroexpand "cl-macs" "\
|
2011-03-06 16:22:16 -05:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn FORM)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-defsubst "cl-macs" "\
|
2010-03-11 19:19:17 -08:00
|
|
|
|
Define NAME as a function.
|
|
|
|
|
Like `defun', except the function is automatically declared `inline',
|
|
|
|
|
ARGLIST allows full Common Lisp conventions, and BODY is implicitly
|
2012-06-04 10:00:32 -04:00
|
|
|
|
surrounded by (cl-block NAME ...).
|
2010-03-11 19:19:17 -08:00
|
|
|
|
|
2012-06-01 16:36:00 -04:00
|
|
|
|
\(fn NAME ARGLIST [DOCSTRING] BODY...)" nil t)
|
2010-03-11 19:19:17 -08:00
|
|
|
|
|
Provide generalized variables in core Elisp.
* lisp/emacs-lisp/gv.el: New file.
* lisp/subr.el (push, pop): Extend to generalized variables.
* lisp/loadup.el (macroexp): Unload if preloaded and uncompiled.
* lisp/emacs-lisp/cl-lib.el (cl-pop, cl-push, cl--set-nthcdr): Remove.
* lisp/emacs-lisp/cl-macs.el: Require gv. Use gv-define-setter,
gv-define-simple-setter, and gv-define-expander.
Remove setf-methods defined in gv. Rename cl-setf -> setf.
(cl-setf, cl-do-pop, cl-get-setf-method): Remove.
(cl-letf, cl-letf*, cl-define-modify-macro, cl-defsetf)
(cl-define-setf-expander, cl-struct-setf-expander): Move to cl.el.
(cl-remf, cl-shiftf, cl-rotatef, cl-callf, cl-callf2): Rewrite with
gv-letplace.
(cl-defstruct): Don't define setf-method any more.
* lisp/emacs-lisp/cl.el (flet): Don't autoload.
(cl--letf, letf, cl--letf*, letf*, cl--gv-adapt)
(define-setf-expander, defsetf, define-modify-macro)
(cl-struct-setf-expander): Move from cl-lib.el.
* lisp/emacs-lisp/syntax.el:
* lisp/emacs-lisp/ewoc.el:
* lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/cconv.el:
* lisp/emacs-lisp/timer.el: Rename cl-setf -> setf, cl-push -> push.
(timer--time): Use gv-define-simple-setter.
* lisp/emacs-lisp/macroexp.el (macroexp-let2): Rename from macroexp-let²
to avoid coding-system problems in subr.el. Adjust all users.
(macroexp--maxsize, macroexp-small-p): New functions.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don't use cl-letf.
* lisp/scroll-bar.el (scroll-bar-mode):
* lisp/simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode): Don't use the `eq' place.
* lisp/winner.el (winner-configuration, winner-make-point-alist)
(winner-set-conf, winner-get-point, winner-set): Don't abuse letf.
* lisp/files.el (locate-file-completion-table): Avoid list*.
Fixes: debbugs:11657
2012-06-22 09:42:38 -04:00
|
|
|
|
(put 'cl-defsubst 'lisp-indent-function '2)
|
|
|
|
|
|
Fix compiler-expansion of CL's cXXr functions.
* emacs-lisp/cl-lib.el (cl--defalias): New function.
(cl-values, cl-values-list, cl-copy-seq, cl-svref, cl-first)
(cl-second, cl-rest, cl-endp, cl-third, cl-fourth): Use it.
(cl-plusp, cl-minusp, cl-fifth, cl-sixth, cl-seventh, cl-eighth)
(cl-ninth, cl-tenth): Mark them as inlinable.
(cl-caaar, cl-caadr, cl-cadar, cl-caddr, cl-cdaar, cl-cdadr)
(cl-cddar, cl-cdddr, cl-caaaar, cl-caaadr, cl-caadar, cl-caaddr)
(cl-cadaar, cl-cadadr, cl-caddar, cl-cadddr, cl-cdaaar, cl-cdaadr)
(cl-cdadar, cl-cdaddr, cl-cddaar, cl-cddadr, cl-cdddar, cl-cddddr):
Add a compiler-macro declaration to use cl--compiler-macro-cXXr.
(cl-list*, cl-adjoin): Don't put an autoload manually.
* emacs-lisp/cl-macs.el (cl--compiler-macro-adjoin)
(cl--compiler-macro-list*): Add autoload cookie.
(cl--compiler-macro-cXXr): New function.
* help-fns.el (help-fns--compiler-macro): New function extracted from
describe-function-1; follow aliases and use `compiler-macro' property.
(describe-function-1): Use it.
Fixes: debbugs:11673
2012-06-11 16:35:00 -04:00
|
|
|
|
(autoload 'cl--compiler-macro-adjoin "cl-macs" "\
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\(fn FORM A LIST &rest KEYS)" nil nil)
|
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
;;;***
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
;;;### (autoloads (cl-tree-equal cl-nsublis cl-sublis cl-nsubst-if-not
|
|
|
|
|
;;;;;; cl-nsubst-if cl-nsubst cl-subst-if-not cl-subst-if cl-subsetp
|
|
|
|
|
;;;;;; cl-nset-exclusive-or cl-set-exclusive-or cl-nset-difference
|
|
|
|
|
;;;;;; cl-set-difference cl-nintersection cl-intersection cl-nunion
|
|
|
|
|
;;;;;; cl-union cl-rassoc-if-not cl-rassoc-if cl-rassoc cl-assoc-if-not
|
|
|
|
|
;;;;;; cl-assoc-if cl-assoc cl--adjoin cl-member-if-not cl-member-if
|
|
|
|
|
;;;;;; cl-member cl-merge cl-stable-sort cl-sort cl-search cl-mismatch
|
|
|
|
|
;;;;;; cl-count-if-not cl-count-if cl-count cl-position-if-not cl-position-if
|
|
|
|
|
;;;;;; cl-position cl-find-if-not cl-find-if cl-find cl-nsubstitute-if-not
|
|
|
|
|
;;;;;; cl-nsubstitute-if cl-nsubstitute cl-substitute-if-not cl-substitute-if
|
|
|
|
|
;;;;;; cl-substitute cl-delete-duplicates cl-remove-duplicates cl-delete-if-not
|
|
|
|
|
;;;;;; cl-delete-if cl-delete cl-remove-if-not cl-remove-if cl-remove
|
Use lexical-binding for all of CL, and clean up its namespace.
* lisp/emacs-lisp/cl-lib.el: Use lexical-binding.
(cl-map-extents, cl-maclisp-member): Remove.
(cl--set-elt, cl--set-nthcdr, cl--set-buffer-substring)
(cl--set-substring, cl--block-wrapper, cl--block-throw)
(cl--compiling-file, cl--mapcar-many, cl--do-subst): Use "cl--" prefix.
* lisp/emacs-lisp/cl-extra.el: Use lexical-binding.
(cl--mapcar-many, cl--map-keymap-recursively, cl--map-intervals)
(cl--map-overlays, cl--set-frame-visible-p, cl--progv-save)
(cl--progv-before, cl--progv-after, cl--finite-do, cl--set-getf)
(cl--do-remf, cl--do-prettyprint): Use "cl--" prefix.
* lisp/emacs-lisp/cl-seq.el: Use lexical-binding.
(cl--parsing-keywords, cl--check-key, cl--check-test-nokey)
(cl--check-test, cl--check-match): Use "cl--" prefix and backquotes.
(cl--alist, cl--sublis-rec, cl--nsublis-rec, cl--tree-equal-rec):
* lisp/emacs-lisp/cl-macs.el (cl--lambda-list-keywords): Use "cl--" prefix.
* lisp/edmacro.el (edmacro-mismatch): Simplify to remove dependence on
CL's internals.
2012-06-11 11:52:50 -04:00
|
|
|
|
;;;;;; cl-replace cl-fill cl-reduce) "cl-seq" "cl-seq.el" "b444601641dcbd14a23ca5182bc80ffa")
|
2007-06-27 19:14:41 +00:00
|
|
|
|
;;; Generated autoloads from cl-seq.el
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-reduce "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Reduce two-argument FUNCTION across SEQ.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :start :end :from-end :initial-value :key
|
|
|
|
|
|
|
|
|
|
\(fn FUNCTION SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-fill "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Fill the elements of SEQ with ITEM.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :start :end
|
|
|
|
|
|
|
|
|
|
\(fn SEQ ITEM [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-replace "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Replace the elements of SEQ1 with the elements of SEQ2.
|
|
|
|
|
SEQ1 is destructively modified, then returned.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :start1 :end1 :start2 :end2
|
|
|
|
|
|
|
|
|
|
\(fn SEQ1 SEQ2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-remove "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Remove all occurrences of ITEM in SEQ.
|
|
|
|
|
This is a non-destructive function; it makes a copy of SEQ if necessary
|
|
|
|
|
to avoid corrupting the original SEQ.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn ITEM SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-remove-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Remove all items satisfying PREDICATE in SEQ.
|
|
|
|
|
This is a non-destructive function; it makes a copy of SEQ if necessary
|
|
|
|
|
to avoid corrupting the original SEQ.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-remove-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Remove all items not satisfying PREDICATE in SEQ.
|
|
|
|
|
This is a non-destructive function; it makes a copy of SEQ if necessary
|
|
|
|
|
to avoid corrupting the original SEQ.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-delete "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Remove all occurrences of ITEM in SEQ.
|
|
|
|
|
This is a destructive function; it reuses the storage of SEQ whenever possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn ITEM SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-delete-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Remove all items satisfying PREDICATE in SEQ.
|
|
|
|
|
This is a destructive function; it reuses the storage of SEQ whenever possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-delete-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Remove all items not satisfying PREDICATE in SEQ.
|
|
|
|
|
This is a destructive function; it reuses the storage of SEQ whenever possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-remove-duplicates "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return a copy of SEQ with all duplicate elements removed.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-delete-duplicates "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Remove all duplicate elements from SEQ (destructively).
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-substitute "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for OLD in SEQ.
|
|
|
|
|
This is a non-destructive function; it makes a copy of SEQ if necessary
|
|
|
|
|
to avoid corrupting the original SEQ.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn NEW OLD SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-substitute-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for all items satisfying PREDICATE in SEQ.
|
|
|
|
|
This is a non-destructive function; it makes a copy of SEQ if necessary
|
|
|
|
|
to avoid corrupting the original SEQ.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn NEW PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-substitute-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for all items not satisfying PREDICATE in SEQ.
|
|
|
|
|
This is a non-destructive function; it makes a copy of SEQ if necessary
|
|
|
|
|
to avoid corrupting the original SEQ.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn NEW PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nsubstitute "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for OLD in SEQ.
|
|
|
|
|
This is a destructive function; it reuses the storage of SEQ whenever possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn NEW OLD SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nsubstitute-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for all items satisfying PREDICATE in SEQ.
|
|
|
|
|
This is a destructive function; it reuses the storage of SEQ whenever possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn NEW PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nsubstitute-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for all items not satisfying PREDICATE in SEQ.
|
|
|
|
|
This is a destructive function; it reuses the storage of SEQ whenever possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :count :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn NEW PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-find "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first occurrence of ITEM in SEQ.
|
|
|
|
|
Return the matching ITEM, or nil if not found.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn ITEM SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-find-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item satisfying PREDICATE in SEQ.
|
|
|
|
|
Return the matching item, or nil if not found.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-find-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item not satisfying PREDICATE in SEQ.
|
|
|
|
|
Return the matching item, or nil if not found.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-position "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first occurrence of ITEM in SEQ.
|
|
|
|
|
Return the index of the matching item, or nil if not found.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn ITEM SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-position-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item satisfying PREDICATE in SEQ.
|
|
|
|
|
Return the index of the matching item, or nil if not found.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-position-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item not satisfying PREDICATE in SEQ.
|
|
|
|
|
Return the index of the matching item, or nil if not found.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :start :end :from-end
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-count "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Count the number of occurrences of ITEM in SEQ.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :start :end
|
|
|
|
|
|
|
|
|
|
\(fn ITEM SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-count-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Count the number of items satisfying PREDICATE in SEQ.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :start :end
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-count-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Count the number of items not satisfying PREDICATE in SEQ.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key :start :end
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE SEQ [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-mismatch "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Compare SEQ1 with SEQ2, return index of first mismatching element.
|
|
|
|
|
Return nil if the sequences match. If one sequence is a prefix of the
|
|
|
|
|
other, the return value indicates the end of the shorter sequence.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :start1 :end1 :start2 :end2 :from-end
|
|
|
|
|
|
|
|
|
|
\(fn SEQ1 SEQ2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-search "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Search for SEQ1 as a subsequence of SEQ2.
|
|
|
|
|
Return the index of the leftmost element of the first match found;
|
|
|
|
|
return nil if there are no matches.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key :start1 :end1 :start2 :end2 :from-end
|
|
|
|
|
|
|
|
|
|
\(fn SEQ1 SEQ2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-sort "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Sort the argument SEQ according to PREDICATE.
|
|
|
|
|
This is a destructive function; it reuses the storage of SEQ if possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn SEQ PREDICATE [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-stable-sort "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Sort the argument SEQ stably according to PREDICATE.
|
|
|
|
|
This is a destructive function; it reuses the storage of SEQ if possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn SEQ PREDICATE [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-merge "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Destructively merge the two sequences to produce a new sequence.
|
|
|
|
|
TYPE is the sequence type to return, SEQ1 and SEQ2 are the two argument
|
|
|
|
|
sequences, and PREDICATE is a `less-than' predicate on the elements.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn TYPE SEQ1 SEQ2 PREDICATE [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-member "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first occurrence of ITEM in LIST.
|
|
|
|
|
Return the sublist of LIST whose car is ITEM.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn ITEM LIST [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-08 22:26:47 -04:00
|
|
|
|
(put 'cl-member 'compiler-macro #'cl--compiler-macro-member)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-member-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item satisfying PREDICATE in LIST.
|
|
|
|
|
Return the sublist of LIST whose car matches.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE LIST [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-member-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item not satisfying PREDICATE in LIST.
|
|
|
|
|
Return the sublist of LIST whose car matches.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE LIST [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-05-17 16:04:56 -04:00
|
|
|
|
(autoload 'cl--adjoin "cl-seq" "\
|
2012-01-05 06:49:08 -05:00
|
|
|
|
|
2007-06-27 19:14:41 +00:00
|
|
|
|
|
|
|
|
|
\(fn CL-ITEM CL-LIST &rest CL-KEYS)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-assoc "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item whose car matches ITEM in LIST.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn ITEM LIST [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-08 22:26:47 -04:00
|
|
|
|
(put 'cl-assoc 'compiler-macro #'cl--compiler-macro-assoc)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-assoc-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item whose car satisfies PREDICATE in LIST.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE LIST [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-assoc-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item whose car does not satisfy PREDICATE in LIST.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE LIST [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-rassoc "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item whose cdr matches ITEM in LIST.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn ITEM LIST [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-rassoc-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item whose cdr satisfies PREDICATE in LIST.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE LIST [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-rassoc-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Find the first item whose cdr does not satisfy PREDICATE in LIST.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn PREDICATE LIST [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-union "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Combine LIST1 and LIST2 using a set-union operation.
|
2011-02-10 12:07:15 +01:00
|
|
|
|
The resulting list contains all items that appear in either LIST1 or LIST2.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
This is a non-destructive function; it makes a copy of the data if necessary
|
|
|
|
|
to avoid corrupting the original LIST1 and LIST2.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn LIST1 LIST2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nunion "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Combine LIST1 and LIST2 using a set-union operation.
|
2011-02-10 12:07:15 +01:00
|
|
|
|
The resulting list contains all items that appear in either LIST1 or LIST2.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
This is a destructive function; it reuses the storage of LIST1 and LIST2
|
|
|
|
|
whenever possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn LIST1 LIST2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-intersection "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Combine LIST1 and LIST2 using a set-intersection operation.
|
2011-02-10 12:07:15 +01:00
|
|
|
|
The resulting list contains all items that appear in both LIST1 and LIST2.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
This is a non-destructive function; it makes a copy of the data if necessary
|
|
|
|
|
to avoid corrupting the original LIST1 and LIST2.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn LIST1 LIST2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nintersection "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Combine LIST1 and LIST2 using a set-intersection operation.
|
2011-02-10 12:07:15 +01:00
|
|
|
|
The resulting list contains all items that appear in both LIST1 and LIST2.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
This is a destructive function; it reuses the storage of LIST1 and LIST2
|
|
|
|
|
whenever possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn LIST1 LIST2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-set-difference "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Combine LIST1 and LIST2 using a set-difference operation.
|
2011-02-10 12:07:15 +01:00
|
|
|
|
The resulting list contains all items that appear in LIST1 but not LIST2.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
This is a non-destructive function; it makes a copy of the data if necessary
|
|
|
|
|
to avoid corrupting the original LIST1 and LIST2.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn LIST1 LIST2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nset-difference "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Combine LIST1 and LIST2 using a set-difference operation.
|
2011-02-10 12:07:15 +01:00
|
|
|
|
The resulting list contains all items that appear in LIST1 but not LIST2.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
This is a destructive function; it reuses the storage of LIST1 and LIST2
|
|
|
|
|
whenever possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn LIST1 LIST2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-set-exclusive-or "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Combine LIST1 and LIST2 using a set-exclusive-or operation.
|
2011-02-10 12:07:15 +01:00
|
|
|
|
The resulting list contains all items appearing in exactly one of LIST1, LIST2.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
This is a non-destructive function; it makes a copy of the data if necessary
|
|
|
|
|
to avoid corrupting the original LIST1 and LIST2.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn LIST1 LIST2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nset-exclusive-or "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Combine LIST1 and LIST2 using a set-exclusive-or operation.
|
2011-02-10 12:07:15 +01:00
|
|
|
|
The resulting list contains all items appearing in exactly one of LIST1, LIST2.
|
2007-06-27 19:14:41 +00:00
|
|
|
|
This is a destructive function; it reuses the storage of LIST1 and LIST2
|
|
|
|
|
whenever possible.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn LIST1 LIST2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-subsetp "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return true if LIST1 is a subset of LIST2.
|
|
|
|
|
I.e., if every element of LIST1 also appears in LIST2.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn LIST1 LIST2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-subst-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for elements matching PREDICATE in TREE (non-destructively).
|
|
|
|
|
Return a copy of TREE with all matching elements replaced by NEW.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn NEW PREDICATE TREE [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-subst-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for elts not matching PREDICATE in TREE (non-destructively).
|
|
|
|
|
Return a copy of TREE with all non-matching elements replaced by NEW.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn NEW PREDICATE TREE [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nsubst "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for OLD everywhere in TREE (destructively).
|
|
|
|
|
Any element of TREE which is `eql' to OLD is changed to NEW (via a call
|
|
|
|
|
to `setcar').
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn NEW OLD TREE [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nsubst-if "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for elements matching PREDICATE in TREE (destructively).
|
|
|
|
|
Any element of TREE which matches is changed to NEW (via a call to `setcar').
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn NEW PREDICATE TREE [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nsubst-if-not "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Substitute NEW for elements not matching PREDICATE in TREE (destructively).
|
|
|
|
|
Any element of TREE which matches is changed to NEW (via a call to `setcar').
|
|
|
|
|
|
|
|
|
|
Keywords supported: :key
|
|
|
|
|
|
|
|
|
|
\(fn NEW PREDICATE TREE [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-sublis "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Perform substitutions indicated by ALIST in TREE (non-destructively).
|
|
|
|
|
Return a copy of TREE with all matching elements replaced.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn ALIST TREE [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-nsublis "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Perform substitutions indicated by ALIST in TREE (destructively).
|
|
|
|
|
Any matching element of TREE is changed via a call to `setcar'.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn ALIST TREE [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
2012-06-04 10:00:32 -04:00
|
|
|
|
(autoload 'cl-tree-equal "cl-seq" "\
|
2007-06-27 19:14:41 +00:00
|
|
|
|
Return t if trees TREE1 and TREE2 have `eql' leaves.
|
|
|
|
|
Atoms are compared by `eql'; cons cells are compared recursively.
|
|
|
|
|
|
|
|
|
|
Keywords supported: :test :test-not :key
|
|
|
|
|
|
|
|
|
|
\(fn TREE1 TREE2 [KEYWORD VALUE]...)" nil nil)
|
|
|
|
|
|
|
|
|
|
;;;***
|
|
|
|
|
|
|
|
|
|
;; Local Variables:
|
|
|
|
|
;; version-control: never
|
|
|
|
|
;; no-byte-compile: t
|
|
|
|
|
;; no-update-autoloads: t
|
2010-04-20 22:05:24 -04:00
|
|
|
|
;; coding: utf-8
|
2007-06-27 19:14:41 +00:00
|
|
|
|
;; End:
|
|
|
|
|
;;; cl-loaddefs.el ends here
|