[all-commits] [llvm/llvm-project] 7a8519: [clang][ExtractAPI] Add support for single symbol ...
Daniel Grumberg via All-commits
all-commits at lists.llvm.org
Tue Dec 13 03:19:30 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 7a85192166b551929d413e8a38549375503371db
https://github.com/llvm/llvm-project/commit/7a85192166b551929d413e8a38549375503371db
Author: Daniel Grumberg <dgrumberg at apple.com>
Date: 2022-12-13 (Tue, 13 Dec 2022)
Changed paths:
M clang/include/clang-c/Documentation.h
M clang/include/clang/ExtractAPI/API.h
M clang/include/clang/ExtractAPI/DeclarationFragments.h
A clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
M clang/include/clang/ExtractAPI/Serialization/SerializerBase.h
M clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h
M clang/lib/ExtractAPI/API.cpp
M clang/lib/ExtractAPI/CMakeLists.txt
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
A clang/lib/ExtractAPI/ExtractAPIVisitor.cpp
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/ExtractAPI/TypedefUnderlyingTypeResolver.cpp
M clang/lib/ExtractAPI/TypedefUnderlyingTypeResolver.h
A clang/test/Index/extract-api-cursor.m
A clang/test/Index/extract-api-usr.m
M clang/tools/c-index-test/c-index-test.c
M clang/tools/libclang/CMakeLists.txt
A clang/tools/libclang/CXExtractAPI.cpp
M clang/tools/libclang/libclang.map
Log Message:
-----------
[clang][ExtractAPI] Add support for single symbol SGF and libclang support
This is mainly adding an entry point to `SymbolGraphSerializer` at
`serializeSingleSymbolSGF` and exposing the necessary data to make this
possible. Additionaly there are some changes to how symbol kinds and
path components are serialized to make the usage more ergonomic in
`serializeSingleSymbolSGF`.
On the libclang side this introduces APIs to:
- create an APISet from a TU
- dispose of an APISet
- query an APISet for a single symbol SGF for a given USR.
- generate a single symbol SGF for a given CXCursor, this only traverses
the necessary AST nodes to construct the result as oppposed as going
through the entire AST.
Differential Revision: https://reviews.llvm.org/D139115
More information about the All-commits
mailing list