git.fiddlerwoaroof.com
Raw Blame History
;;;; package.lisp

(in-package :fwoar.sp-user)

(defmacro define-package (name &body arguments)
  (let ((uses (cons :use
		    (union '(:cl :alexandria :serapeum)
			   (cdr (assoc :use arguments))))))
    `(eval-when (:compile-toplevel :load-toplevel :execute)
       (defpackage ,name
	 ,uses
	 ,@(remove :use arguments :key 'car)))))

(define-package :stream-provider
  (:use :fw.lu)
  (:export
   #:get-stream-for
   #:stream-provider
   #:string-provider
   #:file-provider
   #:stream-key
   #:root
   #:streams
   #:with-storage-stream))