]> git.eshelyaron.com Git - emacs.git/commit
Optimise more inputs to `regexp-opt' (bug#36444)
authorMattias Engdegård <mattiase@acm.org>
Sun, 30 Jun 2019 10:53:52 +0000 (12:53 +0200)
committerMattias Engdegård <mattiase@acm.org>
Thu, 4 Jul 2019 15:18:15 +0000 (17:18 +0200)
commit3fd74915121a3eac265170e20bd19b3cde6a2589
tree7abac1b1a1c5241dc9226edf2e99373dd0e966f8
parent2bc90e0ce0f349b8c80aa8df782f991b64aa7398
Optimise more inputs to `regexp-opt' (bug#36444)

Use a more precise test to determine whether the input to `regexp-opt'
is safe to optimise when KEEP-ORDER is non-nil, permitting more inputs
to be optimised than before.  For example, ("good" "goal" "go") is now
accepted.

* lisp/emacs-lisp/regexp-opt.el (regexp-opt):
More precise test for whether the list is safe w.r.t. KEEP-ORDER.
(regexp-opt--contains-prefix): Remove.

* test/lisp/emacs-lisp/regexp-opt-tests.el: Use lexical-binding.
(regexp-opt-test--permutation, regexp-opt-test--factorial)
(regexp-opt-test--permutations, regexp-opt-test--match-all)
(regexp-opt-test--check-perm, regexp-opt-test--explain-perm)
(regexp-opt-keep-order): Test KEEP-ORDER.
lisp/emacs-lisp/regexp-opt.el
test/lisp/emacs-lisp/regexp-opt-tests.el