option package:Cabal

Create an option taking a single OptDescr. No explicit Name is given for the Option, the name is the first LFlag given. Example: option sf lf d get set * sf: Short option name, for example: ['d']. No hyphen permitted. * lf: Long option name, for example: ["debug"]. No hyphens permitted. * d: Description of the option, shown to the user in help messages. * get: Get the current value of the flag. * set: Set the value of the flag. Gets the current value of the flag as a parameter.
A human-readable description of the option to guide the user setting it.
Descriptions of the options recognized by this test.
We usually have a data type for storing configuration values, where every field stores a configuration option, and the user sets the value either via command line flags or a configuration file. An individual OptionField models such a field, and we usually build a list of options associated to a configuration data type.