]> code.delx.au - gnu-emacs/blobdiff - lisp/nxml/nxml-util.el
* lisp/emacs-lisp/eieio-core.el (eieio-oset-default): Catch the unexpected
[gnu-emacs] / lisp / nxml / nxml-util.el
index 6ba6d21f7ed0d5f96e58e4d6fc646492c96671be..27b438243120288b56deaa3d66b3def37cde5e53 100644 (file)
@@ -1,9 +1,9 @@
-;;; nxml-util.el --- utility functions for nxml-*.el
+;;; nxml-util.el --- utility functions for nxml-*.el  -*- lexical-binding:t -*-
 
-;; Copyright (C) 2003, 2007-2013 Free Software Foundation, Inc.
+;; Copyright (C) 2003, 2007-2015 Free Software Foundation, Inc.
 
 ;; Author: James Clark
-;; Keywords: XML
+;; Keywords: wp, hypermedia, languages, XML
 
 ;; This file is part of GNU Emacs.
 
@@ -45,7 +45,7 @@
 
 (defmacro nxml-debug-clear-inside (start end)
   (when nxml-debug
-    `(loop for overlay in (overlays-in ,start ,end)
+    `(cl-loop for overlay in (overlays-in ,start ,end)
            if (overlay-get overlay 'nxml-inside-debug)
            do (delete-overlay overlay)
            finally (nxml-debug-change "nxml-clear-inside" ,start ,end))))
@@ -70,6 +70,7 @@ This is the inverse of `nxml-make-namespace'."
   (nxml-make-namespace "http://www.w3.org/2000/xmlns/"))
 
 (defmacro nxml-with-degradation-on-error (context &rest body)
+  (declare (indent 1) (debug t))
   (if (not nxml-debug)
       (let ((error-symbol (make-symbol "err")))
         `(condition-case ,error-symbol
@@ -80,12 +81,10 @@ This is the inverse of `nxml-make-namespace'."
 
 (defmacro nxml-with-invisible-motion (&rest body)
   "Evaluate body without calling any point motion hooks."
+  (declare (indent 0) (debug t))
   `(let ((inhibit-point-motion-hooks t))
      ,@body))
 
-(put 'nxml-with-invisible-motion 'lisp-indent-function 0)
-(def-edebug-spec nxml-with-invisible-motion t)
-
 (defun nxml-display-file-parse-error (err)
   (let* ((filename (nth 1 err))
         (buffer (find-file-noselect filename))
@@ -101,13 +100,8 @@ This is the inverse of `nxml-make-namespace'."
   (signal (or error-symbol 'nxml-file-parse-error)
          (list file pos message)))
 
-(put 'nxml-file-parse-error
-     'error-conditions
-     '(error nxml-file-parse-error))
-
-(put 'nxml-parse-file-error
-     'error-message
-     "Error parsing file")
+(define-error 'nxml-error nil)
+(define-error 'nxml-file-parse-error "Error parsing file" 'nxml-error)
 
 (provide 'nxml-util)