package fluxt

  1. Overview
  2. Docs
Extensions of flux to provide basic streams (compression, hash, format)

Install

dune-project
 Dependency

Authors

Maintainers

Sources

flux-0.0.1.beta5.tbz
sha256=79018b22d5fb47ceffca6c54faf494d3b2ad2e61dbf5acf1597563d5d58c7393
sha512=61fde7d122396adfbb09283d10a3b439ed2b46604623da31528f7c55d0f9a98d3a77da9769c2b00f8812b7d5d5884dddcc6c1ace93e45983099d76f8cbc3dc54

doc/src/fluxt.hash/flux_hash.ml.html

Source file flux_hash.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
open Digestif

let of_module : type t.
    (module Digestif.S with type t = t) -> (string, t) Flux.sink =
 fun (module Hash) ->
  let init () = Hash.empty
  and push ctx str = Hash.feed_string ctx str
  and full = Fun.const false
  and stop = Hash.get in
  Flux.Sink { init; push; full; stop }

let md5 = of_module (module MD5)
let sha1 = of_module (module SHA1)
let sha224 = of_module (module SHA224)
let sha256 = of_module (module SHA256)
let sha384 = of_module (module SHA384)
let sha512 = of_module (module SHA512)
let blake2b = of_module (module BLAKE2B)
let blake2s = of_module (module BLAKE2S)
let whirlpool = of_module (module WHIRLPOOL)
let rmd160 = of_module (module RMD160)
let keccak256 = of_module (module KECCAK_256)