package mirage

  1. Overview
  2. Docs

Signature for configurable module implementations. A configurable is a module implementation which contains a runtime state which can be set either at configuration time (by the application builder) or at runtime, using command-line arguments.

method ty : 'ty typ

ty is the module type of the configurable.

method name : string

name is the unique variable name holding the runtime state of the configurable.

method module_name : string

module_name is the name of the module implementing the configurable.

method packages : string list value

packages is the list of OPAM packages which needs to be installed before compiling the configurable.

method libraries : string list value

libraries is the list of OCamlfind libraries to include and link with the configurable.

method connect : Info.t -> string -> string list -> string

connect info mod args is the code to execute in order to initialize the state associated with the module mod (usually calling mod.connect) with the arguments args, in the context of the project information info.

method configure : Info.t -> (unit, string) Rresult.result

configure info is the code to execute in order to configure the device. This might involve generating more OCaml code, running bash scripts, etc.

method clean : Info.t -> (unit, string) Rresult.result

clean info is the code to clean-up what has been generated by configure.

method keys : key list

keys is the list of command-line keys to set-up the configurable.

method deps : abstract_impl list

deps is the list of abstract implementations that must be initialized before calling connect.

OCaml

Innovation. Community. Security.