Function: elisp-refs--variable-p
elisp-refs--variable-p is a byte-compiled function defined in
elisp-refs.el.
Signature
(elisp-refs--variable-p SYMBOL FORM PATH)
Documentation
Return t if this looks like a variable reference to SYMBOL.
We consider parameters to be variables too.
Source Code
;; Defined in ~/.emacs.d/elpa/elisp-refs-20230920.201/elisp-refs.el
(defun elisp-refs--variable-p (symbol form path)
"Return t if this looks like a variable reference to SYMBOL.
We consider parameters to be variables too."
(cond
((consp form)
nil)
;; Ignore (defun _ (SYMBOL ...) ...)
((or (equal (car path) '(defsubst . 1))
(equal (car path) '(defun . 1))
(equal (car path) '(defmacro . 1))
(equal (car path) '(cl-defun . 1)))
nil)
;; (let (SYMBOL ...) ...) is a variable, not a function call.
((or
(equal (cl-second path) '(let . 1))
(equal (cl-second path) '(let* . 1)))
t)
;; (lambda (SYMBOL ...) ...) is a variable
((equal (cl-second path) '(lambda . 1))
t)
;; (let ((SYMBOL ...)) ...) is also a variable.
((or
(equal (cl-third path) '(let . 1))
(equal (cl-third path) '(let* . 1)))
t)
;; Ignore (SYMBOL ...) otherwise, we assume it's a function/macro
;; call.
((equal (car path) (cons symbol 0))
nil)
((eq form symbol)
t)))