sig
  type layer_info = { innermost : bool; outermost : bool; }
  type tag =
      [ `Start of string | `Stop ] *
      (Lexing.position * Caml2html.Annot.layer_info)
  type filter = [ `All | `Innermost | `Outermost ]
  val parse :
    impl_file:string -> annot_file:string -> Caml2html.Annot.tag list
  val guess_annot_file : string -> string option
  val from_file :
    impl_file:string -> annot_file:string -> Caml2html.Annot.tag list option
end