diff --git a/collects/net/url-structs.ss b/collects/net/url-structs.ss new file mode 100644 index 0000000000..ac8d1d6d51 --- /dev/null +++ b/collects/net/url-structs.ss @@ -0,0 +1,16 @@ +(module url-structs mzscheme + (require (lib "contract.ss")) + + (define-struct url (scheme user host port path query fragment)) + (define-struct path/param (path param)) + + (provide/contract + (struct url ([scheme (union false/c string?)] + [user (union false/c string?)] + [host (union false/c string?)] + [port (union false/c number?)] + [path (listof (union string? path/param?))] + [query (listof (cons/c symbol? string?))] + [fragment (union false/c string?)])) + (struct path/param ([path string?] + [param string?])))) \ No newline at end of file