diff options
author | Ilya Biryukov <ibiryukov@google.com> | 2019-05-29 10:01:00 +0000 |
---|---|---|
committer | Ilya Biryukov <ibiryukov@google.com> | 2019-05-29 10:01:00 +0000 |
commit | f9169d0896dff637f1476e042a0669ef8c981167 (patch) | |
tree | 730fb38afb9c584f7c6949d8e78b03f4d333ae52 /clang-tools-extra/clangd/Protocol.h | |
parent | d2042d3dd770ec593f0bf27a6fabe976d3fab804 (diff) | |
download | bcm5719-llvm-f9169d0896dff637f1476e042a0669ef8c981167.tar.gz bcm5719-llvm-f9169d0896dff637f1476e042a0669ef8c981167.zip |
[clangd] Represent Hover result using FormattedString
Reviewers: sammccall, kadircet
Reviewed By: kadircet
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D61601
llvm-svn: 361940
Diffstat (limited to 'clang-tools-extra/clangd/Protocol.h')
-rw-r--r-- | clang-tools-extra/clangd/Protocol.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/clang-tools-extra/clangd/Protocol.h b/clang-tools-extra/clangd/Protocol.h index 957e2f3da44..21bac8abfb5 100644 --- a/clang-tools-extra/clangd/Protocol.h +++ b/clang-tools-extra/clangd/Protocol.h @@ -353,6 +353,15 @@ llvm::json::Value toJSON(const OffsetEncoding &); bool fromJSON(const llvm::json::Value &, OffsetEncoding &); llvm::raw_ostream &operator<<(llvm::raw_ostream &, OffsetEncoding); +// Describes the content type that a client supports in various result literals +// like `Hover`, `ParameterInfo` or `CompletionItem`. +enum class MarkupKind { + PlainText, + Markdown, +}; +bool fromJSON(const llvm::json::Value &, MarkupKind &); +llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, MarkupKind); + // This struct doesn't mirror LSP! // The protocol defines deeply nested structures for client capabilities. // Instead of mapping them all, this just parses out the bits we care about. @@ -391,6 +400,9 @@ struct ClientCapabilities { /// Supported encodings for LSP character offsets. (clangd extension). llvm::Optional<std::vector<OffsetEncoding>> offsetEncoding; + + /// The content format that should be used for Hover requests. + MarkupKind HoverContentFormat = MarkupKind::PlainText; }; bool fromJSON(const llvm::json::Value &, ClientCapabilities &); @@ -861,11 +873,6 @@ struct CompletionParams : TextDocumentPositionParams { }; bool fromJSON(const llvm::json::Value &, CompletionParams &); -enum class MarkupKind { - PlainText, - Markdown, -}; - struct MarkupContent { MarkupKind kind = MarkupKind::PlainText; std::string value; |