//===- MLIRServer.h - MLIR General Language Server --------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #ifndef LIB_MLIR_TOOLS_MLIRLSPSERVER_SERVER_H_ #define LIB_MLIR_TOOLS_MLIRLSPSERVER_SERVER_H_ #include "mlir/Support/LLVM.h" #include "llvm/Support/Error.h" #include <memory> #include <optional> namespace mlir { class DialectRegistry; namespace lsp { struct CodeAction; struct CodeActionContext; struct CompletionList; struct Diagnostic; struct DocumentSymbol; struct Hover; struct Location; struct MLIRConvertBytecodeResult; struct Position; struct Range; class URIForFile; /// This class implements all of the MLIR related functionality necessary for a /// language server. This class allows for keeping the MLIR specific logic /// separate from the logic that involves LSP server/client communication. class MLIRServer { … }; } // namespace lsp } // namespace mlir #endif // LIB_MLIR_TOOLS_MLIRLSPSERVER_SERVER_H_