@@ -451,11 +451,11 @@ on unknown notifications and errors on unknown requests."))
451
451
(eglot--interface interface-name)
452
452
(when-let ((missing (and enforce-required
453
453
(cl-set-difference required-keys
454
- (map -keys object)))))
454
+ (eglot--plist -keys object)))))
455
455
(eglot--error " A `%s' must have %s" interface-name missing))
456
456
(when-let ((excess (and disallow-non-standard
457
457
(cl-set-difference
458
- (map -keys object)
458
+ (eglot--plist -keys object)
459
459
(append required-keys optional-keys)))))
460
460
(eglot--error " A `%s' mustn't have %s" interface-name excess))
461
461
(when check-types
@@ -580,7 +580,7 @@ treated as in `eglot-dbind'."
580
580
; ; has all the keys the user wants to destructure.
581
581
`(null (cl-set-difference
582
582
', vars-as-keywords
583
- (map -keys , obj-once )))))
583
+ (eglot--plist -keys , obj-once )))))
584
584
collect `(, condition
585
585
(cl-destructuring-bind (&key ,@vars &allow-other-keys)
586
586
, obj-once
@@ -3103,7 +3103,12 @@ If INTERACTIVE, prompt user for details."
3103
3103
3104
3104
(make-obsolete-variable 'eglot--managed-mode-hook
3105
3105
'eglot-managed-mode-hook " 1.6" )
3106
- (define-obsolete-function-alias 'eglot--plist-keys #'map-keys " 1.9" )
3106
+
3107
+ (if (< emacs-major-version 27 )
3108
+ (defun eglot--plist-keys (plist )
3109
+ (cl-loop for (k _v) on plist by #'cddr collect k))
3110
+ ; ; Make into an obsolete alias once we drop support for Emacs 26.
3111
+ (defalias 'eglot--plist-keys #'map-keys ))
3107
3112
3108
3113
(provide 'eglot )
3109
3114
0 commit comments