23
23
#include " clang/Sema/Lookup.h"
24
24
#include " clang/Sema/Sema.h"
25
25
#include " llvm/ADT/TinyPtrVector.h"
26
+ #include " llvm/ADT/STLExtras.h"
26
27
#include " llvm/Support/CommandLine.h"
27
28
#include " llvm/Support/Compiler.h"
28
29
#include " llvm/Support/FileSystem.h"
@@ -717,6 +718,12 @@ class SDKNodeDeclAccessor: public SDKNodeDeclAbstractFunc {
717
718
void jsonize (json::Output &Out) override ;
718
719
};
719
720
721
+ class SDKNodeDeclImport : public SDKNodeDecl {
722
+ public:
723
+ SDKNodeDeclImport (SDKNodeInitInfo Info);
724
+ static bool classof (const SDKNode *N);
725
+ };
726
+
720
727
// The additional information we need for a type node in the digest.
721
728
// We use type node to represent entities more than types, e.g. parameters, so
722
729
// this struct is necessary to pass down to create a type node.
@@ -781,6 +788,8 @@ class SwiftDeclCollector: public VisibleDeclConsumer {
781
788
void lookupVisibleDecls (ArrayRef<ModuleDecl *> Modules);
782
789
};
783
790
791
+ void detectRename (SDKNode *L, SDKNode *R);
792
+
784
793
int dumpSwiftModules (const CompilerInvocation &InitInvok,
785
794
const llvm::StringSet<> &ModuleNames,
786
795
StringRef OutputDir,
@@ -799,6 +808,8 @@ int dumpSDKContent(const CompilerInvocation &InitInvok,
799
808
const llvm::StringSet<> &ModuleNames,
800
809
StringRef OutputFile, CheckerOptions Opts);
801
810
811
+ void dumpModuleContent (ModuleDecl *MD, StringRef OutputFile, bool ABI);
812
+
802
813
// / Mostly for testing purposes, this function de-serializes the SDK dump in
803
814
// / dumpPath and re-serialize them to OutputPath. If the tool performs correctly,
804
815
// / the contents in dumpPath and OutputPath should be identical.
0 commit comments