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

(begin
  (declare-type
   std/crypto/hmac#hmac::t
   (@struct-type std/crypto#hmac::t #f 2 :init! ()))
  (declare-type std/crypto/hmac#hmac? (@struct-pred std/crypto/hmac#hmac::t))
  (declare-type
   std/crypto/hmac#make-hmac
   (@struct-cons std/crypto/hmac#hmac::t))
  (declare-type
   std/crypto/hmac#hmac-md
   (@struct-getf std/crypto/hmac#hmac::t 0 #f))
  (declare-type
   std/crypto/hmac#hmac-ctx
   (@struct-getf std/crypto/hmac#hmac::t 1 #f))
  (declare-type
   std/crypto/hmac#hmac-md-set!
   (@struct-setf std/crypto/hmac#hmac::t 0 #f))
  (declare-type
   std/crypto/hmac#hmac-ctx-set!
   (@struct-setf std/crypto/hmac#hmac::t 1 #f))
  (declare-type std/crypto/hmac#hmac:::init! (@lambda 2 #f))
  (declare-method
   std/crypto/hmac#hmac::t
   :init!
   std/crypto/hmac#hmac:::init!
   #f)
  (declare-type std/crypto/hmac#hmac-init! (@lambda 2 #f))
  (declare-type std/crypto/hmac#hmac-update!__% (@lambda 4 #f))
  (declare-type std/crypto/hmac#hmac-update!__0 (@lambda 2 #f))
  (declare-type std/crypto/hmac#hmac-update!__1 (@lambda 3 #f))
  (declare-type
   std/crypto/hmac#hmac-update!
   (@case-lambda
    (2 std/crypto/hmac#hmac-update!__0)
    (3 std/crypto/hmac#hmac-update!__1)
    (4 std/crypto/hmac#hmac-update!__%)))
  (declare-type std/crypto/hmac#hmac-final!__% (@lambda 2 #f))
  (declare-type std/crypto/hmac#hmac-final!__0 (@lambda 1 #f))
  (declare-type
   std/crypto/hmac#hmac-final!
   (@case-lambda
    (1 std/crypto/hmac#hmac-final!__0)
    (2 std/crypto/hmac#hmac-final!__%)))
  (declare-type std/crypto/hmac#hmac-digest__% (@lambda 5 #f))
  (declare-type std/crypto/hmac#hmac-digest__0 (@lambda 3 #f))
  (declare-type std/crypto/hmac#hmac-digest__1 (@lambda 4 #f))
  (declare-type
   std/crypto/hmac#hmac-digest
   (@case-lambda
    (3 std/crypto/hmac#hmac-digest__0)
    (4 std/crypto/hmac#hmac-digest__1)
    (5 std/crypto/hmac#hmac-digest__%)))
  (declare-type std/crypto/hmac#hmac-md5__% (@lambda 4 #f))
  (declare-type std/crypto/hmac#hmac-md5__0 (@lambda 2 #f))
  (declare-type std/crypto/hmac#hmac-md5__1 (@lambda 3 #f))
  (declare-type
   std/crypto/hmac#hmac-md5
   (@case-lambda
    (2 std/crypto/hmac#hmac-md5__0)
    (3 std/crypto/hmac#hmac-md5__1)
    (4 std/crypto/hmac#hmac-md5__%)))
  (declare-type std/crypto/hmac#hmac-sha1__% (@lambda 4 #f))
  (declare-type std/crypto/hmac#hmac-sha1__0 (@lambda 2 #f))
  (declare-type std/crypto/hmac#hmac-sha1__1 (@lambda 3 #f))
  (declare-type
   std/crypto/hmac#hmac-sha1
   (@case-lambda
    (2 std/crypto/hmac#hmac-sha1__0)
    (3 std/crypto/hmac#hmac-sha1__1)
    (4 std/crypto/hmac#hmac-sha1__%)))
  (declare-type std/crypto/hmac#hmac-sha256__% (@lambda 4 #f))
  (declare-type std/crypto/hmac#hmac-sha256__0 (@lambda 2 #f))
  (declare-type std/crypto/hmac#hmac-sha256__1 (@lambda 3 #f))
  (declare-type
   std/crypto/hmac#hmac-sha256
   (@case-lambda
    (2 std/crypto/hmac#hmac-sha256__0)
    (3 std/crypto/hmac#hmac-sha256__1)
    (4 std/crypto/hmac#hmac-sha256__%)))
  (declare-type std/crypto/hmac#hmac-sha384__% (@lambda 4 #f))
  (declare-type std/crypto/hmac#hmac-sha384__0 (@lambda 2 #f))
  (declare-type std/crypto/hmac#hmac-sha384__1 (@lambda 3 #f))
  (declare-type
   std/crypto/hmac#hmac-sha384
   (@case-lambda
    (2 std/crypto/hmac#hmac-sha384__0)
    (3 std/crypto/hmac#hmac-sha384__1)
    (4 std/crypto/hmac#hmac-sha384__%)))
  (declare-type std/crypto/hmac#hmac-sha512__% (@lambda 4 #f))
  (declare-type std/crypto/hmac#hmac-sha512__0 (@lambda 2 #f))
  (declare-type std/crypto/hmac#hmac-sha512__1 (@lambda 3 #f))
  (declare-type
   std/crypto/hmac#hmac-sha512
   (@case-lambda
    (2 std/crypto/hmac#hmac-sha512__0)
    (3 std/crypto/hmac#hmac-sha512__1)
    (4 std/crypto/hmac#hmac-sha512__%))))
