;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\302\303\304\305\306\307\310\301&\210\311\312\313\314\315DD\316\317\320\310\303&\210\311\321\313\314\322DD\323\317\324\310\303&\210\311\325\313\314\326DD\327\317\330\310\303&\210\311\331\313\314\332DD\333\317\334\310\303\335\336\337\340& \210\311\341\313\314\342DD\343\317\344\310\303\335\336\337\345& \210\311\346\313\314\347DD\350\317\351\310\303\335\336\337\352& \207" [require lsp-mode custom-declare-group lsp-gopls nil "LSP support for the Go Programming Language, using the gopls language server." :link (url-link "https://github.com/golang/go/wiki/gopls") :group custom-declare-variable lsp-gopls-use-placeholders funcall function #[0 "\300\207" [t] 1] "Cause gopls to provide placeholder parameter snippets when\ncompleting function calls." :type boolean lsp-gopls-server-path #[0 "\300\207" [#1="gopls"] 1 #1#] "Path to gopls server binary." string lsp-gopls-server-args #[0 "\300\207" [nil] 1] "Extra CLI arguments for gopls." (repeat string) lsp-gopls-build-flags #[0 "\300\207" [[]] 1] "A vector of flags passed on to the build system when invoked,\n applied to queries like `go list'." lsp-string-vector :risky t :package-version (lsp-mode "6.2") lsp-gopls-env #[0 "\300\207" [nil] 1] "`gopls' has the unusual ability to set environment variables,\n intended to affect the behavior of commands invoked by `gopls'\n on the user's behalf. This variable takes a hash table of env\n var names to desired values." (alist :key-type (string :tag "env var name") :value-type (string :tag "value")) (lsp-mode "6.2") lsp-gopls-hover-kind #[0 "\300\207" [#2="SynopsisDocumentation"] 1 #2#] "`gopls' allows the end user to select the desired amount of\n documentation returned during e.g. hover and thing-at-point\n operations." (choice (const "SynopsisDocumentation") (const "NoDocumentation") (const "FullDocumentation") (const "SingleLine") (const "Structured")) (lsp-mode "6.2")] 12) #@92 Available codelens that can be further enabled or disabled through `lsp-gopls-codelens'. (defvar lsp-gopls-available-codelens '((generate . "Run `go generate` for a directory") (test . "Run `go test` for a specific test function") (tidy . "Run `go mod tidy` for a module") (upgrade_dependency . "Upgrade a dependency") (regenerate_cgo . "Regenerate cgo definitions")) (#$ . 2012)) #@367 Returns a list suitable for the `:type' field in a `defcustom' used to populate an alist. The input ALIST has the form `(("name" . "documentation sentence") [...])' The returned type provides a tri-state that either: - does not include the element in the alist - sets element to false (actually, :json-false) - sets element to true (actually, t) (fn ALIST) (defalias 'lsp-gopls--defcustom-available-as-alist-type #[257 "\300\211\203#\211@\301\302A\303\304\305@F\306BBBBB\262A\266\202\202\210\307B\207" [nil cons :tag const :format "" ((choice (const :tag "Enable" t) (const :tag "Disable" :json-false))) set] 11 (#$ . 2402)]) (byte-code "\301\302\303\304\305DD\306\307\310!\311\312\313\314\315\316& \210\317\320!\210\321\322\323\324\325!\326\327\330\331\332\333\334\335&\n!\210\336\337\340\341\311\342%\210\301\343\303\304\344DD\345\311\337\313\314\307\346& \210\301\347\303\304\350DD\351\307\352\311\337&\210\301\353\303\304\354DD\355\307\356\311\337&\210\301\357\303\304\360DD\361\307\356\311\337&\210\301\362\303\304\363DD\364\307\365\311\337&\210\301\366\303\304\367DD\370\307\371\311\337&\210\301\372\303\304\373DD\374\307\375\311\337&\210\301\376\303\304\377DD\201@\307\356\311\337&\210\301\201A\303\304\201BDD\201C\307\356\311\337&\210\301\201D\303\304\201EDD\201F\311\337\313\314\307\201G& \210\301\201H\303\304\201IDD\201J\307\356\311\337&\207" [lsp-gopls-available-codelens custom-declare-variable lsp-gopls-codelens funcall function #[0 "\300\207" [((generate . t) (test . t))] 1] "Select what codelens should be enabled or not.\n\nThe codelens can be found at https://github.com/golang/tools/blob/4d5ea46c79fe3bbb57dd00de9c167e93d94f4710/internal/lsp/source/options.go#L102-L108." :type lsp-gopls--defcustom-available-as-alist-type :group lsp-gopls :risky t :package-version (lsp-mode "7.0") lsp-register-custom-settings (("gopls.usePlaceholders" lsp-gopls-use-placeholders t) ("gopls.hoverKind" lsp-gopls-hover-kind) ("gopls.buildFlags" lsp-gopls-build-flags) ("gopls.env" lsp-gopls-env) ("gopls.codelens" lsp-gopls-codelens)) lsp-register-client make-lsp-client :new-connection lsp-stdio-connection #[0 " B\207" [lsp-gopls-server-path lsp-gopls-server-args] 2] :major-modes (go-mode go-dot-mod-mode) :priority 0 :server-id gopls :library-folders-fn lsp-clients-go--library-default-directories custom-declare-group lsp-clients-go nil "LSP support for the Go Programming Language." lsp-mode lsp-clients-go-server #[0 "\300\207" [#1="bingo"] 1 #1#] "The go language server executable to use." file lsp-clients-go-server-args #[0 "\300\207" [nil] 1] "Extra arguments for the go language server." (repeat string) lsp-clients-go-func-snippet-enabled #[0 "\300\207" [t] 1] "Enable the returning of argument snippets on `func' completions, eg.\n`func(foo string, arg2 bar)'. Requires code completion to be enabled." boolean lsp-clients-go-gocode-completion-enabled #[0 "\300\207" [t] 1] "Enable code completion feature (using gocode)." lsp-clients-go-format-tool #[0 "\300\207" [#2="goimports"] 1 #2#] "The tool to be used for formatting documents. Defaults to `goimports' if nil." (choice (const :tag "goimports" "goimports") (const :tag "gofmt" "gofmt")) lsp-clients-go-imports-local-prefix #[0 "\300\207" [#3=""] 1 #3#] "The local prefix (comma-separated string) that goimports will use." string lsp-clients-go-max-parallelism #[0 "\300\207" [nil] 1] "The maximum number of goroutines that should be used to fulfill requests.\nThis is useful in editor environments where users do not want results ASAP,\nbut rather just semi quickly without eating all of their CPU. When nil,\ndefaults to half of your CPU cores." (choice integer (const nil "Half of CPU cores.")) lsp-clients-go-use-binary-pkg-cache #[0 "\300\207" [t] 1] "Whether or not $GOPATH/pkg binary .a files should be used." lsp-clients-go-diagnostics-enabled #[0 "\300\207" [t] 1] "Whether diagnostics are enabled." lsp-clients-go-library-directories #[0 "\300\207" [("/usr")] 1] "List of directories which will be considered to be libraries." (repeat string) lsp-clients-go-library-directories-include-go-modules #[0 "\300\207" [t] 1] "Whether or not $GOPATH/pkg/mod should be included as a library directory."] 12) #@269 Calculate go library directories. If `lsp-clients-go-library-directories-include-go-modules' is non-nil and the environment variable GOPATH is set this function will return $GOPATH/pkg/mod along with the value of `lsp-clients-go-library-directories'. (fn WORKSPACE) (defalias 'lsp-clients-go--library-default-directories #[257 " \203K\304\n!\204\305\306!\204!\307\310 \"\203K\305\306\304\n!\"\203K\311\312\313\"r\211q\210\314\315\"\216\316\306\317\313\317\320\321&\322U\203I\323\324ed{!\325PC\"\262*\210\304\n!\203V\326\327\"\207\207" [lsp-clients-go-library-directories lsp-clients-go-library-directories-include-go-modules default-directory emacs-version file-remote-p executable-find "go" version<= "27.0" generate-new-buffer " *temp*" t make-closure #[0 "\301\300!\205 \302\300!\207" [V0 buffer-name kill-buffer] 2] process-file nil "env" "GOPATH" 0 append string-trim-right "/pkg/mod" mapcar #[257 "\301!P\207" [default-directory file-remote-p] 3 "\n\n(fn PATH)"]] 10 (#$ . 6639)]) #@12 (fn VAL) (defalias 'lsp-clients-go--bool-to-json #[257 "\211\203\300\207\301\207" [t :json-false] 2 (#$ . 7651)]) (byte-code "\300\301\302\303#\300\207" [function-put lsp-clients-go--bool-to-json compiler-macro lsp-clients-go--bool-to-json--inliner] 4) #@25 (fn INLINE--FORM VAL) (defalias 'lsp-clients-go--bool-to-json--inliner #[514 "\3002\n\301\302\303F0\207" [inline--just-use if t :json-false] 6 (#$ . 7914)]) #@26 Init options for golang. (defalias 'lsp-clients-go--make-init-options #[0 "\306\203 \307\202\n\310\311\204\307\202\310\312 \203\307\202\310\313\n\314 \315\f\316 \317\257\207" [lsp-clients-go-func-snippet-enabled lsp-clients-go-gocode-completion-enabled lsp-clients-go-format-tool lsp-clients-go-imports-local-prefix lsp-clients-go-max-parallelism lsp-clients-go-use-binary-pkg-cache :funcSnippetEnabled t :json-false :disableFuncSnippet :gocodeCompletionEnabled :formatTool :goimportsLocalPrefix :maxParallelism :useBinaryPkgCache :diagnosticsEnabled lsp-clients-go-diagnostics-enabled] 16 (#$ . 8081)]) (byte-code "\300\301\302\303\304!\305\306\307\310\311\312\313\314\315\316&\f!\210\300\301\302\303\317!\305\320\307\321\311\312\313\322\315\316&\f!\210\323\324!\207" [lsp-register-client make-lsp-client :new-connection lsp-stdio-connection #[0 " B\207" [lsp-clients-go-server lsp-clients-go-server-args] 2] :major-modes (go-mode) :priority -1 :initialization-options lsp-clients-go--make-init-options :server-id go-bingo :library-folders-fn lsp-clients-go--library-default-directories "go-langserver" (go-mode) -2 go-ls provide lsp-go] 14)