Update typed collection to use struct inheritance.
svn: r12747
This commit is contained in:
parent
08fa300d14
commit
da7b6978ee
|
@ -3,13 +3,14 @@
|
|||
(require typed/private/utils)
|
||||
|
||||
(require-typed-struct cgi-error () net/cgi)
|
||||
(require-typed-struct incomplete-%-suffix ([chars : (Listof Char)]) net/cgi)
|
||||
(require-typed-struct invalid-%-suffix ([char : Char]) net/cgi)
|
||||
(require-typed-struct (incomplete-%-suffix cgi-error) ([chars : (Listof Char)]) net/cgi)
|
||||
(require-typed-struct (invalid-%-suffix cgi-error) ([char : Char]) net/cgi)
|
||||
|
||||
|
||||
(require/typed/provide net/cgi
|
||||
[get-bindings (-> (Listof (cons (U Symbol String) String)))]
|
||||
[get-bindings/post (-> (Listof (Pair (U Symbol String) String)))]
|
||||
[get-bindings/get (-> (Listof (Pair (U Symbol String) String)) )]
|
||||
[get-bindings/get (-> (Listof (Pair (U Symbol String) String)))]
|
||||
[output-http-headers (-> Void)]
|
||||
[generate-html-output (case-lambda (String (Listof String) -> Void)
|
||||
(String (Listof String) String String String String String -> Void))]
|
||||
|
@ -21,6 +22,7 @@
|
|||
[string->html (String -> String)]
|
||||
[generate-link-text (String String -> String)])
|
||||
|
||||
|
||||
(provide
|
||||
(struct-out cgi-error)
|
||||
(struct-out incomplete-%-suffix)
|
||||
|
|
|
@ -18,6 +18,6 @@
|
|||
[get-cookie (String String -> (Listof String))]
|
||||
[get-cookie/single (String String -> (Option String))])
|
||||
|
||||
(require-typed-struct cookie-error () net/cookie)
|
||||
(require-typed-struct (cookie-error exn:fail) () net/cookie)
|
||||
|
||||
(provide Cookie cookie? (struct-out cookie-error))
|
|
@ -30,42 +30,35 @@
|
|||
|
||||
|
||||
;; -- exceptions raised --
|
||||
(require/typed mime-error? (Any -> Boolean : (Opaque mime-error?)) net/mime)
|
||||
(require/typed unexpected-termination? (Any -> Boolean :(Opaque unexpected-termination?)) net/mime)
|
||||
(require/typed unexpected-termination-msg ((Opaque unexpected-termination?) -> message) net/mime)
|
||||
(require/typed missing-multipart-boundary-parameter? (Any -> Boolean : (Opaque missing-multipart-boundary-parameter?)) net/mime)
|
||||
(require/typed malformed-multipart-entity? (Any -> Boolean : (Opaque malformed-multipart-entity?)) net/mime)
|
||||
(require/typed malformed-multipart-entity-msg ((Opaque malformed-multipart-entity?)-> message) net/mime)
|
||||
(require/typed empty-mechanism? (Any -> Boolean : (Opaque empty-mechanism?)) net/mime)
|
||||
(require/typed empty-type? (Any -> Boolean : (Opaque empty-type?)) net/mime)
|
||||
(require/typed empty-subtype? (Any -> Boolean : (Opaque empty-subtype?)) net/mime)
|
||||
(require/typed empty-disposition-type? (Any -> Boolean : (Opaque empty-disposition-type?)) net/mime)
|
||||
|
||||
#|
|
||||
(require-typed-struct mime-error () net/mime)
|
||||
(require-typed-struct (unexpected-termination mime-error) ([msg : String]) net/mime)
|
||||
(require-typed-struct (missing-multipart-boundary-parameter mime-error) () net/mime)
|
||||
(require-typed-struct (malformed-multipart-entity mime-error) ([msg : String]) net/mime)
|
||||
(require-typed-struct (empty-mechanism mime-error) () net/mime)
|
||||
(require-typed-struct (empty-type mime-error) () net/mime)
|
||||
(require-typed-struct (empty-subtype mime-error) () net/mime)
|
||||
(require-typed-struct (empty-disposition-type mime-error) () net/mime)
|
||||
|#
|
||||
|
||||
;; -- mime methods --
|
||||
(require/typed/provide net/mime
|
||||
[mime-analyze ((U Bytes Input-Port) Any -> message)])
|
||||
|
||||
(provide
|
||||
;; -- exceptions raised --
|
||||
mime-error?
|
||||
unexpected-termination?
|
||||
unexpected-termination-msg
|
||||
missing-multipart-boundary-parameter?
|
||||
malformed-multipart-entity?
|
||||
malformed-multipart-entity-msg
|
||||
empty-mechanism?
|
||||
empty-type?
|
||||
empty-subtype?
|
||||
empty-disposition-type?
|
||||
|
||||
;; -- basic mime structures --
|
||||
message
|
||||
entity
|
||||
|
||||
disposition
|
||||
|
||||
;; -- mime methods --
|
||||
mime-analyze
|
||||
)
|
||||
(struct-out message)
|
||||
(struct-out entity)
|
||||
(struct-out disposition)
|
||||
#|
|
||||
(struct-out mime-error)
|
||||
(struct-out unexpected-termination)
|
||||
(struct-out missing-multipart-boundary)
|
||||
(struct-out malformed-multipart-entity)
|
||||
(struct-out empty-mechanism)
|
||||
(struct-out empty-type)
|
||||
(struct-out empty-subtype)
|
||||
(struct-out empty-disposition-type)
|
||||
|#
|
||||
)
|
||||
|
||||
|
|
|
@ -2,8 +2,9 @@
|
|||
|
||||
(require typed/private/utils)
|
||||
|
||||
(require-typed-struct communicator ([sender : Number] [receiver : Number] [server : String] [port : Number])
|
||||
net/nntp)
|
||||
(require-typed-struct/provide
|
||||
communicator ([sender : Number] [receiver : Number] [server : String] [port : Number])
|
||||
net/nntp)
|
||||
|
||||
(require/typed/provide net/nntp
|
||||
[connect-to-server (case-lambda (String -> communicator) (String Number -> communicator))]
|
||||
|
@ -14,18 +15,17 @@
|
|||
[body-of-message (communicator Number -> (Listof String))]
|
||||
[newnews-since (communicator Number -> (Listof String))]
|
||||
[generic-message-command (communicator Number -> (Listof String))]
|
||||
[make-desired-header (String -> String)] ;;-> Regexp
|
||||
[extract-desired-headers ((Listof String) (Listof String) -> (Listof String))]) ;;2nd: Of Regexp
|
||||
#|
|
||||
;; requires structure inheritance
|
||||
(require-typed-struct nntp ()]
|
||||
(require-typed-struct unexpected-response ([code : Number] [text : String])]
|
||||
(require-typed-struct bad-status-line ([line : String])]
|
||||
(require-typed-struct premature-close ([communicator : communicator])]
|
||||
(require-typed-struct bad-newsgroup-line ([line : String])]
|
||||
(require-typed-struct non-existent-group ([group : String])]
|
||||
(require-typed-struct article-not-in-group ([article : Number])]
|
||||
(require-typed-struct no-group-selected ()]
|
||||
(require-typed-struct article-not-found ([article : Number])]
|
||||
(require-typed-struct authentication-rejected ()]
|
||||
|#
|
||||
[make-desired-header (String -> String)]
|
||||
[extract-desired-headers ((Listof String) (Listof String) -> (Listof String))])
|
||||
|
||||
(require-typed-struct/provide (nntp exn:fail) () net/nntp)
|
||||
(require-typed-struct/provide (unexpected-response nntp) ([code : Number] [text : String]) net/nntp)
|
||||
(require-typed-struct/provide (bad-status-line nntp) ([line : String]) net/nntp)
|
||||
(require-typed-struct/provide (premature-close nntp) ([communicator : communicator]) net/nntp)
|
||||
(require-typed-struct/provide (bad-newsgroup-line nntp) ([line : String]) net/nntp)
|
||||
(require-typed-struct/provide (non-existent-group nntp) ([group : String]) net/nntp)
|
||||
(require-typed-struct/provide (article-not-in-group nntp) ([article : Number]) net/nntp)
|
||||
(require-typed-struct/provide (no-group-selected nntp) () net/nntp)
|
||||
(require-typed-struct/provide (article-not-found nntp) ([article : Number]) net/nntp)
|
||||
(require-typed-struct/provide (authentication-rejected nntp) () net/nntp)
|
||||
|
||||
|
|
|
@ -2,37 +2,43 @@
|
|||
|
||||
(require typed/private/utils)
|
||||
|
||||
(require-typed-struct communicator ([sender : Number] [receiver : Number] [server : String] [port : Number] [state : Symbol])net/pop3)
|
||||
(require-typed-struct/provide communicator
|
||||
([sender : Number] [receiver : Number] [server : String] [port : Number] [state : Symbol])
|
||||
net/pop3)
|
||||
|
||||
(require/typed/provide net/pop3
|
||||
[connect-to-server ( case-lambda (String -> (Opaque communicator?)) (String Number -> (Opaque communicator?)) )]
|
||||
[connect-to-server (case-lambda (String -> communicator) (String Number -> communicator))]
|
||||
|
||||
[disconnect-from-server ( (Opaque communicator?) -> Void )]
|
||||
[authenticate/plain-text ( String String (Opaque communicator?) -> Void )]
|
||||
[get-mailbox-status ( (Opaque communicator?) -> (values Number Number) )]
|
||||
[get-message/complete ( (Opaque communicator?) Number -> (values (Listof String)(Listof String)) )]
|
||||
[get-message/headers ( (Opaque communicator?) Number -> (Listof String) )]
|
||||
[get-message/body ( (Opaque communicator?) Number -> (Listof String) )]
|
||||
[delete-message ( (Opaque communicator?) Number -> Void )]
|
||||
[get-unique-id/single ( (Opaque communicator?) Number -> String )]
|
||||
[get-unique-id/all ( (Opaque communicator?) -> (Listof (cons Number String)) )]
|
||||
[disconnect-from-server (communicator -> Void)]
|
||||
[authenticate/plain-text (String String communicator -> Void)]
|
||||
[get-mailbox-status (communicator -> (values Number Number))]
|
||||
[get-message/complete (communicator Number -> (values (Listof String)(Listof String)))]
|
||||
[get-message/headers (communicator Number -> (Listof String))]
|
||||
[get-message/body (communicator Number -> (Listof String))]
|
||||
[delete-message (communicator Number -> Void)]
|
||||
[get-unique-id/single (communicator Number -> String)]
|
||||
[get-unique-id/all (communicator -> (Listof (cons Number String)))]
|
||||
|
||||
[make-desired-header ( String -> String )];-> Regexp
|
||||
[extract-desired-headers ( (Listof String)(Listof String)-> (Listof String) )];2nd:of Regexp
|
||||
)
|
||||
(provide (struct-out communicator))
|
||||
[make-desired-header (String -> String)]
|
||||
[extract-desired-headers ((Listof String)(Listof String)-> (Listof String))])
|
||||
|
||||
|
||||
(require-typed-struct/provide (pop3 exn) () net/pop3)
|
||||
(require-typed-struct/provide (cannot-connect pop3) () net/pop3)
|
||||
(require-typed-struct/provide (username-rejected pop3) () net/pop3)
|
||||
(require-typed-struct/provide (password-rejected pop3) () net/pop3)
|
||||
(require-typed-struct/provide (not-ready-for-transaction pop3)
|
||||
([communicator : communicator]) net/pop3)
|
||||
(require-typed-struct/provide (not-given-headers pop3)
|
||||
([communicator : communicator] [message : Integer]) net/pop3)
|
||||
(require-typed-struct/provide (illegal-message-number pop3)
|
||||
([communicator : communicator] [message : Integer]) net/pop3)
|
||||
(require-typed-struct/provide (cannot-delete-message pop3)
|
||||
([communicator : communicator] [message : Integer]) net/pop3)
|
||||
(require-typed-struct/provide (disconnect-not-quiet pop3)
|
||||
([communicator : communicator]) net/pop3)
|
||||
(require-typed-struct/provide (malformed-server-response pop3)
|
||||
([communicator : communicator]) net/pop3)
|
||||
|
||||
#|
|
||||
(require-typed-struct pop3 ()]
|
||||
(require-typed-struct cannot-connect ()]
|
||||
(require-typed-struct username-rejected ()]
|
||||
(require-typed-struct password-rejected ()]
|
||||
(require-typed-struct not-ready-for-transaction ([ communicator : (Opaque communicator?) ])net/pop3)
|
||||
(require-typed-struct not-given-headers ([ communicator : (Opaque communicator?) ] [message : String])]
|
||||
(require-typed-struct illegal-message-number ([communicator : (Opaque communicator?)] [message : String])]
|
||||
(require-typed-struct cannot-delete-message ([communicator : (Opaque communicator?)] [message : String])]
|
||||
(require-typed-struct disconnect-not-quiet ([communicator : (Opaque communicator?)])]
|
||||
(require-typed-struct malformed-server-response ([communicator : (Opaque communicator?)])net/pop3)
|
||||
|#
|
||||
|
||||
|
|
@ -2,19 +2,21 @@
|
|||
|
||||
(require typed/private/utils)
|
||||
|
||||
(require-typed-struct path/param ([path : (U String 'up 'same)] [param : (Listof String)]) net/url)
|
||||
(require-typed-struct/provide path/param ([path : (U String 'up 'same)] [param : (Listof String)]) net/url)
|
||||
|
||||
(require-typed-struct url ([scheme : (Option String)]
|
||||
[user : (Option String)]
|
||||
[host : (Option String)]
|
||||
[port : (Option Integer)]
|
||||
[path-absolute? : Boolean]
|
||||
[path : (Listof path/param)]
|
||||
[query : (Listof (Pair Symbol (Option String)))]
|
||||
[fragment : (Option String)])
|
||||
net/url)
|
||||
(require-typed-struct/provide
|
||||
url ([scheme : (Option String)]
|
||||
[user : (Option String)]
|
||||
[host : (Option String)]
|
||||
[port : (Option Integer)]
|
||||
[path-absolute? : Boolean]
|
||||
[path : (Listof path/param)]
|
||||
[query : (Listof (Pair Symbol (Option String)))]
|
||||
[fragment : (Option String)])
|
||||
net/url)
|
||||
|
||||
(require/opaque-type URL-Exception url-exception? net/url)
|
||||
(provide URL-Exception url-exception?)
|
||||
|
||||
(define-type-alias PortT (case-lambda (url -> Input-Port) (url (Listof String)-> Input-Port)))
|
||||
(define-type-alias PortT/String (case-lambda (url String -> Input-Port) (url String (Listof String)-> Input-Port)))
|
||||
|
@ -52,8 +54,3 @@
|
|||
[url->string (url -> String)]
|
||||
[combine-url/relative (url String -> url)])
|
||||
|
||||
(provide
|
||||
URL-Exception
|
||||
url-exception?
|
||||
(struct-out url)
|
||||
(struct-out path/param))
|
||||
|
|
|
@ -8,4 +8,13 @@
|
|||
(require/typed lib [nm t] ...)
|
||||
(provide nm ...)))
|
||||
|
||||
(provide dt require/typed/provide)
|
||||
(define-syntax require-typed-struct/provide
|
||||
(syntax-rules ()
|
||||
[(_ (nm par) . rest)
|
||||
(begin (require-typed-struct (nm par) . rest)
|
||||
(provide (struct-out nm)))]
|
||||
[(_ nm . rest)
|
||||
(begin (require-typed-struct nm . rest)
|
||||
(provide (struct-out nm)))]))
|
||||
|
||||
(provide dt require/typed/provide require-typed-struct/provide)
|
||||
|
|
Loading…
Reference in New Issue
Block a user