diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2021-04-01 23:38:57 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2021-04-01 23:38:57 -0700 |
commit | 8512a850bf9692052295e5242378011882d85976 (patch) | |
tree | b5c5c9649e5a62f99796d27156f771aed19c0cf8 /src/property/os.lisp | |
parent | f08df5cc392f16e5a702fbac4be0504842f30f00 (diff) | |
download | consfigurator-8512a850bf9692052295e5242378011882d85976.tar.gz |
OS:TYPECASE->OS:ETYPECASE & OS:HOST-TYPECASE->OS:HOST-ETYPECASE
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src/property/os.lisp')
-rw-r--r-- | src/property/os.lisp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/property/os.lisp b/src/property/os.lisp index f89534e..934dec8 100644 --- a/src/property/os.lisp +++ b/src/property/os.lisp @@ -83,7 +83,7 @@ ;;;; Property combinators -(define-function-property-combinator os-typecase* (host &rest cases) +(define-function-property-combinator os-etypecase* (host &rest cases) (flet ((choose-propapp () (or (loop with os = (class-of (if host (car (getf (hostattrs host) :os)) @@ -91,7 +91,7 @@ for (type propapp) on cases by #'cddr when (subtypep os type) return propapp) (inapplicable-property - "Host's OS ~S fell through OS:TYPECASE." + "Host's OS ~S fell through OS:ETYPECASE." (class-of (get-hostattrs-car :os)))))) (:retprop :type (collapse-types (loop for propapp in (cdr cases) by #'cddr collect (propapptype propapp))) @@ -108,11 +108,11 @@ (declare (ignore args)) (propappunapply (choose-propapp)))))) -(defmacro typecase (&body cases) - `(host-typecase nil ,@cases)) +(defmacro etypecase (&body cases) + `(host-etypecase nil ,@cases)) -(defmacro host-typecase (host &body cases) - `(os-typecase* +(defmacro host-etypecase (host &body cases) + `(os-etypecase* ,host ,@(loop for case in cases collect `',(intern (symbol-name (car case)) |