package mirage-flow
Various implementations of the MirageOS FLOW interface
Install
Dune Dependency
Authors
Maintainers
Sources
mirage-flow-1.2.0.tbz
sha256=e7b0c7982cbfc162aaf1d4e7b4a50da7cd407179ea2513ebe8edf0560eb49da3
md5=5f603c4a92e6a8681aa7e4b313443f50
Description
Fflow
uses input/output functions to build a flowLwt_io_flow
usesLwt_io.channel
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 (6)
Dev Dependencies
None
Used by (16)
-
capnp-rpc-unix
>= "0.6.0"
-
conduit-mirage
= "3.0.0"
- datakit
-
datakit-client-git
< "1.0.0"
-
git
>= "1.5.2" & < "1.10.0"
-
git-paf
>= "3.5.0" & < "3.16.0"
-
mirage-channel
< "4.0.0"
-
mirage-console
>= "2.2.0" & < "3.0.0"
-
mirage-console-xen
>= "4.0.0"
-
mirage-flow-lwt
!= "1.3.0"
-
mirage-flow-unix
!= "1.3.0" & < "2.0.0"
-
mirage-protocols
< "4.0.0"
-
mirage-types
>= "3.0.0" & < "3.4.0"
- sendmail-mirage
-
tcpip
= "2.4.2" | = "2.6.1" | = "2.8.0" | >= "3.0.0" & < "4.0.0"
-
vpnkit
< "0.1.1"
Conflicts
None
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page