[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/el-search 9f8b3d2 071/332: New function el-search--macr
From: |
Stefan Monnier |
Subject: |
[elpa] externals/el-search 9f8b3d2 071/332: New function el-search--macroexpand-1 for debugging |
Date: |
Tue, 1 Dec 2020 15:48:14 -0500 (EST) |
branch: externals/el-search
commit 9f8b3d2b92b4d6556c3bae7d47e3da99bcb836af
Author: Michael Heerdegen <michael_heerdegen@web.de>
Commit: Michael Heerdegen <michael_heerdegen@web.de>
New function el-search--macroexpand-1 for debugging
---
el-search.el | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/el-search.el b/el-search.el
index aaca388..a1bdd23 100644
--- a/el-search.el
+++ b/el-search.el
@@ -389,6 +389,17 @@ of the definitions is limited to \"el-search\"."
`(setf (alist-get ',name el-search--pcase-macros)
(lambda ,args ,@body)))
+(defun el-search--macroexpand-1 (pattern)
+ "Expand \"el-search\" PATTERN.
+This is like `pcase--macroexpand', but expands only patterns
+defined with `el-search-defpattern' and performs only one
+expansion step.
+
+Return PATTERN if this pattern type was not defined with
+`el-search-defpattern'."
+ (if-let ((expander (alist-get (car-safe pattern) el-search--pcase-macros)))
+ (apply expander (cdr pattern))
+ pattern))
(defmacro el-search--with-additional-pcase-macros (&rest body)
`(cl-letf ,(mapcar (pcase-lambda (`(,symbol . ,fun))
- [elpa] externals/el-search 2b4c194 055/332: remove annoying message on how to repeat el-search, (continued)
- [elpa] externals/el-search 2b4c194 055/332: remove annoying message on how to repeat el-search, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 30fef15 056/332: use more newlines in `el-search--make-docstring', Stefan Monnier, 2020/12/01
- [elpa] externals/el-search c090afe 057/332: el-search: new pattern type `contains', Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 7e13746 058/332: When coming from isearch, don't move to other end, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 5837187 059/332: el-search: bump version to 0.1.3, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 108466e 061/332: Support highlighting of all visible matches, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 177d82e 063/332: use uninterned symbol in `el-search--matcher', Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 5517384 065/332: Improve doc of el-search-this-expression-identifier., Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 1e97c09 069/332: Fix for non-interactive calls of el-search-pattern, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search c0efb8d 067/332: New user option: el-search-smart-case-fold-search, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 9f8b3d2 071/332: New function el-search--macroexpand-1 for debugging,
Stefan Monnier <=
- [elpa] externals/el-search 975e2e5 073/332: Rewrite `string' pattern definition, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 2dc14bb 075/332: Rewrite replacement layout restoration, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 14c7cf9 074/332: el-search--check-pattern-args: make arg TYPE a string, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search fc46701 076/332: Replacing: make C-g an alternative key for quitting, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search a61e0eb 079/332: Handle replacements containing another match, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 4325b91 080/332: Rename two functions, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search ba17f50 086/332: Give el-search--s a more meaningful name, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search d25f4d8 082/332: Address compiler warnings, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 2358b72 088/332: Small fix in el-search--setup-minibuffer, Stefan Monnier, 2020/12/01
- [elpa] externals/el-search 75b5849 083/332: Clarify the operation scope of replacing, Stefan Monnier, 2020/12/01