aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/combinator.lisp18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/combinator.lisp b/src/combinator.lisp
index 8c7a14b..ee70d62 100644
--- a/src/combinator.lisp
+++ b/src/combinator.lisp
@@ -127,15 +127,17 @@ ON-CHANGE in order."
:hostattrs (lambda (&rest args)
(apply #'propattrs (car propapp) args))
:apply (lambda (&rest args)
- (unless (eq (propappapply (cons (car propapp) args))
- :no-change)
- (dolist (propapp propapps)
- (propappapply propapp))))
+ (if (eql :no-change
+ (propappapply (cons (car propapp) args)))
+ :no-change
+ (dolist (propapp propapps)
+ (propappapply propapp))))
:unapply (lambda (&rest args)
- (unless (eq (propappunapply (cons (car propapp) args))
- :no-change)
- (dolist (propapp (reverse propapps))
- (propappunapply propapp))))
+ (if (eql :no-change
+ (propappunapply (cons (car propapp) args)))
+ :no-change
+ (dolist (propapp (reverse propapps))
+ (propappunapply propapp))))
:args (cdr propapp)))
(defmacro as (user &body properties)