sig
  val parse_cigar_text :
    string ->
    (Biocaml_sam.cigar_op array, [> `wrong_cigar_text of string ])
    Core.Result.t
  val parse_optional_content :
    (string * char * string) list ->
    (Biocaml_sam.optional_content,
     Biocaml_sam.Error.optional_content_parsing)
    Core.Result.t
  val parse_header_line :
    '->
    string ->
    ([> `comment of string | `header of string * (string * string) list ],
     [> `invalid_header_tag of 'a * string
      | `invalid_tag_value_list of 'a * string list ])
    Core.Result.t
  val expand_header_line :
    (string * string) list ->
    ([> `header_line of
          string * [ `coordinate | `queryname | `unknown | `unsorted ] *
          (string * string) list ],
     [> `header_line_without_version of (string * string) list
      | `header_line_wrong_sorting of string ])
    Core.Result.t
end