;ELC ;;; Compiled ;;; in Emacs version 27.1 ;;; with all optimizations. ;;; This file contains utf-8 non-ASCII characters, ;;; and so cannot be loaded into Emacs 22 or earlier. (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (string-lessp emacs-version "23") (error "`%s' was compiled for Emacs 23 or later" #$)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (require 'cl-lib) #@33 Return the NODE tag. (fn NODE) (defalias 'dom-tag #[257 "\211@:\203\n\211@@\207\211@\207" [] 2 (#$ . 426)]) (put 'dom-tag 'byte-optimizer 'byte-compile-inline-expand) #@40 Return the NODE attributes. (fn NODE) (defalias 'dom-attributes #[257 "\211@:\203 \211@A@\207\211A@\207" [] 2 (#$ . 601)]) (put 'dom-attributes 'byte-optimizer 'byte-compile-inline-expand) #@38 Return the NODE children. (fn NODE) (defalias 'dom-children #[257 "\211@:\203 \211@AA\207\211AA\207" [] 2 (#$ . 798)]) (put 'dom-children 'byte-optimizer 'byte-compile-inline-expand) #@55 Return all non-text-node children of NODE. (fn NODE) (defalias 'dom-non-text-children #[257 "\211\211@:\203\211@AA\262\202\211AA\262\300\211:\2031@\262;\204*B\262A\262\202\211\237\207" [nil] 6 (#$ . 989)]) #@65 Set the attributes of NODE to ATTRIBUTES. (fn NODE ATTRIBUTES) (defalias 'dom-set-attributes #[514 "\300!\262A\240\207" [dom-ensure-node] 4 (#$ . 1221)]) #@60 Set ATTRIBUTE in NODE to VALUE. (fn NODE ATTRIBUTE VALUE) (defalias 'dom-set-attribute #[771 "\300!\262\301A@\"\211\203\211\241\202 AA@BC\244\240\207" [dom-ensure-node assoc] 8 (#$ . 1386)]) #@85 Return the attribute ATTR from NODE. A typical attribute is `href'. (fn NODE ATTR) (defalias 'dom-attr '(macro . #[514 "\300\301\302DED\207" [cdr assq dom-attributes] 7 (#$ . 1596)])) #@71 Return all the text bits in the current node concatenated. (fn NODE) (defalias 'dom-text #[257 "\300\301\302\303\211@:\203\211@AA\262\202\211AA\262\"\304#\207" [mapconcat identity cl-remove-if-not stringp " "] 7 (#$ . 1789)]) #@107 Return all textual data under NODE concatenated with SEPARATOR in-between. (fn NODE &optional SEPARATOR) (defalias 'dom-texts #[513 "\211@:\203\211@@\262\202\211@\262\300=\203\301\207\302\303\304\305\306\307!\310\"\311\312%\211@:\2038\211@AA\262\202=\211AA\262\206B\313#\207" [script #1="" mapconcat make-byte-code 257 "\211;\203\207\211\211@:\203\211@@\262\202\211@\262\301=\203 \302\207\303\300\"\207" vconcat vector [script #1# dom-texts] 4 "\n\n(fn ELEM)" " "] 9 (#$ . 2030)]) #@66 Return the first child of DOM that is of type TAG. (fn DOM TAG) (defalias 'dom-child-by-tag #[514 "\300\211@:\203\211@AA\262\202\211AA\262\"\207" [assoc] 6 (#$ . 2546)]) #@89 Return elements in DOM that is of type TAG. A name is a symbol like `td'. (fn DOM TAG) (defalias 'dom-by-tag #[514 "\211@:\203\211@AA\262\202\211AA\262\300\211\211:\203@@\262;?\205,\301\"\262\2039\302!\244\262A\262\202\211\237\266\204\211@:\203S\211@@\262\202W\211@\262\232\203bB\202c\211\207" [nil dom-by-tag reverse] 9 (#$ . 2731)]) #@129 Return elements in DOM where PREDICATE is non-nil. PREDICATE is called with the node as its only parameter. (fn DOM PREDICATE) (defalias 'dom-search #[514 "\211@:\203\211@AA\262\202\211AA\262\300\211\211:\203@@\262;?\205,\301\"\262\2039\302!\244\262A\262\202\211\237\266\204!\203PB\202Q\211\207" [nil dom-search reverse] 9 (#$ . 3110)]) #@52 Return elements in DOM that are strings. (fn DOM) (defalias 'dom-strings #[257 "\211\211@:\203\211@AA\262\202\211AA\262\300\211:\203=@\262;\203-B\262\2026\301\302!!\244\262A\262\202\211\237\207" [nil reverse dom-strings] 7 (#$ . 3486)]) #@90 Return elements in DOM that have a class name that matches regexp MATCH. (fn DOM MATCH) (defalias 'dom-by-class #[514 "\300\301#\207" [dom-elements class] 6 (#$ . 3753)]) #@85 Return elements in DOM that have a style that matches regexp MATCH. (fn DOM MATCH) (defalias 'dom-by-style #[514 "\300\301#\207" [dom-elements style] 6 (#$ . 3933)]) #@83 Return elements in DOM that have an ID that matches regexp MATCH. (fn DOM MATCH) (defalias 'dom-by-id #[514 "\300\301#\207" [dom-elements id] 6 (#$ . 4108)]) #@137 Find elements matching MATCH (a regexp) in ATTRIBUTE. ATTRIBUTE would typically be `class', `id' or the like. (fn DOM ATTRIBUTE MATCH) (defalias 'dom-elements #[771 "\211@:\203\211@AA\262\202\211AA\262\300\211\211:\203B@\262;?\205.\301#\262\203;\302!\244\262A\262\202\211\237\266\204\211@:\203W\211@A@\262\202\\\211A@\262\236A\211\203o\303\"\203oB\202p\207" [nil dom-elements reverse string-match] 11 (#$ . 4276)]) #@38 Remove NODE from DOM. (fn DOM NODE) (defalias 'dom-remove-node #[514 "\211@:\203\211@AA\262\202\211AA\262\211\205:\211@=\203)\300\"\210\2023\211;\2043\301\"\210A\266\202\202\207" [delq dom-remove-node] 7 (#$ . 4740)]) #@50 Return the parent of NODE in DOM. (fn DOM NODE) (defalias 'dom-parent #[514 "\211\211@:\203\211@AA\262\202\211AA\262>\203\207\300\211@:\203-\211@AA\262\2022\211AA\262\211\203N\211@\204G\211;\204G\301\"\262A\266\202\2022\210\211\207" [nil dom-parent] 8 (#$ . 4985)]) #@60 Return the previous sibling of NODE in DOM. (fn DOM NODE) (defalias 'dom-previous-sibling #[514 "\300\"\211\2059\211\211@:\203\211@AA\262\202\211AA\262\301\2037A@=\203.@\262\211A\262\210\202\262\207" [dom-parent nil] 7 (#$ . 5282)]) #@90 Return a DOM node with TAG and ATTRIBUTES. (fn TAG &optional ATTRIBUTES &rest CHILDREN) (defalias 'dom-node #[641 "\211\203\nBB\207D\207" [] 6 (#$ . 5543)]) #@62 Append CHILD to the end of NODE's children. (fn NODE CHILD) (defalias 'dom-append-child #[514 "\300!\262C\244\207" [dom-ensure-node] 4 (#$ . 5713)]) #@134 Add CHILD to NODE's children before child BEFORE. If BEFORE is nil, make CHILD NODE's first child. (fn NODE CHILD &optional BEFORE) (defalias 'dom-add-child-before #[770 "\300!\262\211@:\203\211@AA\262\202\211AA\262\203)>\204)\301\302\"\210\2034\303\"\2025\304\211\304U\203HAAAB\241\210\202S\211S\233\233B\241\210\266\207" [dom-ensure-node error "%s does not exist as a child" cl-position 0] 9 (#$ . 5874)]) #@51 Ensure that NODE is a proper DOM node. (fn NODE) (defalias 'dom-ensure-node #[257 "\211@:\203\n\211@\262\211G\300U\203\211\301C\241\210\207" [1 nil] 3 (#$ . 6321)]) #@130 Pretty-print DOM at point. If REMOVE-EMPTY, ignore textual nodes that contain just white-space. (fn DOM &optional REMOVE-EMPTY) (defalias 'dom-pp #[513 "i\300\301\211@:\203\211@@\262\202\211@\262\"c\210\211@:\203)\211@A@\262\202.\211A@\262\211GiT\204<\302c\210\202o\303c\210\211\203n\211@\300\304@A#c\210S\211\262\305U\203_\306c\210\202g\307\310\311\"\261\210A\266\202\202@\210\266\203\220\312\313\211@:\203\207\211@AA\262\202\214\211AA\262\"\202\245\211@:\203\240\211@AA\262\202\245\211AA\262\211G\204\260\306c\202\307\310T\311\"\261\210\211\205\211@\211;\203\331\203\320\314\315\"\204\337\300\316\"c\210\202\337\317\"\210S\211\262\305U\203\357\306c\210\202\371\307\310T\311\"\261\210A\266\202\202\272\262\266\202\207" [format "(%S " "nil" "(" "(%S . %S)" 0 ")" "\n" make-string 32 cl-remove-if #[257 "\211;\205 \300\301\"\207" [string-match "\\`[\n  ]*\\'"] 4 "\n\n(fn CHILD)"] string-match "\\`[\n  ]*\\'" "%S" dom-pp] 12 (#$ . 6498)]) (provide 'dom)