================
@@ -512,11 +516,83 @@ HeaderIncludes::insert(llvm::StringRef Header, bool
IsAngled,
return tooling::Replacement(FileName, InsertOffset, 0, NewInclude);
}
-tooling::Replacements HeaderIncludes::remove(llvm::StringRef IncludeName,
+HeaderIncludes::HeaderToInsert::HeaderToInsert(
+ llvm::StringRef RawOrSpelledHeader, IncludeDirective Directive,
+ QuoteStyle QuoteStyle)
+ : Directive(Directive) {
+ if (RawOrSpelledHeader.starts_with("<")) {
+ Header = RawOrSpelledHeader.trim("<>").str();
+ this->IsAngled = QuoteStyle != QuoteStyle::QUOTED;
+ } else if (RawOrSpelledHeader.starts_with("\"")) {
+ Header = RawOrSpelledHeader.trim("\"").str();
+ this->IsAngled = QuoteStyle == QuoteStyle::ANGLED;
+ }
+}
+
+tooling::Replacements
+HeaderIncludes::insert(llvm::ArrayRef<HeaderToInsert> Headers) const {
----------------
kadircet wrote:
nit: make the param type a `std::vector` directly, so that we can prevent a
copy if callers can just `std::move` their vectors at hand.
https://github.com/llvm/llvm-project/pull/212852
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits