diff options
author | Julie Hockett <juliehockett@google.com> | 2019-07-12 18:32:00 +0000 |
---|---|---|
committer | Julie Hockett <juliehockett@google.com> | 2019-07-12 18:32:00 +0000 |
commit | 2c1c9a240776e5ccfb29b8a22bb32bb7e87ac2dd (patch) | |
tree | 01de292be1b791cca0047d25e1bed39d62e13011 /clang-tools-extra/clang-doc/BitcodeReader.cpp | |
parent | 13f7ddff17ba1f4c5a51c83af1c83cb501ad0653 (diff) | |
download | bcm5719-llvm-2c1c9a240776e5ccfb29b8a22bb32bb7e87ac2dd.tar.gz bcm5719-llvm-2c1c9a240776e5ccfb29b8a22bb32bb7e87ac2dd.zip |
[clang-doc] Add html links to references
<a> tags are added for the parents and members of records and return type and
params of functions. The link redirects to the reference's info file.
The directory path where each info file will be saved is now generated in the
serialization phase and stored as an attribute in each Info.
Bitcode writer and reader were modified to handle the new attributes.
Committed on behalf of Diego Astiazarán (diegoaat97@gmail.com).
Differential Revision: https://reviews.llvm.org/D63663
llvm-svn: 365937
Diffstat (limited to 'clang-tools-extra/clang-doc/BitcodeReader.cpp')
-rw-r--r-- | clang-tools-extra/clang-doc/BitcodeReader.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/clang-tools-extra/clang-doc/BitcodeReader.cpp b/clang-tools-extra/clang-doc/BitcodeReader.cpp index c82903f1406..2b27d6065f3 100644 --- a/clang-tools-extra/clang-doc/BitcodeReader.cpp +++ b/clang-tools-extra/clang-doc/BitcodeReader.cpp @@ -148,6 +148,8 @@ llvm::Error parseRecord(Record R, unsigned ID, llvm::StringRef Blob, return decodeRecord(R, I->USR, Blob); case NAMESPACE_NAME: return decodeRecord(R, I->Name, Blob); + case NAMESPACE_PATH: + return decodeRecord(R, I->Path, Blob); default: return llvm::make_error<llvm::StringError>( "Invalid field for NamespaceInfo.\n", llvm::inconvertibleErrorCode()); @@ -161,6 +163,8 @@ llvm::Error parseRecord(Record R, unsigned ID, llvm::StringRef Blob, return decodeRecord(R, I->USR, Blob); case RECORD_NAME: return decodeRecord(R, I->Name, Blob); + case RECORD_PATH: + return decodeRecord(R, I->Path, Blob); case RECORD_DEFLOCATION: return decodeRecord(R, I->DefLoc, Blob); case RECORD_LOCATION: @@ -286,6 +290,8 @@ llvm::Error parseRecord(Record R, unsigned ID, llvm::StringRef Blob, return decodeRecord(R, I->Name, Blob); case REFERENCE_TYPE: return decodeRecord(R, I->RefType, Blob); + case REFERENCE_PATH: + return decodeRecord(R, I->Path, Blob); case REFERENCE_FIELD: return decodeRecord(R, F, Blob); default: @@ -685,7 +691,7 @@ ClangDocBitcodeReader::createInfo(unsigned ID) { std::unique_ptr<Info> I = llvm::make_unique<T>(); if (auto Err = readBlock(ID, static_cast<T *>(I.get()))) return std::move(Err); - return std::unique_ptr<Info>{std::move(I)};; + return std::unique_ptr<Info>{std::move(I)}; } llvm::Expected<std::unique_ptr<Info>> |