Files
emacsd/elpa/company-20191029.2116/company-elisp.elc

62 lines
6.5 KiB
Plaintext
Raw Normal View History

;ELC
;;; Compiled
;;; in Emacs version 26.3
;;; 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.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\305\306\307\310\311\301%\210\312\313\314\315\316DD\317\320\321%\210\312\322\314\315\323DD\324\320\325%\207" [require company cl-lib help-mode find-func custom-declare-group company-elisp nil "Completion backend for Emacs Lisp." :group custom-declare-variable company-elisp-detect-function-context funcall function #[0 "\300\207" [t] 1] "If enabled, offer Lisp functions only in appropriate contexts.\nFunctions are offered for completion only after ' and (." :type (choice (const :tag "Off" nil) (const :tag "On" t)) company-elisp-show-locals-first #[0 "\300\207" [t] 1] "If enabled, locally bound variables and functions are displayed\nfirst in the candidates list." (choice (const :tag "Off" nil) (const :tag "On" t))] 6)
(defalias 'company-elisp--prefix #[0 "\300 \211\203#\301 \203`GZ\206`Sf\302U\202\303 \205$\211\202$\304\207" [company-grab-symbol company-in-string-or-comment 96 company-elisp--should-complete stop] 3])
#@15
(fn SYMBOL)
(defalias 'company-elisp--predicate #[257 "\300!\206\301!\206\302!\206\303!\207" [boundp fboundp facep featurep] 3 (#$ . 1410)])
#@20
(fn &rest NAMES)
(defalias 'company-elisp--fns-regexp #[128 "\300\301!\302Q\207" ["\\_<\\(?:cl-\\)?" regexp-opt "\\*?\\_>"] 4 (#$ . 1569)])
(defvar company-elisp-parse-limit 30)
(defvar company-elisp-parse-depth 100)
(defvar company-elisp-defun-names '("defun" "defmacro" "defsubst"))
#@72 Regular expression matching head of a multiple variable bindings form.
(defvar company-elisp-var-binding-regexp (apply 'company-elisp--fns-regexp "let" "lambda" "lexical-let" company-elisp-defun-names) (#$ . 1863))
#@71 Regular expression matching head of a form with one variable binding.
(defvar company-elisp-var-binding-regexp-1 (company-elisp--fns-regexp "dolist" "dotimes") (#$ . 2084))
#@63 Regular expression matching head of a function bindings form.
(defvar company-elisp-fun-binding-regexp (company-elisp--fns-regexp "flet" "labels") (#$ . 2263))
(defvar company-elisp-defuns-regexp (byte-code "\301\302\303\"P\207" [company-elisp-defun-names "([ \n]*" apply company-elisp--fns-regexp] 4))
(defalias 'company-elisp--should-complete #[0 "`\301 @\211\302V\205=\212\303[!\210\304!\205<\305u\210\306\307!\210`U?\205<\3101:\311`\312\"\211?\2064\211V\2620\202<\210\313)?\207" [company-elisp-defuns-regexp syntax-ppss 0 up-list looking-at nil forward-sexp 1 (scan-error) scan-sexps 2 t] 5])
#@27
(fn PREFIX FUNCTIONS-P)
(defalias 'company-elisp--locals #[514 "\305\306!\307Q`\310\3111\325\212\312\211W\205\316\211\313\314!\210\212\310f\315=\203\305\316u\210\31715\212\320 \210`X)0\2029\210\202\305\203\305\321\310w\210\322\203J \202K\n!\203\236\323\316!\210\3241\226 \312\211W\205\220\211\212\322\325!\203k\323\316!\210\322 !\203\204\326\316!\327 \"\204\203\211B\262\210)\330 \266\211T\262\202Y\266\2020\202\232\210\202\305\210\202\305\204\305\322\f!\203\305\323\316!\210\322!\203\305\326\316!\327\"\204\304\211B\262\210)\210\211T\262\202\266\202)0\202\331\210\202\332\210\207" [company-elisp-parse-depth company-elisp-fun-binding-regexp company-elisp-var-binding-regexp company-elisp-parse-limit company-elisp-var-binding-regexp-1 "[ \n]*\\(\\_<" regexp-quote "\\(?:\\sw\\|\\s_\\)*\\_>\\)" nil (scan-error) 0 up-list -1 40 1 (error) forward-list " \n" looking-at down-list (scan-error) "[ \n]*(" match-string-no-properties memql forward-sexp] 15 (#$ . 2879)])
#@15
(fn PREFIX)
(defalias 'company-elisp-candidates #[257 "\301!\302\303=\"\304\"\305\211:\203+@\262\235\204$B\262A\262\202\211\237\266\203\203@\306\307\310\"\307\310\"\"\202D\306\"\207" [company-elisp-show-locals-first company-elisp--candidates-predicate company-elisp--locals fboundp company-elisp--globals nil append sort string<] 10 (#$ . 3907)])
#@25
(fn PREFIX PREDICATE)
(defalias 'company-elisp--globals #[514 "\301#\207" [obarray all-completions] 6 (#$ . 4289)])
#@15
(fn PREFIX)
(defalias 'company-elisp--candidates-predicate #[257 "\302`GZ\211\206 `Sf \203C\211\303>\204C\211\304=\203?\212\30515Sb\210\306 \2061\307\310!\210\306 0\2027\210\302)\204?\311\202D\312\202D\313)\207" [completion-ignore-case company-elisp-detect-function-context nil (39 96) 40 (error) company-elisp--before-binding-varlist-p up-list -1 fboundp boundp company-elisp--predicate] 5 (#$ . 4416)])
(defalias 'company-elisp--before-binding-varlist-p #[0 "\212\301\302!\303u\210\205 \304!)\207" [company-elisp-var-binding-regexp search-backward "(" 1 looking-at] 2])
#@15
(fn SYMBOL)
(defalias 'company-elisp--doc #[257 "\300!\301!\203\302\303\"\202\304\305\303#\211;\205%\306\307\"\205%\310\311\"\207" [intern fboundp documentation t documentation-property variable-documentation string-match ".*$" match-string 0] 6 (#$ . 5011)])
#@93 `company-mode' completion backend for Emacs Lisp.
(fn COMMAND &optional ARG &rest IGNORED)
(defalias 'company-elisp #[641 "\301\302\"\203 \303\304!\207\301\305\"\203\306\307\310\"\205\336\311 \207\301\312\"\203'\313!\207\301\314\"\2030\207\301\315\"\203;\316!\207\301\317\"\203\234\320!\321 \322\323\324\325\326!\327\"\330$\216\3311\226\332!\203d\333!\210\202\220\334!\203q\335!\210\202\220\336!\203~\337!\210\202\220\340!\203\213\341!\210\202\220\342\343\344\"\210\345 0\202\230\210\344)\262\207\301\346\"\205\336\320!\332!\203\263\347\344\"\202\334\334!\203\300\347\350\"\202\334\336!\203\322\351\352\353!!!\323B\202\334\340!\205\334\347\354\"\262\207" [company-elisp-show-locals-first eql interactive company-begin-backend company-elisp prefix derived-mode-p emacs-lisp-mode inferior-emacs-lisp-mode company-elisp--prefix candidates company-elisp-candidates sorted meta company-elisp--doc doc-buffer intern current-window-configuration make-byte-code 0 "\301\300!\207" vconcat vector [set-window-configuration] 2 (error) fboundp describe-function boundp describe-variable featurep describe-package facep describe-face signal user-error nil help-buffer location find-definition-noselect defvar find-file-noselect find-library-name symbol-name defface] 11 (#$ . 5291) (byte-code "\300C\207" [interactive] 1)])
(provide 'company-elisp)