;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (require 'dash) #@13 (fn NODE) (defalias 'js2r--nesting-node-p #[257 "\304!>\203\n\305\207\304! >\203\305\207\304!\n>\203\305\207\304! >\205'\305\207" [cl-struct-js2-function-node-tags cl-struct-js2-if-node-tags cl-struct-js2-for-node-tags cl-struct-js2-while-node-tags type-of t] 3 (#$ . 103)]) #@13 (fn NODE) (defalias 'js2r--standalone-node-p #[257 "\301!\206\"\302!>\205\"\302!>\204\303\304\305D\"\210\211\306H\307=\207" [cl-struct-js2-function-node-tags js2-stmt-node-p type-of signal wrong-type-argument js2-function-node 18 FUNCTION_STATEMENT] 5 (#$ . 397)]) #@291 Kill a line like `kill-line' but tries to respect node boundaries. Falls back to `kill-line' if the buffer has parse errors. if(|foo) {bar();} -> if() {bar();} function foo() {|2 + 3} -> function foo() {} // some |comment -> // some 'this is a| string' -> 'this is a'  (defalias 'js2r-kill #[0 "\203 \301\302!\210\303 \207\304 \207" [js2-parsed-errors message "Buffer has parse errors. Killing the line" kill-line js2r--kill-line] 2 (#$ . 681) nil]) #@46 Kill a line, but respecting node boundaries. (defalias 'js2r--kill-line #[0 "\302 \303!>\203 \304 \207\303! >\203\305 \207\306 \207" [cl-struct-js2-comment-node-tags cl-struct-js2-string-node-tags js2r--next-node type-of kill-line js2r--kill-line-in-string js2r--kill-line-in-sexp] 3 (#$ . 1160)]) #@101 Return the node at point, or the node after the point if the point is at the exact end of a node. (defalias 'js2r--next-node #[0 "\212\301 \302!\303!>\204\304\305\306D\"\210\307H\\\262`U\203#\310u\210\301 )\207" [cl-struct-js2-node-tags js2-node-at-point js2-node-abs-pos type-of signal wrong-type-argument js2-node 3 1] 6 (#$ . 1471)]) #@197 Kill a line, but only kills until the closest outer sexp on the current line, delimited with ")}]". If no sexp is found on the current line, falls back to `js2r--kill-line-with-inner-sexp'. (defalias 'js2r--kill-line-in-sexp #[0 "\3001.`\212\301 \210\302u\210`)\211\211\303 Y\205\211\304 X\262\203(\305\"\266\202\202,\306 \266\2020\207\306 \207" [(scan-error) up-list -1 point-at-bol point-at-eol kill-region js2r--kill-line-with-inner-sexp] 5 (#$ . 1826)]) #@221 Kill a line, but respecting inner killed sexps, ensuring that we kill up to the end to the next inner sexp if it starts in the current line. If the parentheses are unbalanced, fallback to `kill-line' and warn the user. (defalias 'js2r--kill-line-with-inner-sexp #[0 "\3001I`\212\301\302!\210`)\212\303 \210`)\212\211b\210\304 \210\305\306!\203%\307u\210\202`)\211\310 Y\2053\211\311 X\262\203C\312]\"\266\204\202G\313 \266\2040\207\314\315!\210\313 \207" [(scan-error) forward-visible-line 1 js2r--goto-last-sexp-on-line forward-list looking-at ";" nil point-at-bol point-at-eol kill-region kill-line message "Unbalanced parentheses. Killing the line."] 8 (#$ . 2305)]) #@117 Move the cursor to the opening of the last sexp on the current line, or to the end of the line if no sexp is found. (defalias 'js2r--goto-last-sexp-on-line #[0 "`\300 \210\301u\210\302 \210\211\211\303 Y\205\211\304 X\262\203\305 \207\306 \207" [down-list -1 forward-list point-at-bol point-at-eol js2r--goto-last-sexp-on-line backward-list] 4 (#$ . 2995)]) #@123 Kill a line in a string node, respecting the node boundaries. When at the beginning of the node, kill from outside of it. (defalias 'js2r--kill-line-in-string #[0 "\301 `\302!\302!\303!>\204\304\305\306D\"\210\307H\\\262U\203(\310 \207\311S\"\207" [cl-struct-js2-node-tags js2-node-at-point js2-node-abs-pos type-of signal wrong-type-argument js2-node 3 js2r--kill-line-in-sexp kill-region] 9 (#$ . 3365)]) #@22 (fn &optional ARG) (defalias 'js2r-forward-slurp #[256 "\301 \210\302\303!\304!\203\211\202\305!\306!\307!\310!\2038\311V\2033\306!\262S\262\202!\262\2029\211\307!\312!>\204L\313\314\315D\"\210\316H\\\262T{\212|\210\307!\312!>\204o\313\314\315D\"\210\316H\\\262b\210\317u\210\320\321!\203\203\322 \210`\262\211c\210\323\")\207" [cl-struct-js2-node-tags js2r--guard js2r--closest js2r--nesting-node-p js2r--standalone-node-p js2-node-parent-stmt js2-node-next-sibling js2-node-abs-pos wholenump 1 type-of signal wrong-type-argument js2-node 3 -1 looking-back "{ *" newline indent-region] 14 (#$ . 3793) "p"]) #@22 (fn &optional ARG) (defalias 'js2r-forward-barf #[256 "\303 \210\304\305!\306!\203\211\202\307!\211\310!\311!>\204&\312\313\314D\"\210\315H\\\262\316\311! >\203O\304\317!\311!\n>\204G\312\313\320D\"\210\211\321H\262\202R\322!!@\323!\203s\324V\203n\325!\262S\262\202\\\262\202t\211\212\310!b\210\326\327!\210\330\331!\203\212\332u\210\202~`)\310!\311!>\204\237\312\313\314D\"\210\315H\\\262{\212\333\334\335\336\337\257\334\335\n\336\257D!)\207" [cl-struct-js2-node-tags cl-struct-js2-if-node-tags cl-struct-js2-scope-tags js2r--guard js2r--closest js2r--nesting-node-p js2r--standalone-node-p js2-node-parent-stmt js2-node-abs-pos type-of signal wrong-type-argument js2-node 3 last js2-scope-p js2-scope 6 js2r--node-kids wholenump 1 js2-node-prev-sibling skip-syntax-backward " " looking-back "\n" -1 js2r--execute-changes :beg :end :contents ""] 17 (#$ . 4455) "p"]) (provide 'js2r-paredit)