package mirage

  1. Overview
  2. Docs
type 'a typ
val (@->) : 'a typ -> 'b typ -> ('a -> 'b) typ
type 'a impl
val ($) : ('a -> 'b) impl -> 'a impl -> 'b impl
val foreign : string -> ?libraries:string list -> ?packages:string list -> 'a typ -> 'a impl
val typ : 'a impl -> 'a typ
type time
val time : time typ
val default_time : time impl
type clock
val clock : clock typ
val default_clock : clock impl
type random
val random : random typ
val default_random : random impl
type entropy
val entropy : entropy typ
val default_entropy : entropy impl
type console
val console : console typ
val default_console : console impl
val custom_console : string -> console impl
type io_page
val io_page : io_page typ
val default_io_page : io_page impl
type block
val block : block typ
val block_of_file : string -> block impl
type kv_ro
val kv_ro : kv_ro typ
val crunch : string -> kv_ro impl
val direct_kv_ro : string -> kv_ro impl
type fs
val fs : fs typ
val fat : ?io_page:io_page impl -> block impl -> fs impl
val fat_of_files : ?dir:string -> ?regexp:string -> unit -> fs impl
val kv_ro_of_fs : fs impl -> kv_ro impl
type network
val network : network typ
val tap0 : network impl
val netif : string -> network impl
type ethernet
val ethernet : ethernet typ
val etif : network impl -> ethernet impl
type ipv4
val ipv4 : ipv4 typ
type ipv4_config = {
  1. address : Ipaddr.V4.t;
  2. netmask : Ipaddr.V4.t;
  3. gateways : Ipaddr.V4.t list;
}
val create_ipv4 : network impl -> ipv4_config -> ipv4 impl
val default_ipv4 : network impl -> ipv4 impl
type udpv4
val udpv4 : udpv4 typ
val direct_udpv4 : ipv4 impl -> udpv4 impl
val socket_udpv4 : Ipaddr.V4.t option -> udpv4 impl
type tcpv4
val tcpv4 : tcpv4 typ
val direct_tcpv4 : ?clock:clock impl -> ?random:random impl -> ?time:time impl -> ipv4 impl -> tcpv4 impl
val socket_tcpv4 : Ipaddr.V4.t option -> tcpv4 impl
type stackv4
val stackv4 : stackv4 typ
val direct_stackv4_with_default_ipv4 : ?clock:clock impl -> ?random:random impl -> ?time:time impl -> console impl -> network impl -> stackv4 impl
val direct_stackv4_with_static_ipv4 : ?clock:clock impl -> ?random:random impl -> ?time:time impl -> console impl -> network impl -> ipv4_config -> stackv4 impl
val direct_stackv4_with_dhcp : ?clock:clock impl -> ?random:random impl -> ?time:time impl -> console impl -> network impl -> stackv4 impl
val socket_stackv4 : console impl -> Ipaddr.V4.t list -> stackv4 impl
type channel
val channel : channel typ
val channel_over_tcpv4 : tcpv4 impl -> channel impl
type http
val http : http typ
val http_server_of_channel : channel impl -> http impl
val http_server : int -> stackv4 impl -> http impl
type job
val job : job typ
val register : string -> job impl list -> unit
type t = {
  1. name : string;
  2. root : string;
  3. jobs : job impl list;
}
val load : string option -> t
type mode = [
  1. | `Unix
  2. | `Xen
]
val set_mode : mode -> unit
val get_mode : unit -> mode
module Impl : sig ... end
val add_to_opam_packages : string list -> unit
val add_to_ocamlfind_libraries : string list -> unit
val packages : t -> string list
val libraries : t -> string list
val configure : t -> unit
val clean : t -> unit
val build : t -> unit
val run : t -> unit
module type CONFIGURABLE = sig ... end
val implementation : 'a -> 'b -> (module CONFIGURABLE with type t = 'b) -> 'a impl
val append_main : ('a, unit, string, unit) Pervasives.format4 -> 'a
val newline_main : unit -> unit
module Fat : CONFIGURABLE
module Job : CONFIGURABLE
module Name : sig ... end
OCaml

Innovation. Community. Security.