1. Overview
  2. Docs

Mirage command-line arguments

include module type of Functoria_runtime.Arg

Arg defines command-line arguments which can be set at runtime. This module is the runtime companion of Functoria_key. It exposes a subset of Cmdliner.Arg.

Runtime command-line arguments

type 'a t

The type for runtime command-line arguments. Similar to Functoria_key.Arg.t but only available at runtime.

val opt : 'a Cmdliner.Arg.converter -> 'a -> Cmdliner.Arg.info -> 'a t

opt is the runtime companion of Functoria_key.Arg.opt.

val required : 'a Cmdliner.Arg.converter -> Cmdliner.Arg.info -> 'a t

required is the runtime companion of Functoria_key.Arg.required.

val key : ?default:'a -> 'a Cmdliner.Arg.converter -> Cmdliner.Arg.info -> 'a t

key is either opt or runtime, depending if ~default is provided.

val flag : Cmdliner.Arg.info -> bool t

flag is the runtime companion of Functoria_key.Arg.flag.

val make : (string -> ('a, [ `Msg of string ]) result) -> ('a -> string) -> 'a Cmdliner.Arg.converter

make of_string pp is the command-line argument converter using on of_string and pp.

module type S = sig ... end

S is the signature used by of_module to create a command-line argument converter.

val of_module : (module S with type t = 'a) -> 'a Cmdliner.Arg.converter

of module (module M) creates a command-line argyument converter from a module satisfying the signature S.

Mirage command-line argument converters

ip_address converts IP address.

ipv4_address converts an IPv4 address.

ipv4 converts ipv4/netmask to Ipaddr.V4.t * Ipaddr.V4.Prefix.t .

ipv6_address converts IPv6 address.

ipv6 converts IPv6 prefixes.

log_threshold converts log reporter threshold.

val allocation_policy : [ `Next_fit | `First_fit | `Best_fit ] Cmdliner.Arg.converter

allocation_policy converts allocation policy.