pruned unstable/bytes (moved some code back to web-server)
Corrected contracts from serializable? to printable/c.
This commit is contained in:
parent
dd061bdb17
commit
bf21e5b765
|
@ -1,19 +1,9 @@
|
|||
#lang racket/base
|
||||
(require racket/contract/base
|
||||
racket/serialize)
|
||||
(require racket/contract/base)
|
||||
|
||||
(provide/contract
|
||||
[read/bytes (bytes? . -> . serializable?)]
|
||||
[write/bytes (serializable? . -> . bytes?)]
|
||||
[bytes-ci=? (bytes? bytes? . -> . boolean?)])
|
||||
|
||||
(define (bytes-ci=? b0 b1)
|
||||
(string-ci=? (bytes->string/utf-8 b0)
|
||||
(bytes->string/utf-8 b1)))
|
||||
;; Eli: If this ever gets in, it should say that the memory requirements
|
||||
;; are 4 times the input size, especially since bytes are often used to save
|
||||
;; space. Also, fails on (bytes-ci=? #"\277" #"\277"), and a trivial fix
|
||||
;; would still fail on (bytes-ci=? #"\276\277" #"\277\276")
|
||||
[read/bytes (bytes? . -> . printable/c)]
|
||||
[write/bytes (printable/c . -> . bytes?)])
|
||||
|
||||
(define (read/bytes bs)
|
||||
(read (open-input-bytes bs)))
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#lang scribble/doc
|
||||
@(require scribble/base scribble/manual "utils.rkt"
|
||||
(for-label racket/base unstable/bytes racket/serialize
|
||||
(for-label racket/base unstable/bytes
|
||||
racket/contract))
|
||||
|
||||
@title[#:tag "bytes"]{Bytes}
|
||||
|
@ -9,16 +9,12 @@
|
|||
|
||||
@unstable-header[]
|
||||
|
||||
@defproc[(bytes-ci=? [b1 bytes?] [b2 bytes?]) boolean?]{
|
||||
Compares two bytes case insensitively.
|
||||
}
|
||||
|
||||
@defproc[(read/bytes [b bytes?])
|
||||
serializable?]{
|
||||
printable/c]{
|
||||
@racket[read]s a value from @racket[b] and returns it.
|
||||
}
|
||||
|
||||
@defproc[(write/bytes [v serializable?])
|
||||
@defproc[(write/bytes [v printable/c])
|
||||
bytes?]{
|
||||
@racket[write]s @racket[v] to a bytes and returns it.
|
||||
}
|
||||
|
|
|
@ -16,6 +16,19 @@
|
|||
|
||||
;; --
|
||||
|
||||
(define (bytes-ci=? b0 b1)
|
||||
(string-ci=? (bytes->string/utf-8 b0)
|
||||
(bytes->string/utf-8 b1)))
|
||||
;; Eli: If this ever gets in, it should say that the memory requirements
|
||||
;; are 4 times the input size, especially since bytes are often used to save
|
||||
;; space. Also, fails on (bytes-ci=? #"\277" #"\277"), and a trivial fix
|
||||
;; would still fail on (bytes-ci=? #"\276\277" #"\277\276")
|
||||
|
||||
(provide/contract
|
||||
[bytes-ci=? (bytes? bytes? . -> . boolean?)])
|
||||
|
||||
;; --
|
||||
|
||||
;; network-error: symbol string . values -> void
|
||||
;; throws a formatted exn:fail:network
|
||||
(define (network-error src fmt . args)
|
||||
|
|
Loading…
Reference in New Issue
Block a user