[LLD][COFF] Emit tail merge pdata for delay load thunks on ARM64EC (#116810)
[llvm-project.git] / mlir / utils / emacs / mlir-lsp-client.el
blob4397a55e7206ac2ab7c23d1c3658fe930547beb8
1 ;;; mlir-lsp-clinet.el --- LSP clinet for the MLIR.
3 ;; Copyright (C) 2022 The MLIR Authors.
4 ;;
5 ;; Licensed under the Apache License, Version 2.0 (the "License");
6 ;; you may not use this file except in compliance with the License.
7 ;; You may obtain a copy of the License at
8 ;;
9 ;; http://www.apache.org/licenses/LICENSE-2.0
11 ;; Unless required by applicable law or agreed to in writing, software
12 ;; distributed under the License is distributed on an "AS IS" BASIS,
13 ;; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 ;; See the License for the specific language governing permissions and
15 ;; limitations under the License.
17 ;; Version: 0.1.0
19 ;;; Commentary:
21 ;; LSP clinet to use with `mlir-mode' that uses `mlir-lsp-server' or any
22 ;; user made compatible server.
24 ;;; Code:
25 (require 'lsp-mode)
27 (defgroup lsp-mlir nil
28 "LSP support for MLIR."
29 :group 'lsp-mode
30 :link '(url-link "https://mlir.llvm.org/docs/Tools/MLIRLSP/"))
33 (defcustom lsp-mlir-server-executable "mlir-lsp-server"
34 "Command to start the mlir language server."
35 :group 'lsp-mlir
36 :risky t
37 :type 'file)
40 (defun lsp-mlir-setup ()
41 "Setup the LSP client for MLIR."
42 (add-to-list 'lsp-language-id-configuration '(mlir-mode . "mlir"))
44 (lsp-register-client
45 (make-lsp-client
46 :new-connection (lsp-stdio-connection (lambda () lsp-mlir-server-executable))
47 :activation-fn (lsp-activate-on "mlir")
48 :priority -1
49 :server-id 'mlir-lsp)))
52 (provide 'mlir-lsp-client)
53 ;;; mlir-lsp-client.el ends here