@@ -26,9 +26,7 @@ let tag tag t = O.span ~attr:tag t
26
26
let label t =
27
27
match t with
28
28
| Odoc_model.Lang.TypeExpr. Label s -> tag " label" (O. txt s)
29
- | RawOptional _s ->
30
- tag " error" (O. txt " Error: RawOptional found during rendering" )
31
- | Optional s -> tag " optlabel" (O. txt " ?" ++ O. txt s)
29
+ | Optional s | RawOptional s -> tag " optlabel" (O. txt " ?" ++ O. txt s)
32
30
33
31
let type_var tv = tag " type-var" (O. txt tv)
34
32
@@ -424,6 +422,16 @@ module Make (Syntax : SYNTAX) = struct
424
422
(* ++ O.end_hv *)
425
423
in
426
424
if not needs_parentheses then res else enclose ~l: " (" res ~r: " )"
425
+ | Arrow (Some (RawOptional _ as lbl ), _src , dst ) ->
426
+ let res =
427
+ O. span
428
+ (O. box_hv
429
+ @@ label lbl ++ O. txt " :"
430
+ ++ tag " error" (O. txt " ???" )
431
+ ++ O. txt " " ++ Syntax.Type. arrow)
432
+ ++ O. sp ++ type_expr dst
433
+ in
434
+ if not needs_parentheses then res else enclose ~l: " (" res ~r: " )"
427
435
| Arrow (Some lbl , src , dst ) ->
428
436
let res =
429
437
O. span
@@ -1089,6 +1097,13 @@ module Make (Syntax : SYNTAX) = struct
1089
1097
(type_expr ~needs_parentheses: true src
1090
1098
++ O. txt " " ++ Syntax.Type. arrow)
1091
1099
++ O. txt " " ++ class_decl dst
1100
+ | Arrow (Some (RawOptional _ as lbl ), _src , dst ) ->
1101
+ O. span
1102
+ (O. box_hv
1103
+ @@ label lbl ++ O. txt " :"
1104
+ ++ tag " error" (O. txt " ???" )
1105
+ ++ O. txt " " ++ Syntax.Type. arrow)
1106
+ ++ O. sp ++ class_decl dst
1092
1107
| Arrow (Some lbl , src , dst ) ->
1093
1108
O. span
1094
1109
(label lbl ++ O. txt " :"
0 commit comments