Variable: macro-declarations-alist
macro-declarations-alist is a variable defined in byte-run.el.gz.
Value
((cl-optimize cl--optimize)
(gv-expander gv--expander-defun-declaration)
(debug byte-run--set-debug)
(autoload-macro byte-run--set-autoload-macro)
(indent
#[128 "\301\300\"\302\303E\207"
[byte-run--set-indent apply progn :autoload-end] 5
("emacs-lisp/byte-run.elc" . 5649)])
(no-font-lock-keyword byte-run--set-no-font-lock-keyword)
(advertised-calling-convention
byte-run--set-advertised-calling-convention)
(obsolete byte-run--set-obsolete)
(interactive-only byte-run--set-interactive-only)
(pure byte-run--set-pure
"If non-nil, the compiler can replace calls with their return value.\nThis may shift errors from run-time to compile-time.")
(side-effect-free byte-run--set-side-effect-free
"If non-nil, calls can be ignored if their value is unused.\nIf `error-free', drop calls even if `byte-compile-delete-errors' is nil.")
(important-return-value byte-run--set-important-return-value
"If non-nil, warn about calls not using the returned value.")
(compiler-macro byte-run--set-compiler-macro)
(doc-string byte-run--set-doc-string) (indent byte-run--set-indent)
(speed byte-run--set-speed) (safety byte-run--set-safety)
(completion byte-run--set-completion) (modes byte-run--set-modes)
(interactive-args byte-run--set-interactive-args)
(ftype byte-run--set-function-type))
Documentation
List associating properties of macros to their macro expansion.
Each element of the list takes the form (PROP FUN) where FUN is a function. For each (PROP . VALUES) in a macro's declaration, the FUN corresponding to PROP is called with the macro name, the macro's arglist, and the VALUES and should return the code to use to set this property.
This is used by declare.
Probably introduced at or before Emacs version 24.3.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/byte-run.el.gz
(defvar macro-declarations-alist
(nconc
(list
(list 'debug #'byte-run--set-debug)
;; macros can declare (autoload-macro expand) to request expansion
;; during autoload generation of forms calling them. See
;; `loaddefs-generate--make-autoload'.
(list 'autoload-macro #'byte-run--set-autoload-macro)
;; Override the entry from `defun-declarations-alist', because we
;; prefer to autoload the macro when trying to indent it (bug#68818).
(list 'indent (byte-run--dont-autoload #'byte-run--set-indent))
(list 'no-font-lock-keyword #'byte-run--set-no-font-lock-keyword))
defun-declarations-alist)
"List associating properties of macros to their macro expansion.
Each element of the list takes the form (PROP FUN) where FUN is a function.
For each (PROP . VALUES) in a macro's declaration, the FUN corresponding
to PROP is called with the macro name, the macro's arglist, and the VALUES
and should return the code to use to set this property.
This is used by `declare'.")