prelude: :gerbil/compiler/ssxi
package: std/misc

(begin
  (declare-type
   std/misc/queue#queue::t
   (@struct-type std/misc/queue#queue::t #f 3 :init! ((final: . #t))))
  (declare-type std/misc/queue#queue? (@struct-pred std/misc/queue#queue::t))
  (declare-type
   std/misc/queue#make-queue
   (@struct-cons std/misc/queue#queue::t))
  (declare-type
   std/misc/queue#queue-front
   (@struct-getf std/misc/queue#queue::t 0 #f))
  (declare-type
   std/misc/queue#queue-back
   (@struct-getf std/misc/queue#queue::t 1 #f))
  (declare-type
   std/misc/queue#queue-length
   (@struct-getf std/misc/queue#queue::t 2 #f))
  (declare-type
   std/misc/queue#queue-front-set!
   (@struct-setf std/misc/queue#queue::t 0 #f))
  (declare-type
   std/misc/queue#queue-back-set!
   (@struct-setf std/misc/queue#queue::t 1 #f))
  (declare-type
   std/misc/queue#queue-length-set!
   (@struct-setf std/misc/queue#queue::t 2 #f))
  (declare-type
   std/misc/queue#&queue-front
   (@struct-getf std/misc/queue#queue::t 0 #t))
  (declare-type
   std/misc/queue#&queue-back
   (@struct-getf std/misc/queue#queue::t 1 #t))
  (declare-type
   std/misc/queue#&queue-length
   (@struct-getf std/misc/queue#queue::t 2 #t))
  (declare-type
   std/misc/queue#&queue-front-set!
   (@struct-setf std/misc/queue#queue::t 0 #t))
  (declare-type
   std/misc/queue#&queue-back-set!
   (@struct-setf std/misc/queue#queue::t 1 #t))
  (declare-type
   std/misc/queue#&queue-length-set!
   (@struct-setf std/misc/queue#queue::t 2 #t))
  (declare-type std/misc/queue#queue:::init! (@lambda 1 #f))
  (declare-method
   std/misc/queue#queue::t
   :init!
   std/misc/queue#queue:::init!
   #f)
  (declare-type std/misc/queue#queue-empty? (@lambda 1 #f))
  (declare-type std/misc/queue#non-empty-queue? (@lambda 1 #f))
  (declare-type std/misc/queue#enqueue! (@lambda 2 #f))
  (declare-type std/misc/queue#enqueue-front! (@lambda 2 #f))
  (declare-type std/misc/queue#dequeue!__% (@lambda 2 #f))
  (declare-type std/misc/queue#dequeue!__0 (@lambda 1 #f))
  (declare-type
   std/misc/queue#dequeue!
   (@case-lambda
    (1 std/misc/queue#dequeue!__0)
    (2 std/misc/queue#dequeue!__%)))
  (declare-type std/misc/queue#queue-peek__% (@lambda 2 #f))
  (declare-type std/misc/queue#queue-peek__0 (@lambda 1 #f))
  (declare-type
   std/misc/queue#queue-peek
   (@case-lambda
    (1 std/misc/queue#queue-peek__0)
    (2 std/misc/queue#queue-peek__%)))
  (declare-type std/misc/queue#queue->list (@lambda 1 #f)))
