Module Core_kernel.Blit

This module extends Base.Blit.

include module type of sig ... end
type nonrec ('src, 'dst) blit = src:'src -> src_pos:int -> dst:'dst -> dst_pos:int -> len:int -> unit
type nonrec ('src, 'dst) blito = src:'src -> ?⁠src_pos:int -> ?⁠src_len:int -> dst:'dst -> ?⁠dst_pos:int -> unit -> unit
type nonrec ('src, 'dst) sub = 'src -> pos:int -> len:int -> 'dst
type nonrec ('src, 'dst) subo = ?⁠pos:int -> ?⁠len:int -> 'src -> 'dst
module type S = sig ... end
module type S1 = sig ... end
module type S_distinct = sig ... end
module type S1_distinct = sig ... end
module type S_to_string = sig ... end
module type Sequence = sig ... end
module type Sequence1 = sig ... end
module Make : functor (Sequence : sig ... end) -> S with type t := Sequence.t

Make is for blitting between two values of the same monomorphic type.

module Make_distinct : functor (Src : Sequence) -> functor (Dst : sig ... end) -> S_distinct with type src := Src.t with type dst := Dst.t

Make_distinct is for blitting between values of distinct monomorphic types.

module Make_to_string : functor (T : sig ... end) -> functor (To_bytes : S_distinct with type src := T.t with type dst := bytes) -> S_to_string with type t := T.t
module Make1 : functor (Sequence : Sequence1) -> S1 with type 'a t := 'a Sequence.t

Make1 is for blitting between two values of the same polymorphic type.

module Make1_generic : functor (Sequence : Sequence1) -> S1 with type 'a t := 'a Sequence.t

Make1_generic is for blitting between two values of the same container type that's not fully polymorphic (in the sense of Container.Generic).

module type S_permissions = sig ... end
module type S1_permissions = sig ... end