emacs/test/lisp/emacs-lisp
Mattias Engdegård ea93326cc0 Add union' and intersection' to rx (bug#37849)
These character set operations, together with `not' for set
complement, improve the compositionality of rx, and reduce duplication
in complicated cases.  Named character classes are not permitted in
set operations.

* lisp/emacs-lisp/rx.el (rx--translate-any): Split into multiple
functions.
(rx--foldl, rx--parse-any, rx--generate-alt, rx--intervals-to-alt)
(rx--complement-intervals, rx--intersect-intervals)
(rx--union-intervals, rx--charset-intervals, rx--charset-union)
(rx--charset-all, rx--charset-intersection, rx--translate-union)
(rx--translate-intersection): New.
(rx--translate-not, rx--translate-form, rx--builtin-forms, rx):
Add `union' and `intersection'.
* test/lisp/emacs-lisp/rx-tests.el (rx-union ,rx-def-in-union)
(rx-intersection, rx-def-in-intersection): New tests.
* doc/lispref/searching.texi (Rx Constructs):
* etc/NEWS:
Document `union' and `intersection'.
2019-12-10 22:37:47 +01:00
..
edebug-resources Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
eieio-tests Merge from origin/emacs-26 2019-06-01 12:04:42 -07:00
faceup-resources Update more copyright years 2018-12-31 18:47:22 -08:00
faceup-tests Update more copyright years 2018-12-31 18:47:22 -08:00
package-resources Don't try to add nil packages on refresh 2019-10-21 00:00:36 +02:00
shadow-resources Handle case-insensitive filenames for load-path shadows (Bug#5845) 2018-01-18 16:26:52 -05:00
testcover-resources `unknown' test case now works 2019-07-28 11:40:30 +02:00
backquote-tests.el Add backquote tests 2019-09-16 22:57:35 +02:00
backtrace-tests.el Improve print output options commands in backtrace-mode (bug#36566) 2019-09-13 13:43:07 -07:00
benchmark-tests.el Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
bindat-tests.el Also test unpacking 2019-06-15 16:10:28 +02:00
bytecomp-tests.el Conditionalize result of a bytecomp test 2019-07-09 03:27:26 -07:00
cconv-tests.el Update more copyright years 2018-12-31 18:47:22 -08:00
checkdoc-tests.el Remove two checkdoc tests checked in by mistake 2019-10-11 07:46:41 +02:00
cl-extra-tests.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
cl-generic-tests.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
cl-lib-tests.el Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
cl-macs-tests.el Refix conditional step clauses in cl-loop 2019-11-22 15:53:58 +01:00
cl-preloaded-tests.el Update some URLs 2019-09-23 00:12:52 -07:00
cl-print-tests.el Create common tests for print.c and cl-print.el 2019-09-13 13:43:07 -07:00
cl-seq-tests.el Fix cl-member' and cl-assoc' for bignums 2019-06-01 18:13:00 -07:00
derived-tests.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
edebug-tests.el Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
ert-tests.el Correctly explain test failures with mixed uni/multibyte strings 2019-10-13 20:29:27 +02:00
ert-x-tests.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
generator-tests.el Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
gv-tests.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
let-alist-tests.el Make let-alist work with vectors 2019-07-28 23:28:24 +02:00
lisp-mode-tests.el Improve errors & warnings due to fancy quoted vars (Bug#32939) 2019-11-28 18:10:07 -05:00
lisp-tests.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
map-tests.el * lisp/emacs-lisp/map.el (map-into) <hash-table>: Allow keyword args 2019-10-11 12:18:21 -04:00
nadvice-tests.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
package-tests.el Don't try to add nil packages on refresh 2019-10-21 00:00:36 +02:00
pcase-tests.el Tighter pcase or-pattern member function selection (bug#36139) 2019-06-19 11:20:58 +02:00
pp-tests.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
regexp-opt-tests.el Optimise more inputs to `regexp-opt' (bug#36444) 2019-07-04 17:18:15 +02:00
ring-tests.el Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
rmc-tests.el ; Fix read-multiple-choice test 2019-05-26 21:55:00 -04:00
rx-tests.el Add union' and intersection' to rx (bug#37849) 2019-12-10 22:37:47 +01:00
seq-tests.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
shadow-tests.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
subr-x-tests.el Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
tabulated-list-test.el Update copyright year to 2019 2019-01-01 01:01:13 +00:00
testcover-tests.el Merge from origin/emacs-26 2018-12-31 17:57:29 -08:00
text-property-search-tests.el Add tests for text-property-search to check prop-match-value 2019-07-06 16:27:05 +02:00
thunk-tests.el Go back to "Maintainer: emacs-devel@gnu.org" 2019-05-25 14:25:18 -07:00
timer-tests.el New function time-convert 2019-08-05 18:37:29 -07:00