You can search for identifiers within the package.
in-package search v0.2.0
Source file enum_intf.ml
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131open!BasemoduletypeSexp_of=sigtypet[@@derivingsexp_of]endmoduletypeSingle=sig(** These functions take single values of ['a] instead of enumerating all of them. *)type'at(** Map a constructor name to a command-line string: downcase the name and convert [_] to
[-]. *)valto_string_hum:'at->'a->stringvalcheck_field_name:'at->'a->(_,_,_)Field.t_with_perm->unitendmoduletypeS=Command.Enumerable_sexpablemoduletypeS_to_string=Command.Enumerable_stringablemoduletypeEnum=sigmoduletypeS=Stype'at=(moduleSwithtypet='a)includeSinglewithtype'at:='atvalenum:'at->(string*'a)listvalassert_alphabetic_order_exn:Source_code_position.t->'at->unittype('a,'b)make_param=?case_sensitive:bool->?represent_choice_with:string(** If [represent_choice_with] is not passed, the documentation will be:
{v
-flag (choice1|choice2|...) [doc]
v}
If there are many choices, this can cause this and other flags to have the
documentation aligned very far to the right. To avoid that, the
[represent_choice_with] flag can be passed as a shorter reference to the possible
choices. Example:
{v
-flag CHOICE [doc], CHOICE can be (choice1|choice2|...)
v}
[Command] does a much better job of aligning this.
*)->?list_values_in_help:bool->?aliases:stringlist->?key:'aUniv_map.Multi.Key.t->string->doc:string->'at->'bCommand.Param.tvalmake_param:f:('aCommand.Arg_type.t->'bCommand.Flag.t)->('a,'b)make_paramvalmake_param_one_of_flags:?if_nothing_chosen:('a,'a)Command.Param.If_nothing_chosen.t(** Default: Raise *)->?aliases:('a->stringlist)->doc:('a->string)->'at->'aCommand.Param.tvalmake_param_optional_with_default_doc:default:'a->('a,'a)make_paramvalmake_param_optional_comma_separated:?allow_empty:bool->?strip_whitespace:bool->?unique_values:bool->('a,'alistoption)make_paramvalmake_param_optional_comma_separated_with_default_doc:?allow_empty:bool->?strip_whitespace:bool->?unique_values:bool->default:'alist->('a,'alist)make_paramvalarg_type:?case_sensitive:bool->?key:'aUniv_map.Multi.Key.t->?list_values_in_help:bool->'at->'aCommand.Arg_type.t(** Transform a string to be accepted by [Command]. This is the transformation that is
applied throughout this module.
The transformations are:
+ Single quotes get removed (since it's annoying to have to quote them when running
commands manually)
+ Underscores get turned into dashes (just to hopefully have a uniform convention
between the two)
+ Other characters get lowercased
Note that this is *not* actually a complete list of transformations needed to make
an arbitrary string "command-friendly": for example, double quotes are left
alone. This is because the expectation is that the string came from something like a
[[@@deriving sexp]] on a variant type, and while single quotes can appear in ocaml
variants, double quotes cannot. *)valcommand_friendly_name:string->string(** Defines [to_string] and [of_string] functions for [M], based on [M.sexp_of_t] and
[M.all]. The sexp representation of [M.t] must be a sexp atom. *)moduleMake_stringable(M:S):Stringable.Swithtypet:=M.t(** Defines an [of_string] function for [M], using [M.all] and [M.to_string]. Does not
require [M] to be sexpable. *)moduleMake_of_string(M:S_to_string):sigvalof_string:String.t->M.tend(** Defines [to_string] for [M], based on [M.sexp_of_t]. The sexp representation of
[M.t] must be a sexp atom. *)moduleMake_to_string(M:Sexp_of):sigvalto_string:M.t->String.tendmoduleSingle:sigmoduletypeS=Sexp_oftype'at=(moduleSwithtypet='a)includeSinglewithtype'at:='atendend