Add `:initial-contents` for `make-queue`
    
        | author | Steve Losh <steve@stevelosh.com> | 
    
        | date | Sun, 08 Dec 2019 12:29:06 -0500 | 
    
    
        | parents | 2309743a485d | 
    
        | children | 164b3e41c13b | 
    
        | branches/tags | (none) | 
    
        | files | src/queues.lisp | 
Changes
    
--- a/src/queues.lisp	Fri Dec 06 21:04:10 2019 -0500
+++ b/src/queues.lisp	Sun Dec 08 12:29:06 2019 -0500
@@ -10,7 +10,7 @@
 
 
 (declaim
-  (ftype (function ()
+  (ftype (function (&key (:initial-contents list))
                    (values queue &optional))
          make-queue)
   (ftype (function (queue)
@@ -27,9 +27,12 @@
          queue-append))
 
 
-(defun-inlineable make-queue ()
+(defun-inlineable make-queue (&key initial-contents)
   "Allocate and return a fresh queue."
-  (make-queue%))
+  (let ((queue (make-queue%)))
+    (when initial-contents
+      (queue-append queue initial-contents))
+    queue))
 
 (defun-inlineable queue-empty-p (queue)
   "Return whether `queue` is empty."