type authority = {userinfo : string option;host : string;port : int option;
}type t = {scheme : string option;authority : authority option;path : string;query : string option;fragment : string option;
}val parse : string -> (t, string) Stdlib.resultval to_string : t -> stringval resolve : t -> t -> tval remove_dot_segments : string -> stringval port : t -> int optionval request_target : t -> string