Module Parameter_sig

module Parameter_sig: sig .. end
Signatures for command line options.


Input signatures

One of these signatures is required to implement a new command line option.

module type Input = sig .. end
Minimal signature to implement for each parameter corresponding to an option on the command line argument.
module type Input_with_arg = sig .. end
Minimal signature to implement for each parameter corresponding to an option on the command line argument which requires an argument.
module type Input_collection = sig .. end
Minimal signature for collections of custom datatype
module type String_datatype = sig .. end
Signature required to build custom collection parameters in which elements are convertible to string.
module type String_datatype_with_collections = sig .. end
Signature requires to build custom collection parameters in which elements are convertible to string.
module type Value_datatype = sig .. end
Signature of the optional value associated to the key and required to build map parameters.
module type Multiple_value_datatype = sig .. end
Signature of the optional value associated to the key and required to build multiple map parameters.

Output signatures

Signatures corresponding to a command line option of a specific type.

Generic signatures


module type S_no_parameter = sig .. end
Generic signature of a parameter, without parameter.
module type S = sig .. end
Generic signature of a parameter.

Signatures for simple datatypes


module type Bool = sig .. end
Signature for a boolean parameter.
module type Int = sig .. end
Signature for an integer parameter.
module type String = sig .. end
Signature for a string parameter.

Custom signatures


module type With_output = sig .. end
Signature for a boolean parameter that causes something to be output.
module type Specific_dir = sig .. end
signature for searching files in a specific directory.
type existence = 
| Must_exist
| Must_not_exist
| Indifferent
module type Filepath = sig .. end
signature for normalized pathnames.

Collections


module type Collection_category = sig .. end
Signature for a category over a collection.
module type Collection = sig .. end
Common signature to all collections.
module type Set = sig .. end
Signature for sets as command line parameters.
module type String_set = Set  with type elt = string and type t = Datatype.String.Set.t
module type Kernel_function_set = Set  with type elt = Cil_types.kernel_function
      and type t = Cil_datatype.Kf.Set.t
Set of defined kernel functions.
module type Fundec_set = Set  with type elt = Cil_types.fundec
      and type t = Cil_datatype.Fundec.Set.t
module type List = sig .. end
Signature for lists as command line parameters.
module type String_list = List  with type elt = string and type t = string list
module type Map = sig .. end
Signature for maps as command line parameters.
module type Multiple_map = sig .. end
Signature for multiple maps as command line parameters.

All the different kinds of command line options as functors


module type Builder = sig .. end
Signatures containing the different functors which may be used to generate new command line options.