18#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANGD_TRANSPORT_H
19#define LLVM_CLANG_TOOLS_EXTRA_CLANGD_TRANSPORT_H
22#include "llvm/ADT/StringRef.h"
23#include "llvm/Support/JSON.h"
24#include "llvm/Support/raw_ostream.h"
40 virtual void notify(llvm::StringRef
Method, llvm::json::Value Params) = 0;
41 virtual void call(llvm::StringRef
Method, llvm::json::Value Params,
42 llvm::json::Value
ID) = 0;
44 llvm::Expected<llvm::json::Value> Result) = 0;
52 virtual bool onCall(llvm::StringRef
Method, llvm::json::Value Params,
53 llvm::json::Value
ID) = 0;
55 llvm::Expected<llvm::json::Value> Result) = 0;
84std::unique_ptr<Transport>
86 llvm::raw_ostream *InMirror,
bool Pretty,
CompiledFragmentImpl & Out
virtual bool onNotify(llvm::StringRef Method, llvm::json::Value)=0
virtual ~MessageHandler()=default
virtual bool onCall(llvm::StringRef Method, llvm::json::Value Params, llvm::json::Value ID)=0
virtual bool onReply(llvm::json::Value ID, llvm::Expected< llvm::json::Value > Result)=0
virtual ~Transport()=default
virtual void call(llvm::StringRef Method, llvm::json::Value Params, llvm::json::Value ID)=0
virtual void notify(llvm::StringRef Method, llvm::json::Value Params)=0
virtual void reply(llvm::json::Value ID, llvm::Expected< llvm::json::Value > Result)=0
virtual llvm::Error loop(MessageHandler &)=0
std::unique_ptr< Transport > newXPCTransport()
std::unique_ptr< Transport > newJSONTransport(std::FILE *In, llvm::raw_ostream &Out, llvm::raw_ostream *InMirror, bool Pretty, JSONStreamStyle Style)
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//