Module Ecaml.Var
An 'a Var.t
is a symbol that holds values of type 'a
, embedded in Elisp's Value.t
via an 'a Type.t
.
type 'a t
=
{
symbol : Symbol.t;
type_ : 'a Ecaml__.Import0.Value.Type.t;
}
val type_ : 'a t -> 'a Ecaml__.Import0.Value.Type.t
val symbol : 'a t -> Symbol.t
module Fields : sig ... end
val sexp_of_t : ('a -> Ppx_sexp_conv_lib.Sexp.t) -> 'a t -> Ppx_sexp_conv_lib.Sexp.t
type 'a var
:= 'a t
val create : Symbol.t -> 'a Ecaml__.Import0.Value.Type.t -> 'a t
module Wrap : sig ... end
Idiomatic usage of
Wrap
looks like:
module And_value : sig ... end
module And_value_option : sig ... end
val symbol_as_value : _ t -> Ecaml__.Import0.Value.t
val default_value_exn : 'a t -> 'a
(describe-function 'default-value)
(Info-goto-node "(elisp)Default Value")
val default_value_is_defined : _ t -> bool
(describe-function 'default-boundp)
(Info-goto-node "(elisp)Default Value")
val set_default_value : 'a t -> 'a -> unit
(describe-function 'set-default)
(Info-goto-node "(elisp)Default Value")
val make_buffer_local_always : _ t -> unit
(describe-function 'make-variable-buffer-local)
(Info-goto-node "(elisp)Creating Buffer-Local")
val is_buffer_local_always : _ t -> bool
is_buffer_local_always t
returnstrue
ift
automatically becomes buffer-local when set. Callingmake_buffer_local_always t
causesis_buffer_local_always t = true
.
val is_buffer_local_if_set : _ t -> Ecaml__.Buffer0.t -> bool
(describe-function 'local-variable-if-set-p )
(Info-goto-node "(elisp)Creating Buffer-Local")