[clang-tools-extra] 46a2abb - [clang-doc][nfc] Avoid constructing SmallString in ToString method (#96921)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Jul 8 16:30:21 PDT 2024
Author: Paul Kirth
Date: 2024-07-08T16:30:18-07:00
New Revision: 46a2abb91cb6cfac9b807ae2055cc5f1743405e4
URL: https://github.com/llvm/llvm-project/commit/46a2abb91cb6cfac9b807ae2055cc5f1743405e4
DIFF: https://github.com/llvm/llvm-project/commit/46a2abb91cb6cfac9b807ae2055cc5f1743405e4.diff
LOG: [clang-doc][nfc] Avoid constructing SmallString in ToString method (#96921)
This patch updates the return type of HTMLTag::toString from
SmallString<16> to StringRef, since this API only returns string
literals. As a result, there is no need to construct a full heap
allocated or owned string.
Additionally, this patch renames ToString to toString to match the LLVM
style guide.
Added:
Modified:
clang-tools-extra/clang-doc/HTMLGenerator.cpp
Removed:
################################################################################
diff --git a/clang-tools-extra/clang-doc/HTMLGenerator.cpp b/clang-tools-extra/clang-doc/HTMLGenerator.cpp
index b5da17564c2e0..f6b5e8926f903 100644
--- a/clang-tools-extra/clang-doc/HTMLGenerator.cpp
+++ b/clang-tools-extra/clang-doc/HTMLGenerator.cpp
@@ -56,7 +56,7 @@ class HTMLTag {
operator bool() = delete;
bool isSelfClosing() const;
- llvm::SmallString<16> ToString() const;
+ StringRef toString() const;
private:
TagType Value;
@@ -137,42 +137,42 @@ bool HTMLTag::isSelfClosing() const {
llvm_unreachable("Unhandled HTMLTag::TagType");
}
-llvm::SmallString<16> HTMLTag::ToString() const {
+StringRef HTMLTag::toString() const {
switch (Value) {
case HTMLTag::TAG_A:
- return llvm::SmallString<16>("a");
+ return "a";
case HTMLTag::TAG_DIV:
- return llvm::SmallString<16>("div");
+ return "div";
case HTMLTag::TAG_FOOTER:
- return llvm::SmallString<16>("footer");
+ return "footer";
case HTMLTag::TAG_H1:
- return llvm::SmallString<16>("h1");
+ return "h1";
case HTMLTag::TAG_H2:
- return llvm::SmallString<16>("h2");
+ return "h2";
case HTMLTag::TAG_H3:
- return llvm::SmallString<16>("h3");
+ return "h3";
case HTMLTag::TAG_HEADER:
- return llvm::SmallString<16>("header");
+ return "header";
case HTMLTag::TAG_LI:
- return llvm::SmallString<16>("li");
+ return "li";
case HTMLTag::TAG_LINK:
- return llvm::SmallString<16>("link");
+ return "link";
case HTMLTag::TAG_MAIN:
- return llvm::SmallString<16>("main");
+ return "main";
case HTMLTag::TAG_META:
- return llvm::SmallString<16>("meta");
+ return "meta";
case HTMLTag::TAG_OL:
- return llvm::SmallString<16>("ol");
+ return "ol";
case HTMLTag::TAG_P:
- return llvm::SmallString<16>("p");
+ return "p";
case HTMLTag::TAG_SCRIPT:
- return llvm::SmallString<16>("script");
+ return "script";
case HTMLTag::TAG_SPAN:
- return llvm::SmallString<16>("span");
+ return "span";
case HTMLTag::TAG_TITLE:
- return llvm::SmallString<16>("title");
+ return "title";
case HTMLTag::TAG_UL:
- return llvm::SmallString<16>("ul");
+ return "ul";
}
llvm_unreachable("Unhandled HTMLTag::TagType");
}
@@ -191,7 +191,7 @@ void TagNode::render(llvm::raw_ostream &OS, int IndentationLevel) {
break;
}
OS.indent(IndentationLevel * 2);
- OS << "<" << Tag.ToString();
+ OS << "<" << Tag.toString();
for (const auto &A : Attributes)
OS << " " << A.first << "=\"" << A.second << "\"";
if (Tag.isSelfClosing()) {
@@ -216,7 +216,7 @@ void TagNode::render(llvm::raw_ostream &OS, int IndentationLevel) {
}
if (!InlineChildren)
OS.indent(IndentationLevel * 2);
- OS << "</" << Tag.ToString() << ">";
+ OS << "</" << Tag.toString() << ">";
}
template <typename Derived, typename Base,
More information about the cfe-commits
mailing list