Function: elisp-scope-defmethod
elisp-scope-defmethod is a byte-compiled function defined in
elisp-scope.el.gz.
Signature
(elisp-scope-defmethod NAME REST)
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/elisp-scope.el.gz
;; (defun elisp-scope-defmethod (local name rest)
;; (when (and (symbol-with-pos-p (car rest))
;; (eq (bare-symbol (car rest)) :extra))
;; (setq rest (cddr rest)))
;; (when (and (symbol-with-pos-p (car rest))
;; (memq (bare-symbol (car rest)) '(:before :after :around)))
;; (setq rest (cdr rest)))
;; (elisp-scope-defmethod-1 local local name (car rest)
;; (if (stringp (cadr rest)) (cddr rest) (cdr rest))))
(defun elisp-scope-defmethod (name rest)
(when-let* ((beg (elisp-scope--sym-pos name)) (bare (elisp-scope--sym-bare name)))
(elisp-scope--report 'defun beg bare))
;; [EXTRA]
(when (eq (elisp-scope--sym-bare (car rest)) :extra)
(elisp-scope--symbol (car rest))
(setq rest (cddr rest)))
;; [QUALIFIER]
(when (keywordp (elisp-scope--sym-bare (car rest)))
(elisp-scope--symbol (car rest))
(setq rest (cdr rest)))
;; ARGUMENTS
(elisp-scope-defmethod-1 elisp-scope-local-bindings (car rest) (cdr rest)))