;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\300\302!\207" [require popup dash] 2) #@62 Whether to automatically start isearch when auto-completing. (defvar omnisharp-auto-complete-popup-want-isearch t (#$ . 151)) #@96 The name of the temporary buffer that is used to display the results of an auto-complete call. (defvar omnisharp--last-auto-complete-result-buffer-name "* OmniSharp : Last auto-complete result *" (#$ . 283)) #@99 The header for the temporary buffer that is used to display the results of an auto-complete call. (defvar omnisharp--last-auto-complete-result-buffer-header "Last auto-complete result:\n\n" (#$ . 497)) #@52 Contains the last result of an autocomplete query. (defvar omnisharp--last-buffer-specific-auto-complete-result nil (#$ . 705)) (make-variable-buffer-local 'omnisharp--last-buffer-specific-auto-complete-result) #@73 The keymap used when displaying an autocomplete result in a popup menu. (defvar omnisharp-auto-complete-popup-keymap (byte-code "\301 \302\"\210\303\304\305#\210\207" [popup-menu-keymap make-sparse-keymap set-keymap-parent define-key [f2] omnisharp--popup-to-ido] 5) (#$ . 922)) #@183 Defines what auto-complete result displaying backend to use when showing autocomplete results to the user. Valid values are found in omnisharp--auto-complete-display-backends-alist. (defvar omnisharp--auto-complete-display-backend 'popup (#$ . 1211)) #@167 Holds an alist of all available auto-complete display backends. See the documentation for the variable omnisharp--auto-complete-display-backend for more information. (defvar omnisharp--auto-complete-display-backends-alist '((popup . omnisharp--auto-complete-display-function-popup) (ido . omnisharp--auto-complete-display-function-ido)) (#$ . 1469)) #@179 Defines the function that is used for displaying the last auto-complete result with various functions. Valid values are found in omnisharp--auto-complete-display-backends-alist. (defvar omnisharp--show-last-auto-complete-result-frontend 'plain-buffer (#$ . 1826)) #@202 Holds an alist of all available frontends for displaying the last auto-complete result. See the documentation for the variable omnisharp--show-last-auto-complete-result-frontend for more information. (defvar omnisharp--show-last-auto-complete-result-frontends-alist '((plain-buffer . omnisharp--show-last-auto-complete-result-in-plain-buffer)) (#$ . 2097)) #@77 The string used to visually separate functions/variables from their types (defvar omnisharp-company-type-separator " : " (#$ . 2461)) #@309 If called with a prefix argument, will complete types that are not present in the current namespace or imported namespaces, inverting the default `omnisharp-auto-complete-want-importable-types' value. Selecting one of these will import the required namespace. (fn &optional INVERT-IMPORTABLE-TYPES-SETTING) (defalias 'omnisharp-auto-complete #[256 "\301\203\n\210\202\f\210\302 \262\303\304\305\"!\207" [omnisharp-auto-complete-want-importable-types nil omnisharp--create-auto-complete-request omnisharp--wait-until-request-completed omnisharp-auto-complete-worker #[257 "\300 !\207" [omnisharp--get-auto-complete-display-function] 3 "\n\n(fn AUTO-COMPLETE-RESPONSE)"]] 6 (#$ . 2604) "P"]) #@158 Adds a . character and calls omnisharp-auto-complete. Meant to be bound to the dot key so pressing dot will automatically insert a dot and complete members. (defalias 'omnisharp-add-dot-and-auto-complete #[0 "\300c\210\301 \207" ["." omnisharp-auto-complete] 1 (#$ . 3310) nil]) #@61 Return an AutoCompleteRequest for the current buffer state. (defalias 'omnisharp--create-auto-complete-request #[0 "\304\305\306!B\307\306 !B\310\311\306 \205\n!B\312\306 !B\313\314\315!B\316BBBBBB\317 \"\207" [omnisharp-auto-complete-want-documentation omnisharp-company-do-template-completion omnisharp-company-template-use-yasnippet omnisharp-auto-complete-want-importable-types append WantDocumentationForEveryCompletionResult omnisharp--t-or-json-false WantMethodHeader (WantReturnType . t) WantSnippet WantImportableTypes WordToComplete thing-at-point symbol ((WantKind . t)) omnisharp--get-request-object] 9 (#$ . 3595)]) (defvar ac-source-omnisharp '((candidates . omnisharp--get-auto-complete-result-in-popup-format) (action . omnisharp--ac-expand))) (defalias 'omnisharp--ac-expand #[0 "@A\303\304\305#\303\304\306#\211\205$ \205$\307\302!\205$\n\205$\310\"\207" [ac-last-completion omnisharp-auto-complete-template-use-yasnippet yas-minor-mode get-text-property 0 value Snippet boundp yas-expand-snippet] 7 nil nil]) (defalias 'ac-complete-omnisharp #[0 "\300\301!\207" [auto-complete (ac-source-omnisharp)] 2 nil nil]) #@69 Returns /autocomplete API results (autocompletions) as popup items. (defalias 'omnisharp--get-auto-complete-result-in-popup-format #[0 "\301\302\303 !!\210\304!\207" [omnisharp--last-buffer-specific-auto-complete-result omnisharp--wait-until-request-completed omnisharp-auto-complete-worker omnisharp--create-auto-complete-request omnisharp--convert-auto-complete-result-to-popup-format] 3 (#$ . 4745)]) #@95 Returns the symbol to complete. Also, if point is on a dot, triggers a completion immediately (defalias 'omnisharp-company--prefix #[0 "\301 \211\203\203\212\211G[u\210\302\303`\304Z\")\203\211\305B\207\207\306\207" [omnisharp-company-begin-after-member-access company-grab-symbol looking-back "\\." 2 t stop] 5 (#$ . 5156)]) #@83 Adds data to the completed text which we then use in ElDoc (fn CALL JSON-RESULT) (defalias 'omnisharp--tag-text-with-completion-info #[514 "\300`GZ`S\301D#\207" [add-text-properties omnisharp-result] 7 (#$ . 5495)]) #@134 This is called after yasnippet has finished expanding a template. It adds data to the completed text, which we later use in ElDoc (defalias 'omnisharp--yasnippet-tag-text-with-completion-info #[0 "\205\303 \n\304D#\210\305\306\307\"\210\310\211\207" [omnisharp-snippet-json-result yas-snippet-beg yas-snippet-end add-text-properties omnisharp-result remove-hook yas-after-exit-snippet-hook omnisharp--yasnippet-tag-text-with-completion-info nil] 5 (#$ . 5721)]) #@105 Internal, used by snippet completion callback to tag a yasnippet completion with data, used by ElDoc. (defvar omnisharp-snippet-json-result nil (#$ . 6198)) #@144 Does a snippet expansion of the completed text. Also sets up a hook which will eventually add data for ElDoc (fn CALL SNIPPET JSON-RESULT) (defalias 'omnisharp--snippet-templatify #[771 "\204 \211\301\302\303\"\210`GZ`|\210\304!\207" [omnisharp-snippet-json-result add-hook yas-after-exit-snippet-hook omnisharp--yasnippet-tag-text-with-completion-info yas-expand-snippet] 6 (#$ . 6364)]) #@177 If function templating is turned on, and the method is not a generic, return the 'method base' (basically, the method definition minus its return type) (fn JSON-RESULT) (defalias 'omnisharp--get-method-base #[257 "\205-\303!\304!\205+ \204#\305\306\307\310#)\266\203?\205+\311\230?\205+\266\202\207" [omnisharp-company-do-template-completion omnisharp-company-template-use-yasnippet inhibit-changing-match-data omnisharp--completion-result-item-get-method-header omnisharp--completion-result-item-get-completion-text "<" nil t string-match ""] 10 (#$ . 6769)]) #@317 `company-mode' expects the beginning of the candidate to be the same as the characters being completed. This method converts a function description of 'void SomeMethod(int parameter)' to string 'SomeMethod' propertized with annotation 'void SomeMethod(int parameter)' and the original value ITEM. (fn JSON-RESULT) (defalias 'omnisharp--make-company-completion #[257 "\305\306!\307!\310! \n\311\312\"P\313\314\315!)\262\203-\305\262\316\317\"@\262\202G \204@\f\203@\316\320\"@\262\202G\203G\262\204P\nP\262\321\322G\323\n\324\325 \257$\210)\207" [case-fold-search omnisharp-company-do-template-completion omnisharp-company-type-separator inhibit-changing-match-data omnisharp-company-strip-trailing-brackets nil omnisharp--completion-result-item-get-completion-text omnisharp--completion-result-item-get-display-text omnisharp--get-method-base omnisharp--completion-result-get-item ReturnType "\\s-*(\\|<" t looking-at split-string "\\.*(\\|<" "(\\|<" add-text-properties 0 omnisharp-item omnisharp-ann omnisharp-allow-templating] 16 (#$ . 7360)]) #@280 Returns completion results in company format. Company-mode doesn't make any distinction between the text to be inserted and the text to be displayed. As a result, since we want to see parameters and things, we need to munge 'DisplayText so it's company-mode-friendly (fn PRE) (defalias 'omnisharp--get-company-candidates #[257 "\300\301 \302\303\"\304\302\305#B\207" [nil omnisharp--create-auto-complete-request make-closure #[257 "\303\304 \"\n\305=\203\306\300\"\207\207" [V0 omnisharp--last-buffer-specific-auto-complete-result omnisharp-company-match-type mapcar omnisharp--make-company-completion company-match-simple all-completions] 5 "\n\n(fn RESULT)"] :async #[257 "\302\300\303\304\301#\"\207" [V0 V1 omnisharp-auto-complete-worker make-closure #[257 "\n\301\300!!)\207" [V0 V1 omnisharp-company-ignore-case completion-ignore-case] 4 "\n\n(fn RESULT)"]] 7 "\n\n(fn CB)"]] 9 (#$ . 8454)]) #@18 (fn CANDIDATE) (defalias 'omnisharp--company-annotation #[257 "\300\301\302#\207" [get-text-property 0 omnisharp-ann] 5 (#$ . 9370)]) #@89 Return the DATATYPE request (e.g. 'DisplayText) for CANDIDATE. (fn CANDIDATE DATATYPE) (defalias 'omnisharp--get-company-candidate-data #[514 "\300\301\302#\303\"A\207" [get-text-property 0 omnisharp-item assoc] 6 (#$ . 9513)]) #@382 Returns a function that can be fed the output from omnisharp-auto-complete-worker - the AutoCompleteResponse JSON output from the omnisharp /autocomplete API. This function must know how to convert the raw JSON into a format that the user can choose one completion out of. Then that function must handle inserting that result in the way it sees fit (e.g. in the current buffer). (defalias 'omnisharp--get-auto-complete-display-function #[0 "\302 \"A\207" [omnisharp--auto-complete-display-backend omnisharp--auto-complete-display-backends-alist assoc] 3 (#$ . 9752)]) #@192 Returns a function that can be fed the output from omnisharp-auto-complete-worker (an AutoCompleteResponse). The function must take a single argument, the auto-complete result texts to show. (defalias 'omnisharp--get-last-auto-complete-result-display-function #[0 "\302 \"A\207" [omnisharp--show-last-auto-complete-result-frontend omnisharp--show-last-auto-complete-result-frontends-alist assoc] 3 (#$ . 10330)]) #@312 Takes an AutoCompleteRequest and makes an autocomplete query with them. Calls the given CALLBACK with the result. Also caches that result as omnisharp--last-buffer-specific-auto-complete-result. Returns the request-id for the auto-complete request to the server. (fn AUTO-COMPLETE-REQUEST &optional CALLBACK) (defalias 'omnisharp-auto-complete-worker #[513 "\300\301\302\303\"#\207" [omnisharp--send-command-to-server "autocomplete" make-closure #[257 "\211\300\205 \300!\207" [V0 omnisharp--last-buffer-specific-auto-complete-result] 3 "\n\n(fn AUTO-COMPLETE-RESPONSE)"]] 8 (#$ . 10751)]) (defalias 'omnisharp-show-last-auto-complete-result #[0 "\301\302\"\303 !\207" [omnisharp--last-buffer-specific-auto-complete-result mapcar #[257 "\300\236A\207" [DisplayText] 3 "\n\n(fn IT)"] omnisharp--get-last-auto-complete-result-display-function] 3 nil nil]) #@201 Display function for omnisharp-show-last-auto-complete-result using a simple 'compilation' like buffer to display the last auto-complete result. (fn AUTO-COMPLETE-RESULT-IN-HUMAN-READABLE-FORM-LIST) (defalias 'omnisharp--show-last-auto-complete-result-in-plain-buffer #[257 "\302!\303 #\207" [omnisharp--last-auto-complete-result-buffer-name omnisharp--last-auto-complete-result-buffer-header get-buffer-create omnisharp--write-lines-to-compilation-buffer] 6 (#$ . 11622)]) (defalias 'omnisharp-show-overloads-at-point #[0 "\212\300\301!\210\302\303 !\210\304 )\207" [end-of-thing symbol omnisharp-auto-complete-worker omnisharp--create-auto-complete-request omnisharp-show-last-auto-complete-result] 2 nil nil]) #@264 Gets an association list such as this: (((DisplayText . "Gender") (Description . "int Gender { get; set; }") (CompletionText . "Gender"))) Displays a popup.el popup menu, and inserts the chosen element in the current buffer. (fn JSON-RESULT-ALIST) (defalias 'omnisharp--auto-complete-display-function-popup #[257 "\211G\305=\203 \306\307!\210\310\207\311!\262\312!\313\314\"\315!\316\317\320\321\322\323\322\324\325\326 \327\n&\330\305\331#\330\305\332#`\212\333\334 !)\203Z \203Z\335\304!\203Z\f\203Z\336#\210\202a\337\334 \"\210\205h\340!\207" [omnisharp-auto-complete-popup-keymap omnisharp-auto-complete-popup-want-isearch omnisharp-auto-complete-popup-help-delay omnisharp-company-template-use-yasnippet yas-minor-mode 0 message "No completions." nil omnisharp--vector-to-list omnisharp--convert-auto-complete-result-to-popup-format mapcar omnisharp--completion-result-item-get-display-text omnisharp--get-max-item-length popup-menu* :width :keymap :margin-left 1 :margin-right :scroll-bar t :isearch :help-delay get-text-property Snippet RequiredNamespaceImport search-backward omnisharp--current-word-or-empty-string boundp yas-expand-snippet omnisharp--replace-symbol-in-buffer-with omnisharp--insert-namespace-import] 20 (#$ . 12346)]) #@163 Use ido style completion matching with autocomplete candidates. Ido is a more sophisticated matching framework than what popup.el offers. (fn JSON-RESULT-ALIST) (defalias 'omnisharp--auto-complete-display-function-ido #[257 "\211G\300=\203 \301\302!\210\303\207\304!\305\306\"\307\310\"\311\312\313\"\"\2118\314\236A\315\236A\316\317 \"\210\211\2057\320!\207" [0 message "No completions." nil omnisharp--vector-to-list mapcar omnisharp--completion-result-item-get-display-text omnisharp--completing-read "Complete: " cl-position-if make-closure #[257 "\211\300\232\207" [V0] 3 "\n\n(fn ELEMENT)"] CompletionText RequiredNamespaceImport omnisharp--replace-symbol-in-buffer-with omnisharp--current-word-or-empty-string omnisharp--insert-namespace-import] 11 (#$ . 13639)]) #@13 (fn KIND) (defalias 'omnisharp--convert-auto-complete-kind-to-popup-symbol-value #[257 "\211\300\267\202*\301\207\302\207\302\207\302\207\303\207\303\207\303\207\304\207\305\207\306\207\307\207\310\207\311\207\312\207\305\207\305\207\302\207\313\207\314\207" [#s(hash-table size 18 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ("Keyword" 6 "Method" 8 "Function" 10 "Constructor" 12 "Field" 14 "Variable" 16 "Property" 18 "Value" 20 "Text" 22 "Class" 24 "Interface" 26 "Enum" 28 "Module" 30 "Unit" 32 "Snippet" 34 "Color" 36 "File" 38 "Reference" 40)) "s" "f" "v" "a" "" "t" "i" "e" "m" "u" "r" nil] 3 (#$ . 14429)]) #@26 (fn JSON-RESULT-ALIST) (defalias 'omnisharp--convert-auto-complete-result-to-popup-format #[257 "\300\301\"\207" [mapcar #[257 "\300\236A\301\236A\302\236A\303\236A\304\236A\305\236A\306\307\310\303\304 %\311\312!\313\n&\207" [DisplayText CompletionText Description Snippet RequiredNamespaceImport Kind popup-make-item :value propertize :symbol omnisharp--convert-auto-complete-kind-to-popup-symbol-value :document] 16 "\n\n(fn INPUT0)"]] 4 (#$ . 15076)]) (provide 'omnisharp-auto-complete-actions)