[clang-tools-extra] r368484 - [clang-doc] Generate an HTML index file
Diego Astiazaran via cfe-commits
cfe-commits at lists.llvm.org
Fri Aug 9 13:52:28 PDT 2019
Author: diegoastiazaran
Date: Fri Aug 9 13:52:28 2019
New Revision: 368484
URL: http://llvm.org/viewvc/llvm-project?rev=368484&view=rev
Log:
[clang-doc] Generate an HTML index file
clang-doc now generates a file that contains only an index to all the
infos that can be used as the landing page for the generated website.
Differential Revision: https://reviews.llvm.org/D65918
Modified:
clang-tools-extra/trunk/clang-doc/HTMLGenerator.cpp
Modified: clang-tools-extra/trunk/clang-doc/HTMLGenerator.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-doc/HTMLGenerator.cpp?rev=368484&r1=368483&r2=368484&view=diff
==============================================================================
--- clang-tools-extra/trunk/clang-doc/HTMLGenerator.cpp (original)
+++ clang-tools-extra/trunk/clang-doc/HTMLGenerator.cpp Fri Aug 9 13:52:28 2019
@@ -813,6 +813,24 @@ static bool SerializeIndex(ClangDocConte
return true;
}
+static bool GenIndex(const ClangDocContext &CDCtx) {
+ std::error_code FileErr, OK;
+ llvm::SmallString<128> IndexPath;
+ llvm::sys::path::native(CDCtx.OutDirectory, IndexPath);
+ llvm::sys::path::append(IndexPath, "index.html");
+ llvm::raw_fd_ostream IndexOS(IndexPath, FileErr, llvm::sys::fs::F_None);
+ if (FileErr != OK) {
+ llvm::errs() << "Error creating main index: " << FileErr.message() << "\n";
+ return false;
+ }
+ HTMLFile F;
+ std::vector<std::unique_ptr<TagNode>> BasicNodes =
+ genCommonFileNodes("Index", "", CDCtx);
+ AppendVector(std::move(BasicNodes), F.Children);
+ F.Render(IndexOS);
+ return true;
+}
+
static bool CopyFile(StringRef FilePath, StringRef OutDirectory) {
llvm::SmallString<128> PathWrite;
llvm::sys::path::native(OutDirectory, PathWrite);
@@ -831,7 +849,7 @@ static bool CopyFile(StringRef FilePath,
}
bool HTMLGenerator::createResources(ClangDocContext &CDCtx) {
- if (!SerializeIndex(CDCtx))
+ if (!SerializeIndex(CDCtx) || !GenIndex(CDCtx))
return false;
for (const auto &FilePath : CDCtx.UserStylesheets)
if (!CopyFile(FilePath, CDCtx.OutDirectory))
More information about the cfe-commits
mailing list