package phylogenetics

  1. Overview
  2. Docs

The original format is described there. This implementation also allows a somewhat more relaxed syntax:

<nb sequences> <nb cols>
<id> TAB <sequence>
<id> TAB <sequence>
...

which is specified with the option ~strict:false.

type item = {
  1. name : string;
  2. sequence : string;
}
type t = private {
  1. number_of_sequences : int;
  2. sequence_length : int;
  3. items : item list;
}
val make_exn : item list -> t
val read : ?strict:bool -> string -> (t, [> `Msg of string ]) result
val read_exn : ?strict:bool -> string -> t
val write : ?strict:bool -> t -> string -> unit