[][src]Attribute Macro emacs_macros::module

#[module]

Registers a function as the initializer, to be called when Emacs loads the module. Each dynamic module must have one and only one such function.

Options

  • name: By default, name of the feature provided by the module is the crate's name (with _ replaced by -). There is no need to explicitly call provide inside the initializer. This option allows the initializer's name, or a string, to be used instead. For examples: #[module(name(fn))], or #[module(name = "feature-name")].
  • separator: Function names in Emacs are conventionally prefixed with the feature name, followed by -, this option allows a different separator to be used. For example: #[module(separator = "/")].
  • mod_in_name: Whether to put module path in function names. Default to true. This can also be overridden for each individual function, by an option of the same name in #[defun].