(**************************************************************************) (* *) (* Copyright (c) 2014 - 2017. *) (* Dynamic Ledger Solutions, Inc. *) (* *) (* All rights reserved. No warranty, explicit or implicit, provided. *) (* *) (**************************************************************************) (** Builds a new Hash type using Blake2B. *) (** The parameters for creating a new Hash type using {!Make_Blake2B}. Both {!name} and {!title} are only informative, used in error messages and serializers. *) module type Name = sig val name : string val title : string val size : int option end module type PrefixedName = sig include Name val b58check_prefix : string end module Make_minimal (Name : Name) : S.MINIMAL_HASH module Make (Register : sig val register_encoding: prefix: string -> length: int -> to_raw: ('a -> string) -> of_raw: (string -> 'a option) -> wrap: ('a -> Base58.data) -> 'a Base58.encoding end) (Name : PrefixedName) : S.HASH