Function: vc-call-backend
vc-call-backend is a byte-compiled function defined in vc-hooks.el.gz.
Signature
(vc-call-backend BACKEND FUNCTION-NAME &rest ARGS)
Documentation
Call for BACKEND the implementation of FUNCTION-NAME with the given ARGS.
Calls
(apply #'vc-BACKEND-FUN ARGS)
if vc-BACKEND-FUN exists (after trying to find it in vc-BACKEND.el) and else calls
(apply #'vc-default-FUN BACKEND ARGS)
See also the vc-call macro.
Source Code
;; Defined in /usr/src/emacs/lisp/vc/vc-hooks.el.gz
(defun vc-call-backend (backend function-name &rest args)
"Call for BACKEND the implementation of FUNCTION-NAME with the given ARGS.
Calls
(apply #\\='vc-BACKEND-FUN ARGS)
if vc-BACKEND-FUN exists (after trying to find it in vc-BACKEND.el)
and else calls
(apply #\\='vc-default-FUN BACKEND ARGS)
See also the `vc-call' macro."
(let ((f (assoc function-name (get backend 'vc-functions))))
(if f (setq f (cdr f))
(setq f (vc-find-backend-function backend function-name))
(push (cons function-name f) (get backend 'vc-functions)))
(cond
((null f)
(signal 'vc-not-supported (list function-name backend)))
((consp f) (apply (car f) (cdr f) args))
(t (apply f args)))))