1. 20 Dec, 2018 1 commit
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/map.el: Add support for plists · f68f2eb4
      Stefan Monnier authored
      (map--plist-p, map--plist-delete): New functions.
      (map-elt, map-delete, map-length, map-into, map-put!, map-insert)
      (map-apply, map-do): Handle the plist case.
      
      * test/lisp/emacs-lisp/map-tests.el (with-maps-do): Add sample plist.
      (test-map-put!): The behavior of map-put! is not the same for plists as
      for alists.
      f68f2eb4
  2. 17 Dec, 2018 1 commit
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/map.el: Avoid special casing lists. · 55838e4e
      Stefan Monnier authored
      (map-not-inplace, map-inplace): New errors.
      (map-insert): New generic function.
      (map-put!): Signal map-not-inplace rather than a generic 'error'.
      (map-elt): Use map-not-inplace and map-insert to avoid hardcoding
      a special case for lists.
      
      * test/lisp/emacs-lisp/map-tests.el (test-map-put!): Rename from
      test-map-put.  Also test the errors signaled.
      55838e4e
  3. 01 Jan, 2018 1 commit
  4. 24 Oct, 2017 1 commit
  5. 13 Sep, 2017 1 commit
    • Paul Eggert's avatar
      Prefer HTTPS to FTP and HTTP in documentation · bc511a64
      Paul Eggert authored
      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.
      bc511a64
  6. 04 Aug, 2017 1 commit
    • Noam Postavsky's avatar
      ; Fix map-tests when compiled · 3a0f2dfa
      Noam Postavsky authored
      * test/lisp/emacs-lisp/map-tests.el (test-map-elt-testfn)
      (test-map-put-testfn-alist): Make sure the lookup key is really non-eq
      to the map's key, even if the code is compiled.
      3a0f2dfa
  7. 17 Jul, 2017 1 commit
    • Tino Calancha's avatar
      alist-get: Add optional arg TESTFN · 76e1f7d0
      Tino Calancha authored
      If TESTFN is non-nil, then it is the predicate to lookup
      the alist.  Otherwise, use 'eq' (Bug#27584).
      * lisp/subr.el (alist-get): Add optional arg FULL.
      * lisp/emacs-lisp/map.el (map-elt, map-put): Add optional arg TESTFN.
      * lisp/emacs-lisp/gv.el (alist-get): Update expander.
      * doc/lispref/lists.texi (Association Lists): Update manual.
      * etc/NEWS: Announce the changes.
      * test/lisp/emacs-lisp/map-tests.el (test-map-put-testfn-alist)
      (test-map-elt-testfn): New tests.
      76e1f7d0
  8. 18 Jun, 2016 1 commit
    • NicolasPetton's avatar
      Add new function map-do · 2aebb0dd
      NicolasPetton authored
      * lisp/emacs-lisp/map.el (map-do, map--do-alist, map--do-array): New
        functions.
      * test/lisp/emacs-lisp/map-tests.el: Add a unit test for map-do.
      2aebb0dd
  9. 24 Nov, 2015 1 commit
    • Phillip Lord's avatar
      Rename all test files to reflect source layout. · 22bbf7ca
      Phillip Lord authored
       * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
         test directory moves.
       * test/file-organisation.org: New file.
       * test/automated/Makefile.in
         test/automated/data/decompress/foo.gz
         test/automated/data/epg/pubkey.asc
         test/automated/data/epg/seckey.asc
         test/automated/data/files-bug18141.el.gz
         test/automated/data/flymake/test.c
         test/automated/data/flymake/test.pl
         test/automated/data/package/archive-contents
         test/automated/data/package/key.pub
         test/automated/data/package/key.sec
         test/automated/data/package/multi-file-0.2.3.tar
         test/automated/data/package/multi-file-readme.txt
         test/automated/data/package/newer-versions/archive-contents
         test/automated/data/package/newer-versions/new-pkg-1.0.el
         test/automated/data/package/newer-versions/simple-single-1.4.el
         test/automated/data/package/package-test-server.py
         test/automated/data/package/signed/archive-contents
         test/automated/data/package/signed/archive-contents.sig
         test/automated/data/package/signed/signed-bad-1.0.el
         test/automated/data/package/signed/signed-bad-1.0.el.sig
         test/automated/data/package/signed/signed-good-1.0.el
         test/automated/data/package/signed/signed-good-1.0.el.sig
         test/automated/data/package/simple-depend-1.0.el
         test/automated/data/package/simple-single-1.3.el
         test/automated/data/package/simple-single-readme.txt
         test/automated/data/package/simple-two-depend-1.1.el
         test/automated/abbrev-tests.el
         test/automated/auto-revert-tests.el
         test/automated/calc-tests.el
         test/automated/icalendar-tests.el
         test/automated/character-fold-tests.el
         test/automated/comint-testsuite.el
         test/automated/descr-text-test.el
         test/automated/electric-tests.el
         test/automated/cl-generic-tests.el
         test/automated/cl-lib-tests.el
         test/automated/eieio-test-methodinvoke.el
         test/automated/eieio-test-persist.el
         test/automated/eieio-tests.el
         test/automated/ert-tests.el
         test/automated/ert-x-tests.el
         test/automated/generator-tests.el
         test/automated/let-alist.el
         test/automated/map-tests.el
         test/automated/advice-tests.el
         test/automated/package-test.el
         test/automated/pcase-tests.el
         test/automated/regexp-tests.el
         test/automated/seq-tests.el
         test/automated/subr-x-tests.el
         test/automated/tabulated-list-test.el
         test/automated/thunk-tests.el
         test/automated/timer-tests.el
         test/automated/epg-tests.el
         test/automated/eshell.el
         test/automated/faces-tests.el
         test/automated/file-notify-tests.el
         test/automated/auth-source-tests.el
         test/automated/gnus-tests.el
         test/automated/message-mode-tests.el
         test/automated/help-fns.el
         test/automated/imenu-test.el
         test/automated/info-xref.el
         test/automated/mule-util.el
         test/automated/isearch-tests.el
         test/automated/json-tests.el
         test/automated/bytecomp-tests.el
         test/automated/coding-tests.el
         test/automated/core-elisp-tests.el
         test/automated/decoder-tests.el
         test/automated/files.el
         test/automated/font-parse-tests.el
         test/automated/lexbind-tests.el
         test/automated/occur-tests.el
         test/automated/process-tests.el
         test/automated/syntax-tests.el
         test/automated/textprop-tests.el
         test/automated/undo-tests.el
         test/automated/man-tests.el
         test/automated/completion-tests.el
         test/automated/dbus-tests.el
         test/automated/newsticker-tests.el
         test/automated/sasl-scram-rfc-tests.el
         test/automated/tramp-tests.el
         test/automated/obarray-tests.el
         test/automated/compile-tests.el
         test/automated/elisp-mode-tests.el
         test/automated/f90.el
         test/automated/flymake-tests.el
         test/automated/python-tests.el
         test/automated/ruby-mode-tests.el
         test/automated/subword-tests.el
         test/automated/replace-tests.el
         test/automated/simple-test.el
         test/automated/sort-tests.el
         test/automated/subr-tests.el
         test/automated/reftex-tests.el
         test/automated/sgml-mode-tests.el
         test/automated/tildify-tests.el
         test/automated/thingatpt.el
         test/automated/url-future-tests.el
         test/automated/url-util-tests.el
         test/automated/add-log-tests.el
         test/automated/vc-bzr.el
         test/automated/vc-tests.el
         test/automated/xml-parse-tests.el
         test/BidiCharacterTest.txt
         test/biditest.el
         test/cedet/cedet-utests.el
         test/cedet/ede-tests.el
         test/cedet/semantic-ia-utest.el
         test/cedet/semantic-tests.el
         test/cedet/semantic-utest-c.el
         test/cedet/semantic-utest.el
         test/cedet/srecode-tests.el
         test/cedet/tests/test.c
         test/cedet/tests/test.el
         test/cedet/tests/test.make
         test/cedet/tests/testdoublens.cpp
         test/cedet/tests/testdoublens.hpp
         test/cedet/tests/testfriends.cpp
         test/cedet/tests/testjavacomp.java
         test/cedet/tests/testnsp.cpp
         test/cedet/tests/testpolymorph.cpp
         test/cedet/tests/testspp.c
         test/cedet/tests/testsppcomplete.c
         test/cedet/tests/testsppreplace.c
         test/cedet/tests/testsppreplaced.c
         test/cedet/tests/testsubclass.cpp
         test/cedet/tests/testsubclass.hh
         test/cedet/tests/testtypedefs.cpp
         test/cedet/tests/testvarnames.c
         test/etags/CTAGS.good
         test/etags/ETAGS.good_1
         test/etags/ETAGS.good_2
         test/etags/ETAGS.good_3
         test/etags/ETAGS.good_4
         test/etags/ETAGS.good_5
         test/etags/ETAGS.good_6
         test/etags/a-src/empty.zz
         test/etags/a-src/empty.zz.gz
         test/etags/ada-src/2ataspri.adb
         test/etags/ada-src/2ataspri.ads
         test/etags/ada-src/etags-test-for.ada
         test/etags/ada-src/waroquiers.ada
         test/etags/c-src/a/b/b.c
         test/etags/c-src/abbrev.c
         test/etags/c-src/c.c
         test/etags/c-src/dostorture.c
         test/etags/c-src/emacs/src/gmalloc.c
         test/etags/c-src/emacs/src/keyboard.c
         test/etags/c-src/emacs/src/lisp.h
         test/etags/c-src/emacs/src/regex.h
         test/etags/c-src/etags.c
         test/etags/c-src/exit.c
         test/etags/c-src/exit.strange_suffix
         test/etags/c-src/fail.c
         test/etags/c-src/getopt.h
         test/etags/c-src/h.h
         test/etags/c-src/machsyscalls.c
         test/etags/c-src/machsyscalls.h
         test/etags/c-src/sysdep.h
         test/etags/c-src/tab.c
         test/etags/c-src/torture.c
         test/etags/cp-src/MDiagArray2.h
         test/etags/cp-src/Range.h
         test/etags/cp-src/burton.cpp
         test/etags/cp-src/c.C
         test/etags/cp-src/clheir.cpp.gz
         test/etags/cp-src/clheir.hpp
         test/etags/cp-src/conway.cpp
         test/etags/cp-src/conway.hpp
         test/etags/cp-src/fail.C
         test/etags/cp-src/functions.cpp
         test/etags/cp-src/screen.cpp
         test/etags/cp-src/screen.hpp
         test/etags/cp-src/x.cc
         test/etags/el-src/TAGTEST.EL
         test/etags/el-src/emacs/lisp/progmodes/etags.el
         test/etags/erl-src/gs_dialog.erl
         test/etags/f-src/entry.for
         test/etags/f-src/entry.strange.gz
         test/etags/f-src/entry.strange_suffix
         test/etags/forth-src/test-forth.fth
         test/etags/html-src/algrthms.html
         test/etags/html-src/index.shtml
         test/etags/html-src/software.html
         test/etags/html-src/softwarelibero.html
         test/etags/lua-src/allegro.lua
         test/etags/objc-src/PackInsp.h
         test/etags/objc-src/PackInsp.m
         test/etags/objc-src/Subprocess.h
         test/etags/objc-src/Subprocess.m
         test/etags/objcpp-src/SimpleCalc.H
         test/etags/objcpp-src/SimpleCalc.M
         test/etags/pas-src/common.pas
         test/etags/perl-src/htlmify-cystic
         test/etags/perl-src/kai-test.pl
         test/etags/perl-src/yagrip.pl
         test/etags/php-src/lce_functions.php
         test/etags/php-src/ptest.php
         test/etags/php-src/sendmail.php
         test/etags/prol-src/natded.prolog
         test/etags/prol-src/ordsets.prolog
         test/etags/ps-src/rfc1245.ps
         test/etags/pyt-src/server.py
         test/etags/tex-src/gzip.texi
         test/etags/tex-src/nonewline.tex
         test/etags/tex-src/testenv.tex
         test/etags/tex-src/texinfo.tex
         test/etags/y-src/atest.y
         test/etags/y-src/cccp.c
         test/etags/y-src/cccp.y
         test/etags/y-src/parse.c
         test/etags/y-src/parse.y
         test/indent/css-mode.css
         test/indent/js-indent-init-dynamic.js
         test/indent/js-indent-init-t.js
         test/indent/js-jsx.js
         test/indent/js.js
         test/indent/latex-mode.tex
         test/indent/modula2.mod
         test/indent/nxml.xml
         test/indent/octave.m
         test/indent/pascal.pas
         test/indent/perl.perl
         test/indent/prolog.prolog
         test/indent/ps-mode.ps
         test/indent/ruby.rb
         test/indent/scheme.scm
         test/indent/scss-mode.scss
         test/indent/sgml-mode-attribute.html
         test/indent/shell.rc
         test/indent/shell.sh
         test/redisplay-testsuite.el
         test/rmailmm.el
         test/automated/buffer-tests.el
         test/automated/cmds-tests.el
         test/automated/data-tests.el
         test/automated/finalizer-tests.el
         test/automated/fns-tests.el
         test/automated/inotify-test.el
         test/automated/keymap-tests.el
         test/automated/print-tests.el
         test/automated/libxml-tests.el
         test/automated/zlib-tests.el: Files Moved.
      22bbf7ca
  10. 11 Nov, 2015 1 commit
    • NicolasPetton's avatar
      Rename seq-p and map-p to seqp and mapp · 51d840a8
      NicolasPetton authored
      * lisp/emacs-lisp/seq.el (seqp): New name.
      * lisp/emacs-lisp/map.el (mapp): New name.
      * doc/lispref/sequences.texi: Update the documentation for seqp.
      * test/automated/map-tests.el: Update the tests for mapp.
      51d840a8
  11. 10 Nov, 2015 1 commit
  12. 05 Sep, 2015 2 commits
    • NicolasPetton's avatar
      Improve the semantic of map-some · 1b5fda5c
      NicolasPetton authored
      Update map-some to return the returned by the predicate, similar to
      seq-some.
      
      * lisp/emacs-lisp/map.el (map-some): Update the function to return the
        return value of the predicate.
      * test/automated/map-tests.el (test-map-some): Update the test to check
        for non-nil values only.
      1b5fda5c
    • NicolasPetton's avatar
      Rename map-contains-key-p and map-some-p · a1535f93
      NicolasPetton authored
      Remove the "-p" suffix from both function names.
      
      * lisp/emacs-lisp/map.el (map-contains-key, map-some): Rename the functions.
      * test/automated/map-tests.el (test-map-contains-key, test-map-some):
        Update both test functions.
      a1535f93
  13. 09 Jul, 2015 2 commits
  14. 21 Jun, 2015 2 commits
  15. 05 Jun, 2015 2 commits
  16. 02 Jun, 2015 1 commit
  17. 25 Apr, 2015 1 commit
  18. 24 Apr, 2015 2 commits
    • NicolasPetton's avatar
      Do not signal an error when trying to delete a key from an array · d75151a6
      NicolasPetton authored
      * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
      the key is present to avoid signaling an error.
      
      * test/automated/map-tests.el: Add a test for deleting non-existing
      keys from maps.
      d75151a6
    • NicolasPetton's avatar
      Minor improvement in map-elt. · f37e265e
      NicolasPetton authored
      * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
      doing a lookup in arrays, but check the boundaries of the array
      instead.
      
      * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
      and a negative integer as key.
      f37e265e
  19. 21 Apr, 2015 2 commits
  20. 18 Apr, 2015 2 commits