Module Text.Property_name

(Info-goto-node "(elisp)Text Properties")

type 'a t
val sexp_of_t : ('a -> Ppx_sexp_conv_lib.Sexp.t) -> 'a t -> Ppx_sexp_conv_lib.Sexp.t
val face : Face_spec.t t

(Info-goto-node "(elisp)Special Properties")

val mouse_face : Face_spec.t t
val font_lock_face : Face_spec.t t
val display : Display_spec.t t
val name : _ t -> Ecaml.Symbol.t
val name_as_value : _ t -> Ecaml__.Import.Value.t
val to_value : 'a t -> 'a -> Ecaml__.Import.Value.t
val of_value_exn : 'a t -> Ecaml__.Import.Value.t -> 'a
module type S = sig ... end
val create_and_register : (module S with type Property_value.t = 'a) -> 'a t

create_and_register (module M) creates a new property name, and registers it with state in Property_name to enable conversion from an Elisp property list containing M.name and the associated Value.t to a Property.t.

module Packed : sig ... end with type 'a property_name := 'a t