[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-API] [PATCH] [ocamldoc] Nicer display of types with polymorphic parameters
# HG changeset patch # User Rob Hoes <rob.hoes@xxxxxxxxxx> [ocamldoc] Nicer display of types with polymorphic parameters Signed-off-by: Rob Hoes <rob.hoes@xxxxxxxxxx> diff -r a0e8f6224d87 ocaml/doc/ocamldoc.js --- a/ocaml/doc/ocamldoc.js Thu Dec 03 10:10:16 2009 +0000 +++ b/ocaml/doc/ocamldoc.js Fri Dec 04 13:37:13 2009 +0000 @@ -149,9 +149,22 @@ if (t != '') { params = t.split('->'); for (i in params) { - params[i] = '<span class="type">' + params[i] + '</span>'; + u = params[i]; + if (u[0] == '?') + optional = ' <span class="optional">(optional)</span>'; + else + optional = ''; + a = u.indexOf(':'); + if (a > -1) + u = u.substr(a + 1); + params[i] = '<span class="type">' + u + optional + '</span>'; } html = params.join('<span class="arrow">\u2192</span>'); + // the following is obviously a bit inefficient... + for (i = 0; i < 25; i++) + html = html.replaceAll("'" + String.fromCharCode(0x61 + i), + String.fromCharCode(0x3b1 + i)); + html = html.replaceAll('*', '\u00d7'); } else html = '[none]'; diff -r a0e8f6224d87 ocaml/doc/odoc_json.ml --- a/ocaml/doc/odoc_json.ml Thu Dec 03 10:10:16 2009 +0000 +++ b/ocaml/doc/odoc_json.ml Fri Dec 04 13:37:13 2009 +0000 @@ -393,9 +393,13 @@ Object (name :: loc :: info :: params :: kind :: manifest @ []) (* @ code *) method json_of_type_parameter (texp, covar, contravar) = - Object ["covariant", String (string_of_bool covar); "contravariant", String (string_of_bool contravar); "type", self#json_of_type_expr texp] + Object ["covariant", String (string_of_bool covar); "contravariant", String (string_of_bool contravar); "type", self#json_of_type_expr_param texp] method json_of_type_expr t = + Odoc_info.reset_type_names (); + String (Odoc_info.string_of_type_expr t) + + method json_of_type_expr_param t = String (Odoc_info.string_of_type_expr t) method json_of_type_kind priv = function diff -r a0e8f6224d87 ocaml/doc/style.css --- a/ocaml/doc/style.css Thu Dec 03 10:10:16 2009 +0000 +++ b/ocaml/doc/style.css Fri Dec 04 13:37:13 2009 +0000 @@ -267,3 +267,7 @@ color: #cc6600; } +.optional { + font-size: 70%; + vertical-align: top; +} Attachment:
doc-better-types _______________________________________________ xen-api mailing list xen-api@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/mailman/listinfo/xen-api
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |