[mlir][PDLL] Add code completion to the PDLL language server
authorRiver Riddle <riddleriver@gmail.com>
Fri, 11 Mar 2022 08:32:49 +0000 (00:32 -0800)
committerRiver Riddle <riddleriver@gmail.com>
Sat, 19 Mar 2022 20:28:24 +0000 (13:28 -0700)
commit008de486f706ef25a66d4384c2c3af1ed86e680e
tree785e70173ea21bb468fa6f6682f027afca22622d
parent8dd4272ca2f5ce7c793f3c6f9e468913d768700d
[mlir][PDLL] Add code completion to the PDLL language server

This commit adds code completion support to the language server,
and initially supports providing completions for: Member access,
attributes/constraint/dialect/operation names, and pattern metadata.

Differential Revision: https://reviews.llvm.org/D121544
15 files changed:
mlir/include/mlir/Tools/PDLL/ODS/Context.h
mlir/include/mlir/Tools/PDLL/Parser/CodeComplete.h [new file with mode: 0644]
mlir/include/mlir/Tools/PDLL/Parser/Parser.h
mlir/lib/Tools/PDLL/Parser/CMakeLists.txt
mlir/lib/Tools/PDLL/Parser/CodeComplete.cpp [new file with mode: 0644]
mlir/lib/Tools/PDLL/Parser/Lexer.cpp
mlir/lib/Tools/PDLL/Parser/Lexer.h
mlir/lib/Tools/PDLL/Parser/Parser.cpp
mlir/lib/Tools/lsp-server-support/Protocol.cpp
mlir/lib/Tools/lsp-server-support/Protocol.h
mlir/lib/Tools/mlir-pdll-lsp-server/LSPServer.cpp
mlir/lib/Tools/mlir-pdll-lsp-server/PDLLServer.cpp
mlir/lib/Tools/mlir-pdll-lsp-server/PDLLServer.h
mlir/test/mlir-pdll-lsp-server/completion.test [new file with mode: 0644]
mlir/test/mlir-pdll-lsp-server/initialize-params.test