racket/collects/web-server/private/gzip.ss
2008-08-15 18:49:52 +00:00

20 lines
461 B
Scheme

#lang scheme
(require file/gzip
file/gunzip)
(provide/contract
[gzip/bytes (bytes? . -> . bytes?)]
[gunzip/bytes (bytes? . -> . bytes?)])
(define (gzip/bytes b)
(define gzb-p (open-output-bytes))
(gzip-through-ports
(open-input-bytes b)
gzb-p #f (current-seconds))
(get-output-bytes gzb-p))
(define (gunzip/bytes gzb)
(define b-p (open-output-bytes))
(gunzip-through-ports
(open-input-bytes gzb) b-p)
(get-output-bytes b-p))