Module Ecaml.Load_history

load-history is an Emacs alist that associates the names of loaded library files with the names of the functions and variables they defined, as well as the features they provided or required. This is used by find-function, find-variable, and in *Help* buffers to jump from a symbol to its definition.

(Info-goto-node "(elisp)Where Defined")

val defining_file : Symbol.t ‑> string option

(describe-function 'symbol-file)

module Entry : sig ... end

Entry defines the various kinds of entries stored in load-history.

val add_entry : Core_kernel.Source_code_position.t ‑> Entry.t ‑> unit

add_entry is called by (defcustom, defun, defvar) and adds the entry to a list ref, for later use by update_emacs_with_entries.

val update_emacs_with_entries : chop_prefix:string ‑> in_dir:string ‑> unit

update_emacs_with_entries updates load-history with the information supplied to add_entry, which make it possible to, within Emacs, jump from a symbol defined by Ecaml to the Ecaml source. Each source-file name is adjusted by:

      Filename.concat in_dir (String.chop_prefix_exn file ~prefix:chop_prefix)
module Type : sig ... end
val location_exn : Symbol.t ‑> Type.t ‑> Core_kernel.Source_code_position.t