Function: nxml-token-after
nxml-token-after is a byte-compiled function defined in
nxml-rap.el.gz.
Signature
(nxml-token-after)
Documentation
Return the position after the token containing the char after point.
Sets up the variables xmltok-type, xmltok-start,
xmltok-name-end, xmltok-name-colon, xmltok-attributes,
xmltok-namespace-attributes in the same was as does
xmltok-forward. The prolog will be treated as a single token with
type prolog.
Source Code
;; Defined in /usr/src/emacs/lisp/nxml/nxml-rap.el.gz
;;; Random access parsing
(defun nxml-token-after ()
"Return the position after the token containing the char after point.
Sets up the variables `xmltok-type', `xmltok-start',
`xmltok-name-end', `xmltok-name-colon', `xmltok-attributes',
`xmltok-namespace-attributes' in the same was as does
`xmltok-forward'. The prolog will be treated as a single token with
type `prolog'."
(let ((pos (point)))
(if (< pos nxml-prolog-end)
(progn
(setq xmltok-type 'prolog
xmltok-start (point-min))
(min nxml-prolog-end (point-max)))
(nxml-ensure-scan-up-to-date)
(if (nxml-get-inside pos)
(save-excursion
(nxml-move-outside-backwards)
(xmltok-forward)
(point))
(save-excursion
(if (or (eq (char-after) ?<)
(search-backward "<"
(max (point-min) nxml-prolog-end)
t))
(nxml-move-outside-backwards)
(goto-char (if (<= (point-min) nxml-prolog-end)
nxml-prolog-end
(or (nxml-inside-end (point-min))
(point-min)))))
(while (and (nxml-tokenize-forward)
(<= (point) pos)))
(point))))))