[modules] Introduce Module::getTopLevelDecls() to get the local-in-module top-level decls.

getDisplayDecls() was introduced for ":print_module" and works slightly differently, e.g.
it will return the decls from a shadowed clang module, since we want to display them.

Swift SVN r7909
This commit is contained in:
Argyrios Kyrtzidis
2013-09-04 20:55:27 +00:00
parent 5065699eb3
commit 36a469df0b
9 changed files with 60 additions and 6 deletions

View File

@@ -363,9 +363,14 @@ public:
/// Reports all link-time dependencies.
void getLinkLibraries(Module::LinkLibraryCallback callback) const;
/// Adds all top-level decls to the given vector.
void getTopLevelDecls(SmallVectorImpl<Decl*> &Results);
/// Adds all top-level decls to the given vector.
///
/// This includes all decls that should be displayed to clients of the module.
/// This can differ from \c getTopLevelDecls, e.g. it returns decls from a
/// shadowed clang module.
void getDisplayDecls(SmallVectorImpl<Decl*> &results);
StringRef getModuleFilename() const {