Skip to content
Snippets Groups Projects
Commit 8914d215 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau
Browse files

Hush some warnings

parent 60d0d8f7
No related branches found
No related tags found
No related merge requests found
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
#+sbcl (require :sb-posix) #+sbcl (require :sb-posix)
(defsystem :inferior-shell (defsystem :inferior-shell
:defsystem-depends-on (:asdf-condition-control)
:depends-on (:asdf :xcvb-driver :fare-utils :fare-matcher :fare-quasiquote-readtable :fare-mop :alexandria) :depends-on (:asdf :xcvb-driver :fare-utils :fare-matcher :fare-quasiquote-readtable :fare-mop :alexandria)
:description "spawn local or remote processes and shell pipes" :description "spawn local or remote processes and shell pipes"
:components :components
......
...@@ -82,29 +82,29 @@ ...@@ -82,29 +82,29 @@
(with-slots (process predicate rest) result (with-slots (process predicate rest) result
(format stream "~A ~A ~A" process predicate rest)))) (format stream "~A ~A ~A" process predicate rest))))
; (defgeneric result-or ((result r)))
; (defgeneric result-and ((result r)))
(defmethod generic-run-spec ((spec or-spec) input output error predicate rest resume) (defmethod generic-run-spec ((spec or-spec) input output error predicate rest resume)
(declare (ignorable predicate rest))
(list (make-instance 'result :predicate #'result-or :input input :output output (list (make-instance 'result :predicate #'result-or :input input :output output
:error error :rest (sequence-processes spec) :resume resume))) :error error :rest (sequence-processes spec) :resume resume)))
(defmethod generic-run-spec ((spec and-spec) input output error predicate rest resume) (defmethod generic-run-spec ((spec and-spec) input output error predicate rest resume)
(declare (ignorable predicate rest))
(list (make-instance 'result :predicate #'result-and :input input :output output (list (make-instance 'result :predicate #'result-and :input input :output output
:error error :rest (sequence-processes spec) :resume resume))) :error error :rest (sequence-processes spec) :resume resume)))
(defmethod generic-run-spec ((spec progn-spec) input output error predicate rest resume) (defmethod generic-run-spec ((spec progn-spec) input output error predicate rest resume)
(declare (ignorable predicate rest))
(list (make-instance 'result :predicate nil :input input :output output (list (make-instance 'result :predicate nil :input input :output output
:error error :rest (sequence-processes spec) :resume resume))) :error error :rest (sequence-processes spec) :resume resume)))
(defmethod generic-run-spec ((spec fork-spec) input output error predicate rest resume) (defmethod generic-run-spec ((spec fork-spec) input output error predicate rest resume)
(declare (ignorable predicate rest resume))
(loop :for p :in (sequence-processes spec) :do (loop :for p :in (sequence-processes spec) :do
(generic-run-spec p input output error nil nil nil)) (generic-run-spec p input output error nil nil nil))
nil) nil)
(defmethod generic-run-spec ((spec pipe-spec) input output error predicate rest resume) (defmethod generic-run-spec ((spec pipe-spec) input output error predicate rest resume)
(declare (ignorable predicate rest resume))
(let ((processes (sequence-processes spec)) (let ((processes (sequence-processes spec))
(r-input) (r-input)
(r-output) (r-output)
......
...@@ -2,6 +2,10 @@ ...@@ -2,6 +2,10 @@
(in-package :inferior-shell) (in-package :inferior-shell)
(defgeneric result-or (result))
(defgeneric result-and (result))
(defmethod result-or ((r result)) (defmethod result-or ((r result))
(not (zerop (sb-ext:process-exit-code (result-process r))))) (not (zerop (sb-ext:process-exit-code (result-process r)))))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment