Module Ecaml.Customization
include Ecaml__.Customization_intf.Customization
module Group : sig ... end
module Type : sig ... end
(Info-goto-node "(elisp)Customization Types")
val sexp_of_t : ('a -> Ppx_sexp_conv_lib.Sexp.t) -> 'a t -> Ppx_sexp_conv_lib.Sexp.t
val value : 'a t -> 'a
val set_value : 'a t -> 'a -> unit
val set_value_temporarily : 'a t -> 'a -> f:(unit -> 'b) -> 'b
val var : 'a t -> 'a Var.t
val symbol : _ t -> Symbol.t
val standard_value : 'a t -> 'a
val defcustom : ?show_form:bool -> Symbol.t -> Core_kernel.Source_code_position.t -> docstring:string -> group:Group.t -> type_:'a Ecaml__.Import.Value.Type.t -> customization_type:Type.t -> standard_value:'a -> ?on_set:('a -> unit) -> unit -> 'a t
(describe-function 'defcustom)
(Info-goto-node "(elisp)Variable Definitions")
on_set
, if supplied, is called when the user attempts to set the customization, either via the customization interface or viacustom-set-variables
.on_set
can validate the input and perform other side effects needed to keep OCaml data structures in sync with the setting. Ifon_set
raises, the customization is not set.
val customize_variable : Symbol.t -> unit
(describe-function 'customize-variable)
(Info-goto-node "(emacs)Specific customization")
val customize_group : Group.t -> unit
(describe-function 'customize-group)
(Info-goto-node "(emacs)Specific customization")
module type Enum_arg = Ecaml__.Customization_intf.Enum_arg
val defcustom_enum : Symbol.t -> Core_kernel.Source_code_position.t -> (module Enum_arg with type t = 'a) -> docstring:string -> group:Group.t -> standard_value:'a -> ?on_set:('a -> unit) -> unit -> 'a t
module Private : sig ... end