Module Mirage.Key

Configuration keys.

module Arg = Mirage_key.Arg
type 'a value = 'a Functoria_key.value
val pure : 'a -> 'a value
val ($) : ('a -> 'b) value -> 'a value -> 'b value
val map : ('a -> 'b) -> 'a value -> 'b value
val if_ : bool value -> 'a -> 'a -> 'a value
val match_ : 'a value -> ('a -> 'b) -> 'b value
val default : 'a value -> 'a
type 'a key = 'a Functoria_key.key
val create : string -> 'a Arg.t -> 'a key
val value : 'a key -> 'a value
type t = Functoria_key.t
module Set = Mirage_key.Set
val abstract : 'a key -> t
val compare : t -> t -> int
val pp : t Fmt.t
val of_deps : Set.t -> unit value
val deps : 'a value -> Set.t
val pp_deps : 'a value Fmt.t
val is_runtime : t -> bool
val is_configure : t -> bool
val filter_stage : Arg.stage -> Set.t -> Set.t
module Alias = Mirage_key.Alias
val alias : string -> 'a Alias.t -> 'a key
val aliases : t -> Set.t
val name : t -> string
type context = Functoria_key.context
val dump_context : context Fmt.t
val empty_context : context
val merge_context : default:context -> context -> context
val add_to_context : 'a key -> 'a -> context -> context
val context : ?⁠stage:Arg.stage -> with_required:bool -> Set.t -> context Cmdliner.Term.t
val mem : context -> 'a value -> bool
val peek : context -> 'a value -> 'a option
val eval : context -> 'a value -> 'a
val get : context -> 'a key -> 'a
val pps : context -> Set.t Fmt.t
val ocaml_name : t -> string
val serialize_call : t Fmt.t
val serialize : context -> t Fmt.t
val module_name : string
type mode = [
| `Genode
| `Hvt
| `MacOSX
| `Muen
| `Qubes
| `Unix
| `Virtio
| `Xen
]
val target : mode key
val pp_target : mode Fmt.t
val is_unix : bool value
val warn_error : bool key
val target_debug : bool key
val no_depext : bool key
val tracing_size : int -> int key
val kv_ro : ?⁠group:string -> unit -> [ `Archive | `Crunch | `Direct | `Fat ] key
val block : ?⁠group:string -> unit -> [ `BlockFile | `Ramdisk | `XenstoreId ] key
val prng : [ `Nocrypto | `Stdlib ] key
val dhcp : ?⁠group:string -> unit -> bool key
val net : ?⁠group:string -> unit -> [ `Direct | `Socket ] option key
val interface : ?⁠group:string -> string -> string key
module V4 = Mirage_key.V4
module V6 = Mirage_key.V6
val syslog : Ipaddr.V4.t option -> Ipaddr.V4.t option key
val syslog_port : int option -> int option key
val syslog_hostname : string -> string key
val logs : Mirage_runtime.log_threshold list key