Cache.DigestData digesting for caching.
include Core_kernel.Identifiable with type t = digesttype t = digestval bin_size_t : t Bin_prot.Size.sizerval bin_write_t : t Bin_prot.Write.writerval bin_read_t : t Bin_prot.Read.readerval __bin_read_t__ : (int -> t) Bin_prot.Read.readerval bin_writer_t : t Bin_prot.Type_class.writerval bin_reader_t : t Bin_prot.Type_class.readerval bin_t : t Bin_prot.Type_class.tval t_of_sexp : Sexplib0__.Sexp.t -> tval sexp_of_t : t -> Ppx_sexp_conv_lib.Sexp.tval of_string : string -> tval to_string : t -> stringval pp : Base__.Formatter.t -> t -> unitmodule Replace_polymorphic_compare : sig ... endval comparator : (t, comparator_witness) Core_kernel__.Comparator.comparatormodule Map : sig ... endmodule Set : sig ... endval hash_fold_t :
Ppx_hash_lib.Std.Hash.state ->
t ->
Ppx_hash_lib.Std.Hash.stateval hash : t -> Ppx_hash_lib.Std.Hash.hash_valueval hashable : t Core_kernel__.Hashtbl.Hashable.tmodule Table : sig ... endmodule Hash_set : sig ... endmodule Hash_queue : sig ... endval create : namespace:string -> tcreate ~namespace create a digest initialized with the given namespace. Since a caching service is using a flat namespace of keys, the namespace parameter is used to distinguish data build by different functions that have the same parameters digests. A module name is a good candidate for the namespace.
add digest fmt x y z ... is a variadic function that builds a string from arguments x y z ... using specified format fmt and adds this string to the digest.