git.fiddlerwoaroof.com
protocol.lisp
4cc1ee49
 (in-package :fwoar.cl-git)
 
 (defgeneric -extract-object-of-type (type s repository &key &allow-other-keys)
   (:method ((type (eql :blob)) s repository &key)
     s)
 
   (:method ((type (eql :tag)) s repository &key)
     s))
 
 (defgeneric component (component object)
   (:argument-precedence-order object component)
   (:method (component (object git-ref))
     (component component (extract-object object)))
   (:method ((component sequence) object)
     (reduce (lambda (cur next)
               (component next cur))
             component
             :initial-value object)))