Module SubSystem
Abstract system
The functions and data types of this module are polymorphic in the actual source of the input system. See functions in InputSystem
to delegate to concrete implementations of an input format.
A system is a set of subsystems, identified by a unique scope and containing instances of one other in a directed acyclic manner. Each system has at least an implementation or a contract, it may have both.
- author
- Christoph Sticksel
type 'a t
=
{
scope : Scope.t;
source : 'a;
has_contract : bool;
has_modes : bool;
has_impl : bool;
subsystems : 'a t list;
}
A system parameterized by its actual source
val strategy_info_of : 'a t -> Strategy.info
Strategy info of a subsystem.