summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/cl-seq.el
Commit message (Collapse)AuthorAgeFilesLines
* cl-reduce doc string improvementColin Woodbury2022-08-181-0/+4
| | | | | * lisp/emacs-lisp/cl-seq.el (cl-reduce): Explain what happens when using :from-end (bug#57273).
* ; Add 2022 to copyright years.Eli Zaretskii2022-01-011-1/+1
|
* Update copyright year to 2021Paul Eggert2021-01-011-1/+1
| | | | Run "TZ=UTC0 admin/update-copyright".
* Don't quote lambdas in emacs-lisp/*.elStefan Kangas2020-11-161-7/+6
| | | | | | | | | | | | * lisp/emacs-lisp/cl-seq.el (cl--parsing-keywords, cl-sort): * lisp/emacs-lisp/cl-macs.el (cl-typecase): * lisp/emacs-lisp/cl-extra.el (cl-some, cl-every) (cl--map-keymap-recursively): * lisp/emacs-lisp/advice.el (ad-insert-argument-access-forms): * lisp/emacs-lisp/edebug.el (edebug-sort-alist) (edebug-set-windows): * lisp/emacs-lisp/pp.el (pp-display-expression): * lisp/emacs-lisp/regi.el (regi-interpret): Don't quote lambdas.
* Make more load-hooks obsolete (Bug#21563)Stefan Kangas2020-10-201-0/+2
| | | | | | | | | | | | | | | | | | | * lisp/progmodes/dcl-mode.el (dcl-mode): * lisp/progmodes/idlw-complete-structtag.el: Recommend with-eval-after-load instead of load-hooks. * lisp/calc/calc-ext.el (calc-ext-load-hook): * lisp/emacs-lisp/bytecomp.el (bytecomp-load-hook): * lisp/emacs-lisp/cl-extra.el (cl-extra-load-hook): * lisp/emacs-lisp/cl-macs.el (cl-macs-load-hook): * lisp/emacs-lisp/cl-seq.el (cl-seq-load-hook): * lisp/gnus/message.el (message-load-hook): * lisp/gnus/nnheader.el (nnheader-load-hook): * lisp/gnus/nnmail.el (nnmail-load-hook): * lisp/progmodes/dcl-mode.el (dcl-mode-load-hook): * lisp/textmodes/tex-mode.el (tex-mode-load-hook): * lisp/whitespace.el (whitespace-load-hook): Obsolete for with-eval-after-load. Note that these variables are never declared, but the byte-compiler will still warn about them if used.
* Update copyright year to 2020Paul Eggert2020-01-011-1/+1
| | | | Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
* Improve recent doc fix for cl-reduceBasil L. Contovounesios2019-10-071-8/+10
| | | | | | | * lisp/emacs-lisp/cl-seq.el: (cl-reduce): Clarify treatment of :INITIAL-VALUE when :FROM-END is non-nil. Improve wording when SEQ is empty and :INITIAL-VALUE is unspecified (bug#37400). Describe behavior when SEQ comprises a single element.
* cl-reduce doc fixLars Ingebrigtsen2019-10-071-0/+5
| | | | | * lisp/emacs-lisp/cl-seq.el (cl-reduce): Clarify what happens when SEQ is the empty list (bug#37400).
* * lisp/emacs-lisp/bytecomp.el (byte-compile-dynamic): Mark obsoleteStefan Monnier2019-06-211-1/+0
| | | | | | | | | | | | See bug#11649 for an example problem, and emacs-devel discussion «Prickliness of the "invalid byte code" stuff». * lisp/wid-edit.el, lisp/wdired.el, lisp/vc/pcvs-util.el: * lisp/progmodes/executable.el, lisp/mail/sendmail.el: * lisp/emacs-lisp/cl-seq.el, lisp/emacs-lisp/cl-macs.el: * lisp/emacs-lisp/cl-lib.el, lisp/emacs-lisp/cl-extra.el: * lisp/dired-x.el, lisp/dired-aux.el, lisp/calendar/calendar.el: Don't use byte-compile-dynamic any more.
* Tune cl-assocPaul Eggert2019-06-011-1/+1
| | | | * lisp/emacs-lisp/cl-seq.el (cl-assoc): Use assq for fixnums.
* Fix `cl-member' and `cl-assoc' for bignumsMattias Engdegård2019-06-011-4/+2
| | | | | * lisp/emacs-lisp/cl-seq.el (cl-member, cl-assoc): Work with bignums. * test/lisp/emacs-lisp/cl-seq-tests.el (cl-seq-bignum-eql): New.
* * lisp/emacs-lisp/cl-lib.el (cl-endp): Move to cl-seq.elStefan Monnier2019-02-181-0/+7
| | | | Use 'cl-check-type'.
* Update copyright year to 2019Paul Eggert2019-01-011-1/+1
| | | | Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
* Update copyright year to 2018Paul Eggert2018-01-011-1/+1
| | | | Run admin/update-copyright.
* Prefer HTTPS to FTP and HTTP in documentationPaul Eggert2017-09-131-1/+1
| | | | | | | | | | | | | Most of this change is to boilerplate commentary such as license URLs. This change was prompted by ftp://ftp.gnu.org's going-away party, planned for November. Change these FTP URLs to https://ftp.gnu.org instead. Make similar changes for URLs to other organizations moving away from FTP. Also, change HTTP to HTTPS for URLs to gnu.org and fsf.org when this works, as this will further help defend against man-in-the-middle attacks (for this part I omitted the MS-DOS and MS-Windows sources and the test tarballs to keep the workload down). HTTPS is not fully working to lists.gnu.org so I left those URLs alone for now.
* Merge from origin/emacs-25Paul Eggert2017-01-011-1/+1
|\ | | | | | | | | 2e2a806 Fix copyright years by hand 5badc81 Update copyright year to 2017
| * Update copyright year to 2017Paul Eggert2016-12-311-1/+1
| | | | | | | | Run admin/update-copyright.
* | cl-seq: Remove max limit on input sequence lengthTino Calancha2016-10-201-31/+39
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/cl-seq.el (cl-fill, cl-replace, cl-delete) (cl--position, cl-nsubstitute, cl-substitute, cl-remove): Remove limit on maximum length for the input sequence (#Bug24264). * test/lisp/emacs-lisp/cl-seq-tests.el: Update test expected result as passed.
* | cl-fill: Rename arguments to cl-seq and cl-itemTino Calancha2016-08-131-9/+9
| | | | | | | | | | * lisp/emacs-lisp/cl-seq.el (cl-fill): Rename arguments to 'cl-seq' and 'cl-item' as elsewhere.
* | cl-delete-duplicates: Parse :if to have cl-if boundTino Calancha2016-08-101-1/+2
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates): We need also to parse keyword :if, otherwise cl-if is unbound. This reverts commit: 68fdbeb917b80e29e0b15506f18f7ed41d8ffdfd
* | cl-delete-duplicates: do not parse :if keywordTino Calancha2016-08-101-1/+1
| | | | | | | | | | * lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates): Parse only the supported keywords.
* | Better documentation for cl-reduce (bug#24014)Nicolas Petton2016-07-181-0/+10
|/ | | | * lisp/emacs-lisp/cl-seq.el (cl-reduce): Explain what reducing means.
* (cl-union): Do not ignore :test argument when lists are equal.Nicolas Richard2016-02-231-1/+1
| | | | | | * cl-seq.el (cl-union): Do not ignore :test argument when lists are equal. * test/automated/cl-seq-tests.el: New file (bug#22729).
* Update copyright year to 2016Paul Eggert2016-01-011-1/+1
| | | | Run admin/update-copyright.
* Rename "search path" to "library roots"Dmitry Gutov2015-11-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order of the elements from CL-LIST1. * test/automated/cl-lib-tests.el (cl-lib-test-set-functions): Update WRT to the above change. * lisp/progmodes/project.el (project-search-path-function): Rename to project-library-roots-function, update the documentation and references. (project-search-path): Likewise, to project-library-roots. (project-roots): Clarify documentation. (project-vc-search-path): Likewise, to project-vc-library-roots. (project-library-roots): In addition to the renames, thread the results through file-name-as-directory. (project-prune-directories): Accept a variable number of arguments. Rename to project-combine-directories. (project-subtract-directories): New function. * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): Append project-roots and project-library-roots together. * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
* Fix bootstrap (void function cl-member).Glenn Morris2015-05-131-0/+2
| | | | | * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file. * lisp/emacs-lisp/cl-seq.el: Provide a feature.
* Update copyright year to 2015Paul Eggert2015-01-011-1/+1
| | | | Run admin/update-copyright.
* * lisp/emacs-lisp/cl-macs.el (cl-struct-slot-offset): Mark as pure.Stefan Monnier2014-04-211-3/+3
| | | | | | | | | | | (cl--set-elt): Don't proclaim as inline. (cl-struct-slot-value): Remove explicit gv-setter and compiler-macro. Define as inlinable instead. (cl-struct-set-slot-value): Remove. * doc/misc/cl.texi (Structures): Remove cl-struct-set-slot-value. * lisp/emacs-lisp/cl-lib.el (cl--set-elt): Remove. * lisp/emacs-lisp/cl-seq.el (cl-replace, cl-substitute, cl-nsubstitute): Use setf instead.
* Update copyright year to 2014 by running admin/update-copyright.Paul Eggert2014-01-011-1/+1
|
* * lisp/emacs-lisp/package.el: Include obsolete packages from archives.Stefan Monnier2013-06-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use lexical-binding. (package-archive-contents): Change format; include obsolete packages. (package-desc): Use `dir' to mark builtin packages. (package--from-builtin): Set the `dir' field to `builtin'. (generated-autoload-file, version-control): Declare. (package-compute-transaction): Change first arg and return value to be lists of package-descs. Adjust to new package-archive-contents format. (package--add-to-archive-contents): Adjust to new package-archive-contents format. (package-download-transaction): Arg is now a list of package-descs. (package-install): If `pkg' is a package name, pass it as a requirement, so it is subject to the usual (e.g. disabled) checks. (describe-package): Accept package-desc as well. (describe-package-1): Describe a specific package-desc. Add links to other package-descs for the same package name. (package-menu-describe-package): Pass the actual package-desc. (package-menu-mode): Add to tabulated-list-revert-hook so revert-buffer works correctly. (package-desc-status): New function. (package-menu--refresh): New function, extracted from package-menu--generate. (package-menu--generate): Use it. (package-delete): Update package-alist. (package-menu-execute): Don't call package-initialize. * lisp/progmodes/idlw-toolbar.el, lisp/progmodes/idlw-shell.el, lisp/progmodes/idlw-help.el, lisp/progmodes/idlw-complete-structtag.el, lisp/progmodes/ebnf-yac.el, lisp/progmodes/ebnf-otz.el, lisp/progmodes/ebnf-iso.el, lisp/progmodes/ebnf-ebx.el, lisp/progmodes/ebnf-dtd.el, lisp/progmodes/ebnf-bnf.el, lisp/progmodes/ebnf-abn.el, lisp/emacs-lisp/package-x.el, lisp/emacs-lisp/cl-seq.el, lisp/emacs-lisp/cl-macs.el lisp/cedet/data-debug.el, lisp/cedet/cedet-idutils.el: Neuter the "Version:" header.
* Merge from emacs-24; up to 2012-12-06T01:39:03Z!monnier@iro.umontreal.caPaul Eggert2013-01-021-1/+1
|\
| * Update copyright notices for 2013.Paul Eggert2013-01-011-1/+1
| |
* | Further cleanup of the "cl-" namespace. Fit CL in 80 columns.Stefan Monnier2012-12-061-2/+7
|/ | | | | | | | | | | | | * lisp/emacs-lisp/cl-macs.el (cl--pop2, cl--optimize-safety) (cl--optimize-speed, cl--not-toplevel, cl--parse-loop-clause) (cl--expand-do-loop, cl--proclaim-history, cl--declare-stack) (cl--do-proclaim, cl--proclaims-deferred): Rename from the "cl-" prefix. (cl-progv): Don't rely on dynamic scoping to find the body. * lisp/emacs-lisp/cl-lib.el (cl--optimize-speed, cl--optimize-safety) (cl--proclaims-deferred): Rename from the "cl-" prefix. (cl-declaim): Use backquotes. * lisp/emacs-lisp/cl-extra.el (cl-make-random-state, cl-random-state-p): Use "cl--" prefix for the object's tag.
* * bytecomp.el (byte-compile-cl-file-p): Only "cl.el" counts as cl these days.Glenn Morris2012-09-281-1/+0
| | | | | Remove no longer appropriate file-local suppression of CL warnings in lisp/emacs-lisp/cl-*.el files.
* Use lexical-binding for all of CL, and clean up its namespace.Stefan Monnier2012-06-111-139/+132
| | | | | | | | | | | | | | | | | | | | * 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.
* Don't autoload functions too eagerly during macroexpansion.Stefan Monnier2012-06-081-0/+4
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Only autoload a function if there's a clear indication that it has a compiler-macro. * lisp/emacs-lisp/byte-run.el (defun-declarations-alist, defmacro, defun) (macro-declarations-alist): Add arglist to declaration functions. (defun-declarations-alist): Add `obsolete' and `compiler-macro'. * lisp/emacs-lisp/cl-seq.el (cl-member, cl-assoc): * lisp/emacs-lisp/cl-lib.el (cl-list*, cl-adjoin): * lisp/emacs-lisp/cl-extra.el (cl-get): Use the new `declare' statement. Also add autoload to find the compiler macro. * lisp/emacs-lisp/cl-macs.el (eql) [compiler-macro]: Remove. (cl--compiler-macro-member, cl--compiler-macro-assoc) (cl--compiler-macro-adjoin, cl--compiler-macro-list*) (cl--compiler-macro-get): New functions, replacing calls to cl-define-compiler-macro. (cl-typep) [compiler-macro]: Use macroexp-let².
* * lisp/emacs-lisp/cl-lib.el: Rename from cl.el.Stefan Monnier2012-06-031-106/+106
| | | | | | | | * lisp/emacs-lisp/cl.el: New compatibility file. * emacs-lisp/cl-lib.el, lisp/emacs-lisp/cl-seq.el, lisp/emacs-lisp/cl-macs.el: * lisp/emacs-lisp/cl-extra.el: Rename all top-level functions and variables to obey the "cl-" prefix. * lisp/emacs-lisp/macroexp.el (macroexpand-all-1): Adjust to new name.
* Minor renaming of internal CL functions and variables.Stefan Monnier2012-05-171-20/+20
| | | | | | | | * lisp/emacs-lisp/cl-seq.el (cl--adjoin): Rename from cl-adjoin. (cl--position): Rename from cl-position. (cl--delete-duplicates): Rename from cl-delete-duplicates. * lisp/emacs-lisp/cl.el (cl--gensym-counter): Rename from *gensym-counter*. (cl--random-state): Rename from *random-state*.
* Add 2012 to FSF copyright years for Emacs filesGlenn Morris2012-01-051-1/+1
|
* Merge changes from emacs-23 branchChong Yidong2011-02-121-8/+8
|\
| * cl-seq.el doc fixes.Glenn Morris2011-02-091-8/+8
| | | | | | | | | | | | * lisp/emacs-lisp/cl-seq.el (union, nunion, intersection) (nintersection, set-difference, nset-difference) (set-exclusive-or, nset-exclusive-or): Doc fix.
* | Convert consecutive FSF copyright years to ranges.Glenn Morris2011-01-241-2/+1
| |
* | Nuke arch-tags.Glenn Morris2011-01-151-1/+0
| |
* | Merge from emacs-23Stefan Monnier2011-01-141-1/+1
|\|
| * Add 2011 to FSF/AIST copyright years.Glenn Morris2011-01-021-1/+1
| |
* | Use `declare' in defmacros.Stefan Monnier2010-08-301-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/window.el (save-selected-window): * lisp/subr.el (with-temp-file, with-temp-message, with-syntax-table): * lisp/progmodes/python.el (def-python-skeleton): * lisp/net/dbus.el (dbus-ignore-errors): * lisp/jka-cmpr-hook.el (with-auto-compression-mode): * lisp/international/mule.el (with-category-table): * lisp/emacs-lisp/timer.el (with-timeout): * lisp/emacs-lisp/lisp-mnt.el (lm-with-file): * lisp/emacs-lisp/eieio.el (with-slots): * lisp/emacs-lisp/easymenu.el (easy-menu-define): * lisp/emacs-lisp/debug.el (debugger-env-macro): * lisp/emacs-lisp/cl-compat.el (Multiple-value-bind, Multiple-value-setq) (Multiple-value-call, Multiple-value-prog1): * lisp/emacs-lisp/cl-seq.el (cl-parsing-keywords, cl-check-key) (cl-check-test-nokey, cl-check-test, cl-check-match): Move indent and edebug rule to definition. * lisp/emacs-lisp/lisp-mode.el (save-selected-window) (with-current-buffer, combine-after-change-calls) (with-output-to-string, with-temp-file, with-temp-buffer) (with-temp-message, with-syntax-table, read-if, eval-after-load) (dolist, dotimes, when, unless): * lisp/emacs-lisp/byte-run.el (inline): Remove indent rule, redundant.
* | Add "Package:" file headers to denote built-in packages.Chong Yidong2010-08-291-0/+1
|/
* Add 2010 to copyright years.Glenn Morris2010-01-131-1/+1
|
* Add 2009 to copyright years.Glenn Morris2009-01-051-1/+1
|
* Simply require 'cl (silences spurious warnings).Glenn Morris2008-07-161-7/+3
|