Function: eglot--confirm-server-edits

eglot--confirm-server-edits is a byte-compiled function defined in eglot.el.gz.

Signature

(eglot--confirm-server-edits ORIGIN PREPARED)

Documentation

Helper for `eglot--apply-workspace-edit.

ORIGIN is a symbol designating a command. PREPARED is a list of operations to apply. Reads the eglot-confirm-server-edits user option and returns a symbol like diff, summary or nil.

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/eglot.el.gz
(defun eglot--confirm-server-edits (origin prepared)
  "Helper for `eglot--apply-workspace-edit.
ORIGIN is a symbol designating a command.  PREPARED is a list of
operations to apply.  Reads the `eglot-confirm-server-edits' user
option and returns a symbol like `diff', `summary' or nil."
  (let (v op-kinds)
    (cond ((symbolp eglot-confirm-server-edits) eglot-confirm-server-edits)
          ;; Check for command-based entry
          ((setq v (assoc origin eglot-confirm-server-edits)) (cdr v))
          ;; Check for operation-kind-based entry
          ((and (setq op-kinds (mapcar #'car prepared))
                (setq v (cl-find-if (lambda (entry)
                                      (and (listp (car entry))
                                           (cl-some (lambda (kind)
                                                      (memq kind (car entry)))
                                                    op-kinds)))
                                    eglot-confirm-server-edits)))
           (cdr v))
          ;; Default entry
          ((setq v (assoc t eglot-confirm-server-edits)) (cdr v)))))