Skip to content

Commit 63d78c3

Browse files
committed
non breaked arrows
1 parent 7bdcca4 commit 63d78c3

File tree

3 files changed

+12
-5
lines changed

3 files changed

+12
-5
lines changed

src/markup.ml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,3 +50,5 @@ let make_spec ~get_package ~id ?doc code =
5050
| None -> []
5151
| Some doc -> [div ~a:[ a_class ["doc"] ] doc])
5252
)
53+
54+
let arrow = span ~a:[ a_class ["keyword" ] ] [ entity "#8209"; entity "gt" ]

src/markup.mli

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,3 +43,6 @@ val make_spec
4343
-> ?doc:[< Html_types.div_content_fun ] elt list
4444
-> [< Html_types.div_content_fun ] elt list
4545
-> [> Html_types.div ] elt
46+
47+
val arrow : [> Html_types.span ] elt
48+
(** "->" with a non breaking hyphen, styled as a keyword. *)

src/to_html_tree.ml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -388,7 +388,9 @@ and constructor
388388
| _ -> false
389389
in
390390
let ret_type =
391-
Markup.keyword (if constant then " : " else " -> ") ::
391+
pcdata " " ::
392+
(if constant then Markup.keyword ":" else Markup.arrow) ::
393+
pcdata " " ::
392394
type_expr ~get_package te
393395
in
394396
true, ret_type
@@ -720,14 +722,14 @@ and type_expr
720722
| Arrow (None, src, dst) ->
721723
let res =
722724
type_expr ~needs_parentheses:true ~get_package src @
723-
Markup.keyword " -> " :: type_expr ~get_package dst
725+
pcdata " " :: Markup.arrow :: pcdata " " :: type_expr ~get_package dst
724726
in
725727
if not needs_parentheses then res else pcdata "(" :: res @ [pcdata ")"]
726728
| Arrow (Some lbl, src, dst) ->
727729
let res =
728730
pcdata (string_of_label lbl ^ ":") ::
729731
type_expr ~needs_parentheses:true ~get_package src @
730-
Markup.keyword " -> " :: type_expr ~get_package dst
732+
pcdata " " :: Markup.arrow :: pcdata " " :: type_expr ~get_package dst
731733
in
732734
if not needs_parentheses then res else pcdata "(" :: res @ [pcdata ")"]
733735
| Tuple lst ->
@@ -873,11 +875,11 @@ and class_decl
873875
(* TODO: factorize the following with [type_expr] *)
874876
| Arrow (None, src, dst) ->
875877
type_expr ~needs_parentheses:true ~get_package src @
876-
Markup.keyword " -> " :: class_decl ~get_package dst
878+
pcdata " " :: Markup.arrow :: pcdata " " :: class_decl ~get_package dst
877879
| Arrow (Some lbl, src, dst) ->
878880
pcdata (string_of_label lbl ^ ":") ::
879881
type_expr ~needs_parentheses:true ~get_package src @
880-
Markup.keyword " -> " :: class_decl ~get_package dst
882+
pcdata " " :: Markup.arrow :: pcdata " " :: class_decl ~get_package dst
881883

882884
and class_ ~get_package (t : _ Types.Class.t) =
883885
let name = Identifier.name t.id in

0 commit comments

Comments
 (0)