123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263moduletypeIntf=sigtypet(** The type of the component registry *)(** The type of the component selector. Either all components,
or just the specified components plus all of their dependencies. *)typecomponent_selector=|All_components|Just_named_components_plus_their_dependenciesofstringlistvalget:unit->t(** Get a reference to the global component registry *)valadd_component:?raise_on_error:bool->t->(moduleDkml_install_api.Component_config)->unit(** [add_component ?raise_on_error registry component] adds the component to the registry.
Ordinarily if there is an error a process {!exit} is performed. Set
[raise_on_error] to [true] to raise an {!Invalid_argument} error instead. *)valvalidate:?raise_on_error:bool->t->unit(** [validate ?raise_on_error registry] succeeds if and only if all dependencies of all
[add_component registry] have been themselves added.
Ordinarily if there is an error a process {!exit} is performed. Set
[raise_on_error] to [true] to raise an {!Invalid_argument} error instead. *)valinstall_eval:t->selector:component_selector->f:((moduleDkml_install_api.Component_config)->'aDkml_install_api.Forward_progress.t)->fl:Dkml_install_api.Forward_progress.fatal_logger->'alistDkml_install_api.Forward_progress.t(** [install_eval registry ~f ~fl] iterates through the registry in dependency order
using component's {!Dkml_install_api.Component_config.install_depends_on} value,
executing function [f] on each component configuration.
Errors will go to the fatal logger [fl]. *)valuninstall_eval:t->selector:component_selector->f:((moduleDkml_install_api.Component_config)->'aDkml_install_api.Forward_progress.t)->fl:Dkml_install_api.Forward_progress.fatal_logger->'alistDkml_install_api.Forward_progress.t(** [uninstall_eval registry ~f ~fl] iterates through the registry in reverse
dependency order using component's {!Dkml_install_api.Component_config.install_depends_on} value,
executing function [f] on each component configuration.
Errors will go to the fatal logger [fl]. *)(** The module [Private] is meant for internal use only. *)modulePrivate:sigvalreset:unit->unitendend