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

(begin
  (declare-type
   std/misc/pqueue#pqueue::t
   (@struct-type std/misc/pqueue#pqueue::t #f 3 :init! ((final: . #t))))
  (declare-type
   std/misc/pqueue#pqueue?
   (@struct-pred std/misc/pqueue#pqueue::t))
  (declare-type
   std/misc/pqueue#make-pqueue
   (@struct-cons std/misc/pqueue#pqueue::t))
  (declare-type
   std/misc/pqueue#pqueue-e
   (@struct-getf std/misc/pqueue#pqueue::t 0 #f))
  (declare-type
   std/misc/pqueue#pqueue-cmp
   (@struct-getf std/misc/pqueue#pqueue::t 1 #f))
  (declare-type
   std/misc/pqueue#pqueue-prio
   (@struct-getf std/misc/pqueue#pqueue::t 2 #f))
  (declare-type
   std/misc/pqueue#pqueue-e-set!
   (@struct-setf std/misc/pqueue#pqueue::t 0 #f))
  (declare-type
   std/misc/pqueue#pqueue-cmp-set!
   (@struct-setf std/misc/pqueue#pqueue::t 1 #f))
  (declare-type
   std/misc/pqueue#pqueue-prio-set!
   (@struct-setf std/misc/pqueue#pqueue::t 2 #f))
  (declare-type std/misc/pqueue#pqueue:::init!__% (@lambda 4 #f))
  (declare-type std/misc/pqueue#pqueue:::init!__0 (@lambda 2 #f))
  (declare-type std/misc/pqueue#pqueue:::init!__1 (@lambda 3 #f))
  (declare-type
   std/misc/pqueue#pqueue:::init!
   (@case-lambda
    (2 std/misc/pqueue#pqueue:::init!__0)
    (3 std/misc/pqueue#pqueue:::init!__1)
    (4 std/misc/pqueue#pqueue:::init!__%)))
  (declare-method
   std/misc/pqueue#pqueue::t
   :init!
   std/misc/pqueue#pqueue:::init!
   #f)
  (declare-type std/misc/pqueue#pqueue-empty? (@lambda 1 #f))
  (declare-type std/misc/pqueue#pqueue-size (@lambda 1 #f))
  (declare-type std/misc/pqueue#pqueue-peek (@lambda 1 #f))
  (declare-type std/misc/pqueue#pqueue-pop!__% (@lambda 2 #f))
  (declare-type std/misc/pqueue#pqueue-pop!__0 (@lambda 1 #f))
  (declare-type
   std/misc/pqueue#pqueue-pop!
   (@case-lambda
    (1 std/misc/pqueue#pqueue-pop!__0)
    (2 std/misc/pqueue#pqueue-pop!__%)))
  (declare-type std/misc/pqueue#pqueue-push! (@lambda 2 #f))
  (declare-type std/misc/pqueue#heap-size (@lambda 1 #f))
  (declare-type std/misc/pqueue#heap-size-set! (@lambda 2 #f))
  (declare-type std/misc/pqueue#heap-top (@lambda 1 #f))
  (declare-type std/misc/pqueue#heap-prio (@lambda 2 #f))
  (declare-type std/misc/pqueue#heap-parent (@lambda 1 #f))
  (declare-type std/misc/pqueue#heap-left (@lambda 1 #f))
  (declare-type std/misc/pqueue#heap-right (@lambda 1 #f))
  (declare-type std/misc/pqueue#heap-pop! (@lambda 2 #f))
  (declare-type std/misc/pqueue#heap-push! (@lambda 4 #f))
  (declare-type std/misc/pqueue#heap-swap! (@lambda 3 #f))
  (declare-type std/misc/pqueue#heap-resize! (@lambda 2 #f)))
