package mirage-flow

  1. Overview
  2. Docs
Flow implementations and combinators for MirageOS

Install

Dune Dependency

Authors

Maintainers

Sources

mirage-flow-5.0.0.tbz
sha256=37ca79cae0ed9b270b87712edcb397a5dec4ab39357b28107e00daa6c8553323
sha512=3cf9ebd09ce6e29f9f99a00bf47d2962ccd0e6627b0cdb407538c491480102211bde863d342624cdd4bdb2e1b198b8bf5b2109f881e8113210468ad5b5aa8632

Description

This repo contains generic operations over Mirage FLOW implementations.

Please consult the API documentation.

Tags

org:mirage

Published: 06 Feb 2025

README

mirag-flow -- Flow implementations and combinators for MirageOS

This repo contains generic operations over Mirage FLOW implementations.

Please consult the API documentation.

Example usage

In a top-level like utop:

# #require "mirage-flow";;
# #require "mirage-clock-unix";;
# #require "lwt.syntax";;

# let a = Mirage_flow.Fun.(make ~input:(input_string "hellooooo") ());;
val a : Mirage_flow.Fun.flow = <abstr>

# let buffer = String.make 20 ' ';;
val buffer : bytes = "                    "
# let b = Mirage_flow.Fun.(make ~output:(output_string buffer) ());;
val b : Mirage_flow.Fun.flow = <abstr>

# lwt results = Mirage_flow.copy (module Clock) (module Mirage_flow.Fun) a (module Mirage_flow.Fun) b ();;
val results : [ `Error of [ `Msg of bytes ] | `Ok of Mirage_flow.CopyStats.t ] =  `Ok {Mirage_flow.CopyStats.read_bytes = 9L; read_ops = 1L; write_bytes = 9L; write_ops = 1L; duration = 6.9141387939453125e-06}
# buffer;;
- : bytes = "hellooooo           "

Dependencies (5)

  1. lwt >= "4.0.0"
  2. fmt
  3. cstruct >= "4.0.0"
  4. dune >= "1.0"
  5. ocaml >= "4.08.0"

Dev Dependencies

None

Used by (35)

  1. arp >= "2.3.2" & < "3.1.1"
  2. awa-mirage >= "0.3.1"
  3. capnp-rpc-net >= "0.6.0" & < "2.0"
  4. carton < "1.0.0"
  5. carton-git
  6. carton-lwt < "1.0.0"
  7. cohttp-mirage >= "2.4.0"
  8. conduit-mirage >= "2.0.2"
  9. git >= "3.0.0"
  10. git-cohttp
  11. git-cohttp-mirage
  12. git-cohttp-unix
  13. git-mirage >= "2.1.2" & < "3.13.0" | >= "3.16.0"
  14. git-paf >= "3.5.0"
  15. git-unix >= "3.0.0"
  16. gluten-mirage
  17. h2-mirage >= "0.4.0"
  18. httpun-mirage
  19. httpun-ws-mirage
  20. memtrace-mirage
  21. mimic >= "0.0.7"
  22. mirage-channel >= "4.0.1"
  23. mirage-console-xen >= "4.0.0"
  24. mirage-flow-combinators >= "5.0.0"
  25. mirage-flow-unix >= "5.0.0"
  26. mirage-protocols >= "4.0.1" & < "8.0.0"
  27. mirage-types >= "3.7.1"
  28. protocol-9p >= "2.0.2"
  29. sendmail-mirage
  30. spoke >= "0.0.3"
  31. tcpip >= "8.0.1"
  32. tls-mirage >= "0.17.4"
  33. vchan >= "6.0.2"
  34. vchan-unix >= "6.0.2"
  35. vchan-xen >= "6.0.2"

Conflicts

None

OCaml

Innovation. Community. Security.