Bytesrw_blake3.Blake3The type for BLAKE3 hashes.
type key = tThe type for keys.
module State : sig ... endHash state.
value state is the hash of state. This has no effect on state which can still be State.updated.
val slice : ?key:t -> Bytesrw.Bytes.Slice.t -> tslice s is the hash of the bytes in the range of s keyed with key (if any).
val reader : ?key:t -> Bytesrw.Bytes.Reader.t -> treader r is the hash of stream r keyed with key (if any). This consumes the reader. See also reads.
val reads :
?state:State.t ->
Bytesrw.Bytes.Reader.t ->
Bytesrw.Bytes.Reader.t * State.treads r is hr, hstate with:
hr a reader that taps the reads of r to update hstate.hstate, a hash state of the reads made on hr so far. This is state if explicitely given, otherwise defaults to a fresh State.make.To get an intermediate or final hash result use value on hstate.
val writes :
?state:State.t ->
Bytesrw.Bytes.Writer.t ->
Bytesrw.Bytes.Writer.t * State.twrites ?state w is hw, hstate with:
hw a writer that taps the writes to update hstate before giving them to w.hstate, a hash state of the writes made on hw so far. This is state if explicitely given, otherwise defaults to a fresh State.make.To get an intermediate or final hash result use value on hstate.
val to_binary_string : t -> stringto_binary_string h is a big-endian binary representation of h of length length.
val of_binary_string : string -> (t, string) Stdlib.resultof_binary_string s is a hash from the big-endian binary representation stored in s.
val to_hex : t -> stringto_hex h is the binary representation of h using lowercase US-ASCII hex digits.
val of_hex : string -> (t, string) Stdlib.resultof_hex s parses a sequence of hex digits into a hash.
val pp : Stdlib.Format.formatter -> t -> unitpp formats hashes for inspection.