From b6acab3d2cc20fd002a6e92688507713c97f51bd Mon Sep 17 00:00:00 2001 From: Stefano Zacchiroli Date: Tue, 3 Dec 2002 21:31:19 +0000 Subject: [PATCH] - added string_{em,im}plode - moved here reason_phrase_of_code --- helm/DEVEL/ocaml-http/http_misc.ml | 54 +++++++++++++++++++++++++++++ helm/DEVEL/ocaml-http/http_misc.mli | 8 +++++ 2 files changed, 62 insertions(+) diff --git a/helm/DEVEL/ocaml-http/http_misc.ml b/helm/DEVEL/ocaml-http/http_misc.ml index a1ea266a4..edacea23a 100644 --- a/helm/DEVEL/ocaml-http/http_misc.ml +++ b/helm/DEVEL/ocaml-http/http_misc.ml @@ -19,6 +19,8 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *) +open Http_types;; + let date_822 () = Netdate.mk_mail_date ~zone:Netdate.localzone (Unix.time ()) @@ -43,3 +45,55 @@ let ls dir = in ls' [] +let string_explode s = + let rec string_explode' acc = function + | "" -> acc + | s -> string_explode' (s.[0] :: acc) (String.sub s 1 (String.length s - 1)) + in + List.rev (string_explode' [] s) + +let string_implode = List.fold_left (fun s c -> s ^ (String.make 1 c)) "" + +let reason_phrase_of_code = function + | 100 -> "Continue" + | 101 -> "Switching protocols" + | 200 -> "OK" + | 201 -> "Created" + | 202 -> "Accepted" + | 203 -> "Non authoritative information" + | 204 -> "No content" + | 205 -> "Reset content" + | 206 -> "Partial content" + | 300 -> "Multiple choices" + | 301 -> "Moved permanently" + | 302 -> "Found" + | 303 -> "See other" + | 304 -> "Not modified" + | 305 -> "Use proxy" + | 307 -> "Temporary redirect" + | 400 -> "Bad request" + | 401 -> "Unauthorized" + | 402 -> "Payment required" + | 403 -> "Forbidden" + | 404 -> "Not found" + | 405 -> "Method not allowed" + | 406 -> "Not acceptable" + | 407 -> "Proxy authentication required" + | 408 -> "Request time out" + | 409 -> "Conflict" + | 410 -> "Gone" + | 411 -> "Length required" + | 412 -> "Precondition failed" + | 413 -> "Request entity too large" + | 414 -> "Request URI too large" + | 415 -> "Unsupported media type" + | 416 -> "Requested range not satisfiable" + | 417 -> "Expectation failed" + | 500 -> "Internal server error" + | 501 -> "Not implemented" + | 502 -> "Bad gateway" + | 503 -> "Service unavailable" + | 504 -> "Gateway time out" + | 505 -> "HTTP version not supported" + | invalid_code -> raise (Invalid_code invalid_code) + diff --git a/helm/DEVEL/ocaml-http/http_misc.mli b/helm/DEVEL/ocaml-http/http_misc.mli index 5a74fe4ff..f12e9ad0d 100644 --- a/helm/DEVEL/ocaml-http/http_misc.mli +++ b/helm/DEVEL/ocaml-http/http_misc.mli @@ -19,6 +19,9 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *) +(** Helpers and other not better classified functions which should not be +visible to the final user *) + (** @return the current date compliant to RFC 1123, which updates RFC 822 zone info are retrieved from UTC *) val date_822: unit -> string @@ -39,3 +42,8 @@ val strip_heading_slash: string -> string (** given a dir handle @return a list of entries contained *) val ls: Unix.dir_handle -> string list +val string_explode: string -> char list +val string_implode: char list -> string + +val reason_phrase_of_code: int -> string + -- 2.39.2