package mirage-types
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page
Module type definitions for MirageOS applications
Install
dune-project
Dependency
Authors
Maintainers
Sources
mirage-v3.6.0.tbz
sha256=0ab6ee37fa44c05cc93ecf2456dabdbbe80935f11e82179d75ee64913cffc3d1
sha512=ecadf2266982b60b872b862c7c77c11c66b07e44110d98ed63a6e0e12570e3d6d0be06a519fd3a4edc8c184fe010055d7435d62491e22549a4776ac2d530bd41
doc/mirage-types/Mirage_types/index.html
Module Mirage_types
MirageOS Signatures.
This module defines the basic signatures that functor parameters should implement in MirageOS to be portable.
General conventions
- errors which application programmers are expected to handle (e.g. connection refused or end of file) are encoded as result types where
Ok xmeans the operation was succesful and returnsxand whereError emeans the operation has failed with errore. The erroreuses theRresult.R.msgtype for the most general error message, and possibly more specific ones depending on the interface. - errors which represent programming errors such as assertion failures or illegal arguments are encoded as exceptions. The application may attempt to catch exceptions and recover or simply let the exception propagate and crash the application. If the application crashes then the runtime system should output diagnostics and abort.
- operations which perform I/O return values of
type +'a iowhich allow the application to either wait for the I/O to be completed or leave it running asynchronously. If the I/O completes with an error then the operation may have completely failed, partially succeeded or even completely succeeded (e.g. it may only be a confirmation message in a network protocol which was missed): see individual API descriptions for details.
Release v3.6.0
module type DEVICE = Mirage_device.STime and clock devices
module type TIME = Mirage_time.Smodule type MCLOCK = Mirage_clock.MCLOCKmodule type PCLOCK = Mirage_clock.PCLOCKmodule type RANDOM = Mirage_random.SConnection between endpoints
module type FLOW = Mirage_flow.SConsole
module type CONSOLE = Mirage_console.SSector-addressible block devices
module type BLOCK = Mirage_block.Smodule type NETWORK = Mirage_net.Smodule type ETHERNET = Mirage_protocols.ETHERNETmodule type IP = Mirage_protocols.IPmodule type ARP = Mirage_protocols.ARPmodule type IPV4 = Mirage_protocols.IPV4module type IPV6 = Mirage_protocols.IPV6module type ICMP = Mirage_protocols.ICMPmodule type ICMPV4 = Mirage_protocols.ICMPV4module type UDP = Mirage_protocols.UDPmodule type TCP = Mirage_protocols.TCPmodule type STACKV4 = Mirage_stack.V4module type CHANNEL = Mirage_channel.SStatic Key/value store
module type KV_RO = Mirage_kv.ROmodule type KV_RW = Mirage_kv.RWFilesystem devices
module type FS = Mirage_fs.S sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page