diff options
| author | Kadir Cetinkaya <kadircet@google.com> | 2020-01-13 17:50:23 +0100 |
|---|---|---|
| committer | Kadir Cetinkaya <kadircet@google.com> | 2020-01-13 20:24:09 +0100 |
| commit | 15078d7202b410fd15eedc49d2ab2e4fe9a9f177 (patch) | |
| tree | aa94388008a6bd7a7c690a45db083ad0b8fd408b /clang-tools-extra/clangd/FormattedString.cpp | |
| parent | 2b530053e9d696ada9269e7396180fc6262d2861 (diff) | |
| download | bcm5719-llvm-15078d7202b410fd15eedc49d2ab2e4fe9a9f177.tar.gz bcm5719-llvm-15078d7202b410fd15eedc49d2ab2e4fe9a9f177.zip | |
[clangd] Render header of hover card as a heading
Reviewers: sammccall
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D72625
Diffstat (limited to 'clang-tools-extra/clangd/FormattedString.cpp')
| -rw-r--r-- | clang-tools-extra/clangd/FormattedString.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/clang-tools-extra/clangd/FormattedString.cpp b/clang-tools-extra/clangd/FormattedString.cpp index 1e61b8b5fb1..881c34e0071 100644 --- a/clang-tools-extra/clangd/FormattedString.cpp +++ b/clang-tools-extra/clangd/FormattedString.cpp @@ -164,6 +164,19 @@ std::string indentLines(llvm::StringRef Input) { } return IndentedR; } + +class Heading : public Paragraph { +public: + Heading(size_t Level) : Level(Level) {} + void renderMarkdown(llvm::raw_ostream &OS) const override { + OS << std::string(Level, '#') << ' '; + Paragraph::renderMarkdown(OS); + } + +private: + size_t Level; +}; + } // namespace std::string Block::asMarkdown() const { @@ -278,6 +291,12 @@ BulletList &Document::addBulletList() { Children.emplace_back(std::make_unique<BulletList>()); return *static_cast<BulletList *>(Children.back().get()); } + +Paragraph &Document::addHeading(size_t Level) { + assert(Level > 0); + Children.emplace_back(std::make_unique<Heading>(Level)); + return *static_cast<Paragraph *>(Children.back().get()); +} } // namespace markup } // namespace clangd } // namespace clang |

