MLIR  20.0.0git
Classes | Namespaces | Typedefs | Enumerations
Transport.h File Reference
#include "mlir/Support/DebugStringHelper.h"
#include "mlir/Support/LLVM.h"
#include "mlir/Tools/lsp-server-support/Logging.h"
#include "mlir/Tools/lsp-server-support/Protocol.h"
#include "llvm/ADT/FunctionExtras.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/FormatAdapters.h"
#include "llvm/Support/JSON.h"
#include "llvm/Support/raw_ostream.h"
#include <atomic>

Go to the source code of this file.

Classes

class  mlir::lsp::JSONTransport
 A transport class that performs the JSON-RPC communication with the LSP client. More...
 
class  mlir::lsp::MessageHandler
 A handler used to process the incoming transport messages. More...
 

Namespaces

 mlir
 Include the generated interface declarations.
 
 mlir::lsp
 

Typedefs

template<typename T >
using mlir::lsp::Callback = llvm::unique_function< void(llvm::Expected< T >)>
 A Callback<T> is a void function that accepts Expected<T>. More...
 
template<typename T >
using mlir::lsp::OutgoingNotification = llvm::unique_function< void(const T &)>
 An OutgoingNotification<T> is a function used for outgoing notifications send to the client. More...
 
template<typename T >
using mlir::lsp::OutgoingRequest = llvm::unique_function< void(const T &, llvm::json::Value id)>
 An OutgoingRequest<T> is a function used for outgoing requests to send to the client. More...
 
template<typename T >
using mlir::lsp::OutgoingRequestCallback = std::function< void(llvm::json::Value, llvm::Expected< T >)>
 An OutgoingRequestCallback is invoked when an outgoing request to the client receives a response in turn. More...
 

Enumerations

enum  mlir::lsp::JSONStreamStyle { mlir::lsp::Standard , mlir::lsp::Delimited }
 The encoding style of the JSON-RPC messages (both input and output). More...