diff options
| author | Phillip Lord <phillip.lord@russet.org.uk> | 2020-05-02 10:35:06 +0100 |
|---|---|---|
| committer | Nathan Moreau <nathan.moreau@m4x.org> | 2020-05-03 17:06:24 +0200 |
| commit | 8733792250169d7c2234d6eec710ae4ba37c15e5 (patch) | |
| tree | 9b9707271ecb3b4c020193cd9c132bda81685251 /rust-mode.el | |
| parent | 39f32ccd6a1183df26a223a23db255a67076cd2d (diff) | |
| download | rust-mode-8733792250169d7c2234d6eec710ae4ba37c15e5.tar.gz | |
Drop Emacs-24
Emacs-24 is now two major versions behind and will soon be three, so
formally remove support for it.
Diffstat (limited to 'rust-mode.el')
| -rw-r--r-- | rust-mode.el | 75 |
1 files changed, 2 insertions, 73 deletions
diff --git a/rust-mode.el b/rust-mode.el index 9d6040b..6a0c1b5 100644 --- a/rust-mode.el +++ b/rust-mode.el @@ -4,7 +4,7 @@ ;; Author: Mozilla ;; Url: https://github.com/rust-lang/rust-mode ;; Keywords: languages -;; Package-Requires: ((emacs "24.0")) +;; Package-Requires: ((emacs "25.1")) ;; This file is distributed under the terms of both the MIT license and the ;; Apache License (version 2.0). @@ -28,13 +28,6 @@ (defvar rust-buffer-project) (make-variable-buffer-local 'rust-buffer-project) -;; for GNU Emacs < 24.3 -(eval-when-compile - (unless (fboundp 'setq-local) - (defmacro setq-local (var val) - "Set variable VAR to value VAL in current buffer." - (list 'set (list 'make-local-variable (list 'quote var)) val)))) - (defun rust-re-word (inner) (concat "\\<" inner "\\>")) (defun rust-re-grab (inner) (concat "\\(" inner "\\)")) (defun rust-re-shy (inner) (concat "\\(?:" inner "\\)")) @@ -2005,77 +1998,13 @@ visit the new file." (goto-char old-point))) (t (when (rust-in-str) - (rust--up-list -1 t t)) + (up-list -1 t t)) (insert "(") (forward-sexp) (insert ")") (backward-sexp))) (insert "dbg!")) -(defun rust--up-list (&optional arg escape-strings no-syntax-crossing) - "Compatibility for emacs 24." - (or arg (setq arg 1)) - (let ((inc (if (> arg 0) 1 -1)) - (pos nil)) - (while (/= arg 0) - (condition-case err - (save-restriction - ;; If we've been asked not to cross string boundaries - ;; and we're inside a string, narrow to that string so - ;; that scan-lists doesn't find a match in a different - ;; string. - (when no-syntax-crossing - (let* ((syntax (syntax-ppss)) - (string-comment-start (nth 8 syntax))) - (when string-comment-start - (save-excursion - (goto-char string-comment-start) - (narrow-to-region - (point) - (if (nth 3 syntax) ; in string - (condition-case nil - (progn (forward-sexp) (point)) - (scan-error (point-max))) - (forward-comment 1) - (point))))))) - (if (null forward-sexp-function) - (goto-char (or (scan-lists (point) inc 1) - (buffer-end arg))) - (condition-case err - (while (progn (setq pos (point)) - (forward-sexp inc) - (/= (point) pos))) - (scan-error (goto-char (nth (if (> arg 0) 3 2) err)))) - (if (= (point) pos) - (signal 'scan-error - (list "Unbalanced parentheses" (point) (point)))))) - (scan-error - (let ((syntax nil)) - (or - ;; If we bumped up against the end of a list, see whether - ;; we're inside a string: if so, just go to the beginning - ;; or end of that string. - (and escape-strings - (or syntax (setf syntax (syntax-ppss))) - (nth 3 syntax) - (goto-char (nth 8 syntax)) - (progn (when (> inc 0) - (forward-sexp)) - t)) - ;; If we narrowed to a comment above and failed to escape - ;; it, the error might be our fault, not an indication - ;; that we're out of syntax. Try again from beginning or - ;; end of the comment. - (and no-syntax-crossing - (or syntax (setf syntax (syntax-ppss))) - (nth 4 syntax) - (goto-char (nth 8 syntax)) - (or (< inc 0) - (forward-comment 1)) - (setf arg (+ arg inc))) - (signal (car err) (cdr err)))))) - (setq arg (- arg inc))))) - ;;;###autoload (defun rust-dbg-wrap-or-unwrap () "Either remove or add the dbg! macro." |
