Function: eudc-protocol-set

eudc-protocol-set is a byte-compiled function defined in eudc.el.gz.

Signature

(eudc-protocol-set VAR VAL &optional PROTOCOL)

Documentation

Set the PROTOCOL-local binding of VAR to VAL.

If omitted PROTOCOL defaults to the current value of eudc-protocol. The current binding of VAR is changed only if PROTOCOL is omitted.

Source Code

;; Defined in /usr/src/emacs/lisp/net/eudc.el.gz
(defun eudc-protocol-set (var val &optional protocol)
  "Set the PROTOCOL-local binding of VAR to VAL.
If omitted PROTOCOL defaults to the current value of `eudc-protocol'.
The current binding of VAR is changed only if PROTOCOL is omitted."
  (if (eq 'unbound (eudc-variable-default-value var))
      (eudc-default-set var (symbol-value var)))
  (let* ((eudc-locals (get var 'eudc-locals))
	 (protocol-locals (eudc-plist-get eudc-locals 'protocol)))
    (setq protocol-locals (plist-put protocol-locals (or protocol
							 eudc-protocol) val))
    (setq eudc-locals
	  (plist-put eudc-locals 'protocol protocol-locals))
    (put var 'eudc-locals eudc-locals)
    (add-to-list 'eudc-local-vars var)
    (unless protocol
      (eudc-update-variable var))))