The Git Blob is structurally a Cstruct.t independantly of the hash implementation.
module MakeMeta : functor (Meta : Encore.Meta.S) -> sig ... endmodule A : sig ... endmodule M : sig ... endmodule D : sig ... endmodule E : sig ... endval length : t -> int64length t returns the length of the blob object t. Note that we use Cstruct.t.len and cast result to int64.
of_cstruct cs returns the blob value of a Cstruct.t. This function does not take the ownership on cs. So, consider at this time to not change cs and consider it as a constant.
to_cstruct blob returns the Cstruct.t of the Blob blob. This function does not create a fresh Cstruct.t, so consider it as a constant Cstruct.t (set functions not allowed).
val of_string : string -> tof_string s returns the blob value of a string.
val to_string : t -> stringto_string blob returns a string which contains the blob value - in other words, the content of your file.