[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/buttercup ef293a62df 1/9: Fix: (buttercup--enclosed-expr)
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/buttercup ef293a62df 1/9: Fix: (buttercup--enclosed-expr) byte-code functions |
Date: |
Wed, 10 Aug 2022 18:58:13 -0400 (EDT) |
branch: elpa/buttercup
commit ef293a62dff34ad705de8799489ee2f0cfa67ec6
Author: Adam Porter <adam@alphapapa.net>
Commit: GitHub <noreply@github.com>
Fix: (buttercup--enclosed-expr) byte-code functions
Accept byte-code functions (useful when test files are byte-compiled in
advance).
Fixes #218.
---
buttercup.el | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/buttercup.el b/buttercup.el
index 7033c3a198..738c252301 100644
--- a/buttercup.el
+++ b/buttercup.el
@@ -57,7 +57,8 @@
(defun buttercup--enclosed-expr (fun)
"Given a zero-arg function FUN, return its unevaluated expression.
-The function MUST have one of the following forms:
+The function MUST be byte-compiled or have one of the following
+forms:
\(lambda () EXPR)
\(lambda () (buttercup--mark-stackframe) EXPR)
@@ -84,6 +85,10 @@ forms are useful if EXPR is a macro call, in which case the
(error "Function contains multiple expressions: %S" fun))
(`(lambda ,(pred identity) . ,(pred identity))
(error "Function has nonempty arglist: %S" fun))
+ ((and (pred byte-code-function-p) (guard (member (aref fun 0) '(nil 0))))
+ (aref fun 1))
+ ((pred byte-code-function-p)
+ (error "Byte-compiled function expects arguments: %S" fun))
(_ (error "Not a zero-arg one-expression closure: %S" fun))))
(defun buttercup--expr-and-value (fun)
- [nongnu] elpa/buttercup updated (62176a39ee -> 497f6c2795), ELPA Syncer, 2022/08/10
- [nongnu] elpa/buttercup ec4d94f7d5 3/9: tests: Create enclosed expressions with buttercup--wrap-expr, ELPA Syncer, 2022/08/10
- [nongnu] elpa/buttercup ef293a62df 1/9: Fix: (buttercup--enclosed-expr) byte-code functions,
ELPA Syncer <=
- [nongnu] elpa/buttercup 8dda6ef8c9 2/9: Refactor the expect macro, ELPA Syncer, 2022/08/10
- [nongnu] elpa/buttercup 1bb0ba9439 8/9: Merge PR 219 into byte-compiled, ELPA Syncer, 2022/08/10
- [nongnu] elpa/buttercup 497f6c2795 9/9: Merge branch 'byte-compiled', ELPA Syncer, 2022/08/10
- [nongnu] elpa/buttercup 4cbd106609 5/9: tests: Use buttercup--wrap-expr instead of make-list-of-closures, ELPA Syncer, 2022/08/10
- [nongnu] elpa/buttercup 435fc0d378 4/9: tests: Fix some buttercup-expect tests, ELPA Syncer, 2022/08/10
- [nongnu] elpa/buttercup 0e26b1bbed 6/9: Clean up buttercup--enclosed-expr, ELPA Syncer, 2022/08/10
- [nongnu] elpa/buttercup cdbb8b061d 7/9: tests: Add tests for buttercup--enclosed-expr, ELPA Syncer, 2022/08/10