module Biocaml_sam:sig..end
type raw_alignment = {
qname :string;
flag :int;
rname :string;
pos :int;
mapq :int;
cigar :string;
rnext :string;
pnext :int;
tlen :int;
seq :string;
qual :string;
optional :(string * char * string) list;
type raw_item = [ `alignment of raw_alignment
| `comment of string
| `header of string * (string * string) list ]
type reference_sequence = {
ref_name :string;
ref_length :int;
ref_assembly_identifier :string option;
ref_checksum :string option;
ref_species :string option;
ref_uri :string option;
ref_unknown :(string * string) list;
val reference_sequence : ?assembly_identifier:string ->
?checksum:string ->
?species:string ->
?uri:string ->
?unknown_data:(string * string) list ->
string -> int -> reference_sequence module Flags:sig..end
type cigar_op = [ `D of int
| `Eq of int
| `H of int
| `I of int
| `M of int
| `N of int
| `P of int
| `S of int
| `X of int ]
type optional_content_value = [ `array of char * optional_content_value array
| `char of char
| `float of float
| `int of int
| `string of string ]
type optional_content = (string * char * optional_content_value) list
type alignment = {
query_template_name :string;
flags :Flags.t ;
reference_sequence :[ `name of string
| `none
| `reference_sequence of reference_sequence ];
position :int option;
mapping_quality :int option;
cigar_operations :cigar_op array;
next_reference_sequence :[ `name of string
| `none
| `qname
| `reference_sequence of reference_sequence ];
next_position :int option;
template_length :int option;
sequence :[ `none | `reference | `string of string ];
quality :Biocaml_phred_score.t array;
optional_content :optional_content ;
type item = [ `alignment of alignment
| `comment of string
| `header of string * (string * string) list
| `header_line of
string * [ `coordinate | `queryname | `unknown | `unsorted ] *
(string * string) list
| `reference_sequence_dictionary of reference_sequence array ]
module Error:sig..end
val in_channel_to_item_stream : ?buffer_size:int ->
?filename:string ->
Pervasives.in_channel ->
(item, Error.parse) Core.Result.t Stream.tmodule Low_level_parsing:sig..end
module Transform:sig..end
val raw_alignment_of_sexp : Sexplib.Sexp.t -> raw_alignment val sexp_of_raw_alignment : raw_alignment -> Sexplib.Sexp.tval raw_item_of_sexp : Sexplib.Sexp.t -> raw_item val raw_item_of_sexp__ : Sexplib.Sexp.t -> raw_item val sexp_of_raw_item : raw_item -> Sexplib.Sexp.tval reference_sequence_of_sexp : Sexplib.Sexp.t -> reference_sequence val sexp_of_reference_sequence : reference_sequence -> Sexplib.Sexp.tval cigar_op_of_sexp : Sexplib.Sexp.t -> cigar_op val cigar_op_of_sexp__ : Sexplib.Sexp.t -> cigar_op val sexp_of_cigar_op : cigar_op -> Sexplib.Sexp.tval optional_content_value_of_sexp : Sexplib.Sexp.t -> optional_content_value val optional_content_value_of_sexp__ : Sexplib.Sexp.t -> optional_content_value val sexp_of_optional_content_value : optional_content_value -> Sexplib.Sexp.tval optional_content_of_sexp : Sexplib.Sexp.t -> optional_content val sexp_of_optional_content : optional_content -> Sexplib.Sexp.tval alignment_of_sexp : Sexplib.Sexp.t -> alignment val sexp_of_alignment : alignment -> Sexplib.Sexp.tval item_of_sexp : Sexplib.Sexp.t -> item val item_of_sexp__ : Sexplib.Sexp.t -> item val sexp_of_item : item -> Sexplib.Sexp.t