Current File : //proc/self/root/kunden/usr/share/emacs/27.2/lisp/nxml/xmltok.elc |
;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.
;;; This file uses dynamic docstrings, first added in Emacs 19.29.
;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defvar xmltok-type nil)
(defvar xmltok-start nil)
(defvar xmltok-name-colon nil)
(defvar xmltok-name-end nil)
#@68 String containing replacement for a character or entity reference.
(defvar xmltok-replacement nil (#$ . 519))
#@377 List containing attributes of last scanned element.
Each member of the list is a vector representing an attribute, which
can be accessed using the functions `xmltok-attribute-name-start',
`xmltok-attribute-name-colon', `xmltok-attribute-name-end',
`xmltok-attribute-value-start', `xmltok-attribute-value-end',
`xmltok-attribute-raw-normalized-value', `xmltok-attribute-refs'.
(defvar xmltok-attributes nil (#$ . 636))
#@110 List containing namespace declarations of last scanned element.
List has same format as `xmltok-attributes'.
(defvar xmltok-namespace-attributes nil (#$ . 1061))
#@1219 Information about the DTD used by `xmltok-forward'.
`xmltok-forward-prolog' sets this up.
It consists of an alist of general entity names vs definitions. The
first member of the alist is t if references to entities not in the
alist are well-formed (e.g. because there's an external subset that
wasn't parsed).
Each general entity name is a string. The definition is either nil,
a symbol, a string, a cons cell. If the definition is nil, then it
means that it's an internal entity but the result of parsing it is
unknown. If it is a symbol, then the symbol is either `unparsed',
meaning the entity is an unparsed entity, `external', meaning the
entity is or references an external entity, `element', meaning the
entity includes one or more elements, or `not-well-formed', meaning
the replacement text is not well-formed. If the definition is a
string, then the replacement text of the entity is that string; this
happens only during the parsing of the prolog. If the definition is
a cons cell (ER . AR), then ER specifies the string that results
from referencing the entity in element content and AR is either nil,
meaning the replacement text included a <, or a string which is the
normalized attribute value.
(defvar xmltok-dtd nil (#$ . 1231))
#@375 List of errors detected by `xmltok-forward' and `xmltok-forward-prolog'.
When `xmltok-forward' and `xmltok-forward-prolog' detect a
well-formedness error, they will add an entry to the beginning of this
list. Each entry is a vector [MESSAGE START END], where MESSAGE is a
string giving the error message and START and END are integers
indicating the position of the error.
(defvar xmltok-errors nil (#$ . 2492))
#@19
(fn &rest BODY)
(defalias 'xmltok-save '(macro . #[128 "\300\301BB\207" [let (xmltok-type xmltok-start xmltok-name-colon xmltok-name-end xmltok-replacement xmltok-attributes xmltok-namespace-attributes xmltok-errors)] 4 (#$ . 2911)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put xmltok-save lisp-indent-function 0 put edebug-form-spec t] 5)
#@12
(fn ATT)
(defalias 'xmltok-attribute-name-start #[257 "\211\300H\207" [0] 3 (#$ . 3283)])
(put 'xmltok-attribute-name-start 'byte-optimizer 'byte-compile-inline-expand)
#@12
(fn ATT)
(defalias 'xmltok-attribute-name-colon #[257 "\211\300H\207" [1] 3 (#$ . 3460)])
(put 'xmltok-attribute-name-colon 'byte-optimizer 'byte-compile-inline-expand)
#@12
(fn ATT)
(defalias 'xmltok-attribute-name-end #[257 "\211\300H\207" [2] 3 (#$ . 3637)])
(put 'xmltok-attribute-name-end 'byte-optimizer 'byte-compile-inline-expand)
#@12
(fn ATT)
(defalias 'xmltok-attribute-value-start #[257 "\211\300H\207" [3] 3 (#$ . 3810)])
(put 'xmltok-attribute-value-start 'byte-optimizer 'byte-compile-inline-expand)
#@12
(fn ATT)
(defalias 'xmltok-attribute-value-end #[257 "\211\300H\207" [4] 3 (#$ . 3989)])
(put 'xmltok-attribute-value-end 'byte-optimizer 'byte-compile-inline-expand)
#@262 Return an object representing the normalized value of ATT.
This can be t indicating that the normalized value is the same as
the buffer substring from the start to the end of the value, or nil
indicating that the value is not well-formed or a string.
(fn ATT)
(defalias 'xmltok-attribute-raw-normalized-value #[257 "\211\300H\207" [5] 3 (#$ . 4165)])
(put 'xmltok-attribute-raw-normalized-value 'byte-optimizer 'byte-compile-inline-expand)
#@287 Return a list of the entity and character references in ATT.
Each member is a vector [TYPE START END] where TYPE is either char-ref
or entity-ref and START and END are integers giving the start and end of
the reference. Nested entity references are not included in the list.
(fn ATT)
(defalias 'xmltok-attribute-refs #[257 "\211\300H\207" [6] 3 (#$ . 4613)])
(put 'xmltok-attribute-refs 'byte-optimizer 'byte-compile-inline-expand)
#@12
(fn ATT)
(defalias 'xmltok-attribute-prefix #[257 "\211\211\300H\262\211\205 \301\211\302H\262\"\207" [1 buffer-substring-no-properties 0] 6 (#$ . 5053)])
#@12
(fn ATT)
(defalias 'xmltok-attribute-local-name #[257 "\211\211\300H\262\301\203 T\202 \211\302H\262\211\303H\262\"\207" [1 buffer-substring-no-properties 0 2] 7 (#$ . 5221)])
#@12
(fn ATT)
(defalias 'xmltok-attribute-value #[257 "\211\211\300H\262\211\205! \211;\203 \211\202! \301\211\302H\262\211\303H\262\"\207" [5 buffer-substring-no-properties 3 4] 7 (#$ . 5414)])
(defalias 'xmltok-start-tag-prefix #[0 "\205 \302 T\"\207" [xmltok-name-colon xmltok-start buffer-substring-no-properties] 3])
(defalias 'xmltok-start-tag-local-name #[0 "\303\206 T\n\"\207" [xmltok-name-colon xmltok-start xmltok-name-end buffer-substring-no-properties] 3])
(defalias 'xmltok-end-tag-prefix #[0 "\205\n \302\303 \\\"\207" [xmltok-name-colon xmltok-start buffer-substring-no-properties 2] 3])
(defalias 'xmltok-end-tag-local-name #[0 "\303\203\n T\202
\304 \\\n\"\207" [xmltok-name-colon xmltok-start xmltok-name-end buffer-substring-no-properties 2] 3])
(defalias 'xmltok-start-tag-qname #[0 "\302T \"\207" [xmltok-start xmltok-name-end buffer-substring-no-properties] 3])
(defalias 'xmltok-end-tag-qname #[0 "\302\303\\ \"\207" [xmltok-start xmltok-name-end buffer-substring-no-properties 2] 3])
#@283 Make an attribute.
RAW-NORMALIZED-VALUE is nil if the value is not well-formed,
t if the normalized value is the string between VALUE-BEGIN
and VALUE-END, otherwise a STRING giving the value.
(fn NAME-BEGIN NAME-COLON NAME-END &optional VALUE-BEGIN VALUE-END RAW-NORMALIZED-VALUE)
(defalias 'xmltok-make-attribute #[1539 "\300\301&\207" [vector nil] 14 (#$ . 6446)])
(put 'xmltok-make-attribute 'byte-optimizer 'byte-compile-inline-expand)
#@12
(fn ERR)
(defalias 'xmltok-error-message #[257 "\211\300H\207" [0] 3 (#$ . 6906)])
(put 'xmltok-error-message 'byte-optimizer 'byte-compile-inline-expand)
#@12
(fn ERR)
(defalias 'xmltok-error-start #[257 "\211\300H\207" [1] 3 (#$ . 7069)])
(put 'xmltok-error-start 'byte-optimizer 'byte-compile-inline-expand)
#@12
(fn ERR)
(defalias 'xmltok-error-end #[257 "\211\300H\207" [2] 3 (#$ . 7228)])
(put 'xmltok-error-end 'byte-optimizer 'byte-compile-inline-expand)
#@26
(fn MESSAGE START END)
(defalias 'xmltok-make-error #[771 "\300#\207" [vector] 7 (#$ . 7383)])
(put 'xmltok-make-error 'byte-optimizer 'byte-compile-inline-expand)
#@36
(fn MESSAGE &optional START END)
(defalias 'xmltok-add-error #[769 "\206 \206 `\302#\266\203 B\211\207" [xmltok-start xmltok-errors vector] 10 (#$ . 7558)])
(defalias 'xmltok-forward #[0 "`\303\304\303w\303f\211\305\267\2028 \306V\203 \307\211\202\216 \310u\210\311 \202\216 \306V\203/ \307\211\202\216 \310u\210\312\313!\202\216 \314\315\303\316#\203v \310\224\204O \306\224b\210\317\211\202\216 \310\224U\203` \320\321!\210\322\211\202\216 \306\224b\210`\\U\203p \307\202q \317\211\202\216 \211\303=\203\210 \306V\205\203 \307\211\202\216 db\210\317\211)\207" [xmltok-start case-fold-search xmltok-type nil "
\n" #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (60 15 38 35)) 0 space 1 xmltok-scan-after-lt xmltok-scan-after-amp xmltok-handle-entity re-search-forward "[<&]\\|\\(]]>\\)" t data xmltok-add-error "Found `]]>' not closing a CDATA section" not-well-formed] 6])
(defconst xmltok-ncname-regexp "\\(?:[_[:alpha:]][-._[:alnum:]]*\\)")
(defalias 'xmltok-scan-after-lt #[0 "\306\307!\204 \310\311!\210\312\211\207\313\225b\210\314\224\203% \315\225\316\224\317\211\320\211\207\321\224\2034 \322\225\323\224\324\211\207\325\224\203H \315\225\316\224\317\211\326 \210\207\327\224\203[ \315\225\316\224\317\211\330\211\207\331\224\203j \332\333\317\334#\210\335\211\207\336\224\203r \337 \207\340\224\203z \341 \207\342\224\203\223 \315\225\316\224\317\211\310\343`S\"\210\344\211\207\315\224\203\255 \310\345\317
T#\210\315\225\316\224\317\211\346\211\207\322\224\203\333 \322\225\323\224\211\204\320 \317f\347=\203\320 `Tb\210\310\350`S\"\210\202\327 \310\345\317
T#\210\351\211\207\352\224\203\354 \310\353!\210\317\211\351\211\207\354\224\203\375 \310\355
\314
\\#\210\312\211\207\356\224\203\310\357
\314
\\#\210\312\211\207\360\224\203\310\361
\316
\\#\210\312\211\207\310\362!\210\312\211\207" [xmltok-type xmltok-name-end xmltok-name-colon xmltok-attributes xmltok-namespace-attributes xmltok-start looking-at "\\([_[:alpha:]][-._[:alnum:]]*\\(:[_[:alpha:]][-._[:alnum:]]*\\)?\\)\\(?:\\([
\n]*>\\)\\|\\(?:\\([
\n]*/\\)\\(>\\)?\\)\\|\\([
\n]+\\)\\)?\\|\\(/\\)\\(?:\\([_[:alpha:]][-._[:alnum:]]*\\(:[_[:alpha:]][-._[:alnum:]]*\\)?\\)\\([
\n]*>\\)?\\)?\\|!\\(\\[\\)\\(?:C\\(?:D\\(?:A\\(?:T\\(?:A\\(\\[\\)?\\)?\\)?\\)?\\)?\\)?\\|\\(!\\)\\(-\\(-\\)?\\)?\\|\\(\\?\\)" xmltok-add-error "`<' that is not markup must be entered as `<'" not-well-formed 0 3 1 2 nil start-tag 10 8 9 end-tag 6 xmltok-scan-attributes 5 empty-element 12 search-forward "]]>" move cdata-section 16 xmltok-scan-after-processing-instruction-open 15 xmltok-scan-after-comment-open 4 "Expected `/>'" partial-empty-element "Missing `>'" partial-start-tag 58 "Expected name following `:'" partial-end-tag 7 "Expected name following `</'" 11 "Expected `CDATA[' after `<!['" 14 "Expected `-' after `<!-'" 13 "Expected `[CDATA[' or `--' after `<!'" "Not well-formed"] 6])
(defalias 'xmltok-scan-after-processing-instruction-open #[0 "\304\305\306\307#\210\212\310\\b\210\311\312!\205 \313\225\211)\204+ \310\\\314\315\310\\\316\\#\210\202e f\317>\204D `\310ZU\204D \314\320 \211T#\210\202e \321\\U\203e \212\310\\b\210\322\311\323!*\203e \314\324\310\\\321\\#\210\325\211\207" [xmltok-start xmltok-name-end case-fold-search xmltok-type search-forward "?>" nil move 2 looking-at "\\(?:[_[:alpha:]][-._[:alnum:]]*\\)" 0 xmltok-add-error "<? not followed by name" 3 (10 9 13 32) "Target not followed by whitespace" 5 t "xml" "Processing instruction target is xml" processing-instruction] 5])
(defalias 'xmltok-scan-after-comment-open #[0 "\301\302\303\304#\203 \305\225\204 \306\307\310\224\"\210\202 \311\211\207" [xmltok-type re-search-forward "--\\(>\\)?" nil move 1 xmltok-add-error "`--' not followed by `>'" 0 comment] 4])
(defalias 'xmltok-scan-attributes #[0 "\304\211\305\306!\204\"