Module::getImportedModules can now get public, private, or all imports.

...whereas before the only options were "public" and "all".

No functionality change.

Swift SVN r13849
This commit is contained in:
Jordan Rose
2014-02-12 23:57:43 +00:00
parent 268316f375
commit 7995dde448
11 changed files with 55 additions and 32 deletions

View File

@@ -672,11 +672,12 @@ OperatorDecl *ModuleFile::lookupOperator(Identifier name, DeclKind fixity) {
void ModuleFile::getImportedModules(
SmallVectorImpl<Module::ImportedModule> &results,
bool includePrivate) {
Module::ImportFilter filter) {
PrettyModuleFileDeserialization stackEntry(*this);
for (auto &dep : Dependencies) {
if (!includePrivate && !dep.IsExported)
if (filter != Module::ImportFilter::All &&
(filter == Module::ImportFilter::Public) ^ dep.IsExported)
continue;
assert(dep.isLoaded());
results.push_back(dep.Import);