2730
#hash(((def ((lib "file/ico.rkt") ico-height)) . ((5502 . 3))) ((def ((lib "file/tar.rkt") tar->output)) . ((2571 . 4))) ((def ((lib "file/resource.rkt") write-resource)) . ((7052 . 13))) ((def ((lib "file/gif.rkt") color?)) . ((3478 . 3))) ((def ((lib "file/gif.rkt") gif-start)) . ((3656 . 7))) ((def ((lib "file/gif.rkt") image-or-control-ready-gif-stream?)) . ((3276 . 3))) ((def ((lib "file/gzip.rkt") deflate)) . ((1505 . 6))) ((def ((lib "file/ico.rkt") read-icos-from-exe)) . ((5750 . 3))) ((def ((lib "file/sha1.rkt") bytes->hex-string)) . ((3081 . 3))) ((def ((lib "file/gzip.rkt") gzip)) . ((1042 . 4))) ((def ((lib "file/zip.rkt") zip-verbose)) . ((2360 . 4))) ((def ((lib "file/gunzip.rkt") gunzip-through-ports)) . ((1930 . 4))) ((def ((lib "file/gif.rkt") gif-state)) . ((3586 . 3))) ((def ((lib "file/ico.rkt") ico->argb)) . ((6290 . 3))) ((def ((lib "file/ico.rkt") read-icos)) . ((5657 . 3))) ((def ((lib "file/ico.rkt") ico-width)) . ((5432 . 3))) ((def ((lib "file/gif.rkt") image-ready-gif-stream?)) . ((3207 . 3))) ((def ((lib "file/convertible.rkt") convertible?)) . ((49 . 3))) ((def ((lib "file/gif.rkt") gif-colormap?)) . ((3419 . 3))) ((def ((lib "file/gif.rkt") gif-stream?)) . ((3150 . 3))) ((def ((lib "file/gunzip.rkt") inflate)) . ((2031 . 4))) ((def ((lib "file/resource.rkt") get-resource)) . ((6560 . 13))) ((def ((lib "file/tar.rkt") tar)) . ((2446 . 4))) ((def ((lib "file/sha1.rkt") sha1-bytes)) . ((3020 . 3))) ((def ((lib "file/gif.rkt") quantize)) . ((5166 . 5))) ((def ((lib "file/gif.rkt") gif-add-comment)) . ((4954 . 4))) ((def ((lib "file/zip.rkt") zip)) . ((2119 . 4))) ((def ((lib "file/sha1.rkt") sha1)) . ((2964 . 3))) ((def ((lib "file/zip.rkt") zip->output)) . ((2223 . 4))) ((def ((lib "file/gif.rkt") dimension?)) . ((3530 . 3))) ((def ((lib "file/ico.rkt") ico?)) . ((5382 . 3))) ((def ((lib "file/md5.rkt") md5)) . ((2833 . 4))) ((def ((lib "file/convertible.rkt") convert)) . ((107 . 16))) ((def ((lib "file/gif.rkt") gif-add-control)) . ((4389 . 11))) ((def ((lib "file/gzip.rkt") gzip-through-ports)) . ((1186 . 9))) ((def ((lib "file/gunzip.rkt") gunzip)) . ((1708 . 5))) ((def ((lib "file/ico.rkt") argb->ico)) . ((6346 . 6))) ((def ((lib "file/tar.rkt") tar-gzip)) . ((2722 . 4))) ((def ((lib "file/ico.rkt") replace-icos)) . ((6166 . 4))) ((def ((lib "file/ico.rkt") ico-depth)) . ((5573 . 3))) ((def ((lib "file/gif.rkt") gif-add-image)) . ((3852 . 17))) ((def ((lib "file/gif.rkt") empty-gif-stream?)) . ((3356 . 3))) ((def ((lib "file/gif.rkt") gif-add-loop-control)) . ((4829 . 4))) ((def ((lib "file/gif.rkt") gif-end)) . ((5077 . 3))) ((def ((lib "file/convertible.rkt") prop:convertible)) . ((0 . 2))) ((def ((lib "file/ico.rkt") write-icos)) . ((5852 . 7))))
value
prop:convertible : struct-type-property?
procedure
(convertible? v) -> boolean?
  v : any/c
procedure
(convert v request [default])
 -> (case request
      [(text) (or/c string? (λ (x) (eq? x default)))]
      [(gif-bytes png-bytes ps-bytes eps-bytes pdf-bytes)
       (or/c bytes? (λ (x) (eq? x default)))]
      [(pdf-bytes+bounds) (or/c (list/c bytes?
                                        (and/c real? (not/c negative?))
                                        (and/c real? (not/c negative?))
                                        (and/c real? (not/c negative?))
                                        (and/c real? (not/c negative?)))
                                (λ (x) (eq? x default)))]
      [else any/c])
  v : convertible?
  request : symbol?
  default : any/c = #f
procedure
(gzip in-file [out-file]) -> void?
  in-file : path-string?
  out-file : path-string? = (string-append in-file ".gz")
procedure
(gzip-through-ports in                
                    out               
                    orig-filename     
                    timestamp)    -> void?
  in : input-port?
  out : output-port?
  orig-filename : (or/c string? false/c)
  timestamp : exact-integer?
procedure
(deflate in out) -> exact-nonnegative-integer?
                    exact-nonnegative-integer?
                    exact-nonnegative-integer?
  in : input-port?
  out : output-port?
procedure
(gunzip file [output-name-filter]) -> void?
  file : path-string?
  output-name-filter : (string? boolean? . -> . path-string?)
                     = (lambda (file archive-supplied?) file)
procedure
(gunzip-through-ports in out) -> void?
  in : input-port?
  out : output-port?
procedure
(inflate in out) -> void?
  in : input-port?
  out : output-port?
procedure
(zip zip-file path ...) -> void?
  zip-file : path-string?
  path : path-string?
procedure
(zip->output paths [out]) -> void?
  paths : (listof path-string?)
  out : output-port? = (current-output-port)
parameter
(zip-verbose) -> boolean?
(zip-verbose on?) -> void?
  on? : any/c
procedure
(tar tar-file path ...) -> exact-nonnegative-integer?
  tar-file : path-string?
  path : path-string?
procedure
(tar->output paths [out]) -> exact-nonnegative-integer?
  paths : (listof path?)
  out : output-port? = (current-output-port)
procedure
(tar-gzip tar-file paths ...) -> void?
  tar-file : path-string?
  paths : path-string?
procedure
(md5 in [hex-encode?]) -> bytes?
  in : (or/c input-port? bytes? string?)
  hex-encode? : boolean? = #t
procedure
(sha1 in) -> string?
  in : input-port
procedure
(sha1-bytes in) -> bytes?
  in : input-port
procedure
(bytes->hex-string bstr) -> string?
  bstr : bytes?
procedure
(gif-stream? v) -> boolean?
  v : any/c
procedure
(image-ready-gif-stream? v) -> boolean?
  v : any/c
procedure
(image-or-control-ready-gif-stream? v) -> boolean?
  v : any/c
procedure
(empty-gif-stream? v) -> boolean?
  v : any/c
procedure
(gif-colormap? v) -> boolean?
  v : any/c
procedure
(color? v) -> boolean?
  v : any/c
procedure
(dimension? v) -> boolean?
  v : any/c
procedure
(gif-state stream) -> symbol?
  stream : gif-stream?
procedure
(gif-start out w h bg-color cmap) -> gif-stream?
  out : output-port?
  w : dimension?
  h : dimension?
  bg-color : color?
  cmap : (or/c gif-colormap? #f)
procedure
(gif-add-image stream          
               left            
               top             
               width           
               height          
               interlaced?     
               cmap            
               bstr)       -> void?
  stream : image-ready-gif-stream?
  left : dimension?
  top : dimension?
  width : dimension?
  height : dimension?
  interlaced? : any/c
  cmap : (or/c gif-colormap? #f)
  bstr : bytes?
procedure
(gif-add-control stream              
                 disposal            
                 wait-for-input?     
                 delay               
                 transparent)    -> void?
  stream : image-or-control-ready-gif-stream?
  disposal : (or/c 'any 'keep 'restore-bg 'restore-prev)
  wait-for-input? : any/c
  delay : dimension?
  transparent : (or/c color? #f)
procedure
(gif-add-loop-control stream iteration) -> void?
  stream : empty-gif-stream?
  iteration : dimension?
procedure
(gif-add-comment stream bstr) -> void?
  stream : image-or-control-ready-gif-stream?
  bstr : bytes?
procedure
(gif-end stream) -> void?
  stream : image-or-control-ready-gif-stream?
procedure
(quantize bstr) -> bytes? gif-colormap? (or/c color? #f)
  bstr : (and/c bytes?
                (lambda (bstr)
                  (zero? (remainder (bytes-length bstr) 4))))
procedure
(ico? v) -> boolean?
  v : any/c
procedure
(ico-width ico) -> (integer-in 1 256)
  ico : ico?
procedure
(ico-height ico) -> (integer-in 1 256)
  ico : ico?
procedure
(ico-depth ico) -> (one-of/c 1 2 4 8 16 24 32)
  ico : ico?
procedure
(read-icos src) -> (listof ico?)
  src : (or/c path-string? input-port?)
procedure
(read-icos-from-exe src) -> (listof ico?)
  src : (or/c path-string? input-port?)
procedure
(write-icos icos dest [#:exists exists]) -> void?
  icos : (listof ico?)
  dest : (or/c path-string? output-port?)
  exists : (or/c 'error 'append 'update 'can-update = 'error
                 'replace 'truncate
                 'must-truncate 'truncate/replace)
procedure
(replace-icos icos dest) -> void?
  icos : (listof ico?)
  dest : (or/c path-string? output-port?)
procedure
(ico->argb ico) -> bytes?
  ico : ico?
procedure
(argb->ico width height bstr [#:depth depth]) -> ico?
  width : (integer-in 1 256)
  height : (integer-in 1 256)
  bstr : bytes?
  depth : (one-of/c 1 2 4 8 24 32) = 32
procedure
(get-resource  section       
               entry         
              [value-box     
               file          
               #:type type]) 
 -> (or/c #f string? bytes? exact-integer? #t)
  section : string?
  entry : string?
  value-box : (or/f #f (box/c (or/c string? bytes? exact-integer?)))
            = #f
  file : (or/c #f fail-path?) = #f
  type : (or/c 'string 'bytes 'integer) = derived-from-value-box
procedure
(write-resource  section                         
                 entry                           
                 value                           
                [file                            
                 #:type type                     
                 #:create-key? create-key?]) -> boolean?
  section : string?
  entry : string?
  value : (or/c string? bytes? exact-integer?)
  file : (or/c path-string? #f) = #f
  type : (or/c 'string 'bytes 'integer) = 'string
  create-key? : any/c = #f
