SAM files and SAM-alignements high-level representation.
module Biocaml_sam_deprecated: sigtype 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: sigtype t = private int
val has_multiple_segments : t -> boolval each_segment_properly_aligned : t -> boolval segment_unmapped : t -> boolval next_segment_unmapped : t -> boolval seq_is_reverse_complemented : t -> boolval next_seq_is_reverse_complemented : t -> boolval first_segment : t -> boolval last_segment : t -> boolval secondary_alignment : t -> boolval not_passing_quality_controls : t -> boolval pcr_or_optical_duplicate : t -> boolinclude Sexpable.S
endtype 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: sigtype optional_content_parsing = [ `wrong_optional of
(string * char * string) list *
[ `not_a_char of string
| `not_a_float of string
| `not_an_int of string
| `unknown_type of char
| `wrong_array of
[ `not_a_char of string
| `not_a_float of string
| `not_an_int of string
| `unknown_type of char
| `wrong_type of string ]
| `wrong_type of string ] ]
type string_to_raw = [ `incomplete_input of
Biocaml_internal_utils.Pos.t * string list * string option
| `invalid_header_tag of Biocaml_internal_utils.Pos.t * string
| `invalid_tag_value_list of Biocaml_internal_utils.Pos.t * string list
| `not_an_int of Biocaml_internal_utils.Pos.t * string * string
| `wrong_alignment of Biocaml_internal_utils.Pos.t * string
| `wrong_optional_field of Biocaml_internal_utils.Pos.t * string ]
type raw_to_item = [ `comment_after_end_of_header of int * string
| `duplicate_in_reference_sequence_dictionary of
Biocaml_sam_deprecated.reference_sequence array
| `header_after_end_of_header of int * (string * (string * string) list)
| `header_line_not_first of int
| `header_line_without_version of (string * string) list
| `header_line_wrong_sorting of string
| `missing_ref_sequence_length of (string * string) list
| `missing_ref_sequence_name of (string * string) list
| `wrong_cigar_text of string
| `wrong_flag of Biocaml_sam_deprecated.raw_alignment
| `wrong_mapq of Biocaml_sam_deprecated.raw_alignment
| `wrong_optional of
(string * char * string) list *
[ `not_a_char of string
| `not_a_float of string
| `not_an_int of string
| `unknown_type of char
| `wrong_array of
[ `not_a_char of string
| `not_a_float of string
| `not_an_int of string
| `unknown_type of char
| `wrong_type of string ]
| `wrong_type of string ]
| `wrong_phred_scores of Biocaml_sam_deprecated.raw_alignment
| `wrong_pnext of Biocaml_sam_deprecated.raw_alignment
| `wrong_pos of Biocaml_sam_deprecated.raw_alignment
| `wrong_qname of Biocaml_sam_deprecated.raw_alignment
| `wrong_ref_sequence_length of (string * string) list
| `wrong_tlen of Biocaml_sam_deprecated.raw_alignment ]
raw_to_item
explicitly contains optional_content_parsing but OCamldoc
pastes it inline)type item_to_raw = [ `wrong_phred_scores of Biocaml_sam_deprecated.alignment ]
type parse = [ `comment_after_end_of_header of int * string
| `duplicate_in_reference_sequence_dictionary of
Biocaml_sam_deprecated.reference_sequence array
| `header_after_end_of_header of int * (string * (string * string) list)
| `header_line_not_first of int
| `header_line_without_version of (string * string) list
| `header_line_wrong_sorting of string
| `incomplete_input of
Biocaml_internal_utils.Pos.t * string list * string option
| `invalid_header_tag of Biocaml_internal_utils.Pos.t * string
| `invalid_tag_value_list of Biocaml_internal_utils.Pos.t * string list
| `missing_ref_sequence_length of (string * string) list
| `missing_ref_sequence_name of (string * string) list
| `not_an_int of Biocaml_internal_utils.Pos.t * string * string
| `wrong_alignment of Biocaml_internal_utils.Pos.t * string
| `wrong_cigar_text of string
| `wrong_flag of Biocaml_sam_deprecated.raw_alignment
| `wrong_mapq of Biocaml_sam_deprecated.raw_alignment
| `wrong_optional of
(string * char * string) list *
[ `not_a_char of string
| `not_a_float of string
| `not_an_int of string
| `unknown_type of char
| `wrong_array of
[ `not_a_char of string
| `not_a_float of string
| `not_an_int of string
| `unknown_type of char
| `wrong_type of string ]
| `wrong_type of string ]
| `wrong_optional_field of Biocaml_internal_utils.Pos.t * string
| `wrong_phred_scores of Biocaml_sam_deprecated.raw_alignment
| `wrong_pnext of Biocaml_sam_deprecated.raw_alignment
| `wrong_pos of Biocaml_sam_deprecated.raw_alignment
| `wrong_qname of Biocaml_sam_deprecated.raw_alignment
| `wrong_ref_sequence_length of (string * string) list
| `wrong_tlen of Biocaml_sam_deprecated.raw_alignment ]
type parse = [
| string_to_raw
| raw_to_item
]
type t = parse
val optional_content_parsing_of_sexp : Sexplib.Sexp.t -> optional_content_parsing val sexp_of_optional_content_parsing : optional_content_parsing -> Sexplib.Sexp.tval string_to_raw_of_sexp : Sexplib.Sexp.t -> string_to_raw val sexp_of_string_to_raw : string_to_raw -> Sexplib.Sexp.tval raw_to_item_of_sexp : Sexplib.Sexp.t -> raw_to_item val sexp_of_raw_to_item : raw_to_item -> Sexplib.Sexp.tval item_to_raw_of_sexp : Sexplib.Sexp.t -> item_to_raw val sexp_of_item_to_raw : item_to_raw -> Sexplib.Sexp.tval parse_of_sexp : Sexplib.Sexp.t -> parse val sexp_of_parse : parse -> Sexplib.Sexp.tendexception Error of Error.t
*_exn functions in this module.val in_channel_to_item_stream : ?buffer_size:int ->
?filename:string ->
Pervasives.in_channel ->
(item, [> Error.parse ])
Biocaml_internal_utils.Result.t Biocaml_internal_utils.Stream.tval in_channel_to_raw_item_stream : ?buffer_size:int ->
?filename:string ->
Pervasives.in_channel ->
(raw_item, [> Error.parse ])
Biocaml_internal_utils.Result.t Biocaml_internal_utils.Stream.tval in_channel_to_item_stream_exn : ?buffer_size:int ->
?filename:string ->
Pervasives.in_channel ->
item Biocaml_internal_utils.Stream.tStream.next may
raise Error _val in_channel_to_raw_item_stream_exn : ?buffer_size:int ->
?filename:string ->
Pervasives.in_channel ->
raw_item Biocaml_internal_utils.Stream.tStream.next may
raise Error _Biocaml_sam.Transform and
Biocaml_bam.Transform for parsing.
It can be ignored by most users but can be useful.val parse_cigar_text : string ->
(cigar_op array, [> `wrong_cigar_text of string ])
Biocaml_internal_utils.Result.tval parse_optional_content : (string * char * string) list ->
(optional_content,
[> Error.optional_content_parsing ])
Biocaml_internal_utils.Result.tval parse_header_line : 'a ->
string ->
([> `comment of string | `header of string * (string * string) list ],
[> `invalid_header_tag of 'a * string
| `invalid_tag_value_list of 'a * string list ])
Biocaml_internal_utils.Result.tBiocaml_sam_deprecated.Error.string_to_raw).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 ])
Biocaml_internal_utils.Result.tmodule Transform: sigval string_to_raw : ?filename:string ->
unit ->
(string,
(Biocaml_sam_deprecated.raw_item,
[> Biocaml_sam_deprecated.Error.string_to_raw ])
Biocaml_internal_utils.Result.t)
Biocaml_transform.t val raw_to_string : unit -> (Biocaml_sam_deprecated.raw_item, string) Biocaml_transform.t val raw_to_item : unit ->
(Biocaml_sam_deprecated.raw_item,
(Biocaml_sam_deprecated.item, [> Biocaml_sam_deprecated.Error.raw_to_item ])
Biocaml_internal_utils.Result.t)
Biocaml_transform.t raw_items to itemsval item_to_raw : unit ->
(Biocaml_sam_deprecated.item,
(Biocaml_sam_deprecated.raw_item,
[> Biocaml_sam_deprecated.Error.item_to_raw ])
Biocaml_internal_utils.Result.t)
Biocaml_transform.t items to raw_itemsendval 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 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 sexp_of_item : item -> Sexplib.Sexp.tend