Skip to content

Commit 5e0d39b

Browse files
panglesdjonludlam
authored andcommitted
Medias: rule out error case
1 parent 44214ee commit 5e0d39b

File tree

5 files changed

+11
-8
lines changed

5 files changed

+11
-8
lines changed

src/document/comment.ml

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -290,15 +290,10 @@ let rec nestable_block_element :
290290
match href with
291291
| `Reference (`Resolved r) -> (
292292
let id =
293-
Odoc_model.Paths.Reference.Resolved.(identifier (r :> t))
293+
Odoc_model.Paths.Reference.Resolved.Asset.(identifier (r :> t))
294294
in
295-
match Url.from_identifier ~stop_before:false id with
296-
| Ok url -> Target.Internal (Resolved url)
297-
| Error exn ->
298-
(* FIXME: better error message *)
299-
Printf.eprintf "Id.href failed: %S\n%!"
300-
(Url.Error.to_string exn);
301-
Internal Unresolved)
295+
match Url.from_asset_identifier id with
296+
| url -> Target.Internal (Resolved url))
302297
| `Reference _ -> Internal Unresolved
303298
| `Link href -> External href
304299
in

src/document/url.ml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -449,6 +449,8 @@ let from_identifier ~stop_before = function
449449
Ok (from_path @@ Path.from_identifier p)
450450
| p -> Anchor.from_identifier p
451451

452+
let from_asset_identifier p = from_path @@ Path.from_identifier p
453+
452454
let kind id =
453455
match Anchor.from_identifier id with
454456
| Error e -> failwith (Error.to_string e)

src/document/url.mli

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,8 @@ val from_path : Path.t -> t
108108

109109
val from_identifier : stop_before:bool -> Identifier.t -> (t, Error.t) result
110110

111+
val from_asset_identifier : Identifier.AssetFile.t -> t
112+
111113
val kind : Identifier.t -> kind
112114

113115
val render_path : Odoc_model.Paths.Path.t -> string

src/model/paths.ml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1066,6 +1066,8 @@ module Reference = struct
10661066
end
10671067

10681068
module Asset = struct
1069+
let identifier = function `Identifier id -> id
1070+
10691071
type t = Paths_types.Resolved_reference.asset
10701072
end
10711073
end

src/model/paths.mli

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -550,6 +550,8 @@ module rec Reference : sig
550550

551551
module Asset : sig
552552
type t = Paths_types.Resolved_reference.asset
553+
554+
val identifier : t -> Identifier.AssetFile.t
553555
end
554556

555557
type t = Paths_types.Resolved_reference.any

0 commit comments

Comments
 (0)