diff options
| -rw-r--r-- | src/wait-group.lisp | 19 | ||||
| -rw-r--r-- | wait-group.asd | 2 | 
2 files changed, 17 insertions, 4 deletions
| diff --git a/src/wait-group.lisp b/src/wait-group.lisp index 35bb982..f7e5259 100644 --- a/src/wait-group.lisp +++ b/src/wait-group.lisp @@ -1,27 +1,38 @@ +;;;; TODO + +;; TODO: Add a wg:clear +  (in-package :wait-group)  (defclass wait-group ()    ((counter       :initform 0 -     :accessor counter))) +     :accessor counter +     :documentation "TODO")) + +  (:documentation "TODO"))  (defun make-wait-group () +  "TODO"    (make-instance 'wait-group))  (defgeneric add (wait-group &optional amount) -  (:documentation "")) +  (:documentation "TODO"))  (defmethod add ((wait-group wait-group) &optional (amount 1)) +  "TODO"    (incf (counter wait-group) amount))  (defgeneric done (wait-group) -  (:documentation "")) +  (:documentation "TODO"))  (defmethod done ((wait-group wait-group)) +  "TODO"    (decf (counter wait-group)))  (defgeneric wait (wait-group) -  (:documentation "")) +  (:documentation "TODO"))  (defmethod wait ((wait-group wait-group)) +  "TODO"    (loop until (= (counter wait-group) 0))) diff --git a/wait-group.asd b/wait-group.asd index ac7e280..6a01756 100644 --- a/wait-group.asd +++ b/wait-group.asd @@ -1,5 +1,7 @@  (asdf:defsystem wait-group +  :description "TODO"    :version "0.0.1" +    :components ((:module "src"                  :serial t                  :components ((:file "package") | 
