[PATCH] D122611: [clang][extract-api] Add support for macros

Zixu Wang via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Mar 28 17:31:55 PDT 2022


zixuw added inline comments.


================
Comment at: clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h:22
 #include "clang/ExtractAPI/Serialization/SerializerBase.h"
+#include "clang/Lex/PreprocessingRecord.h"
 #include "llvm/Support/JSON.h"
----------------
Why do we need this include?


================
Comment at: clang/lib/ExtractAPI/API.cpp:32
+RecordTy *
+addTopLevelRecord(MapVector<StringRef, std::unique_ptr<RecordTy>> &RecordMap,
+                  StringRef Name, CtorArgsTy &&...CtorArgs) {
----------------
Does it make sense to just directly make the `*RecordMap` types in `APISet` as a `template using`?


================
Comment at: clang/lib/ExtractAPI/ExtractAPIConsumer.cpp:446-457
+void ExtractAPIAction::EndSourceFileAction() {
+  if (!OS)
+    return;
+
+  // Setup a SymbolGraphSerializer to write out collected API information in
+  // the Symbol Graph format.
+  // FIXME: Make the kind of APISerializer configurable.
----------------
Worth moving this change and the `APISet` move and relevant structural changes into its own patch, as mentioned in D122446.


================
Comment at: clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp:17
 #include "clang/ExtractAPI/API.h"
+#include "clang/Lex/PreprocessingRecord.h"
 #include "llvm/Support/JSON.h"
----------------
Why do we need this include?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D122611/new/

https://reviews.llvm.org/D122611



More information about the cfe-commits mailing list