mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Code completion: don't complete associated types on non-metatypes
Swift SVN r16817
This commit is contained in:
@@ -230,6 +230,28 @@ AbstractFunctionDecl *DeclContext::getInnermostMethodContext() {
|
||||
}
|
||||
}
|
||||
|
||||
DeclContext *DeclContext::getInnermostTypeContext() {
|
||||
DeclContext *Result = this;
|
||||
while (true) {
|
||||
switch (Result->getContextKind()) {
|
||||
case DeclContextKind::AbstractClosureExpr:
|
||||
case DeclContextKind::Initializer:
|
||||
case DeclContextKind::TopLevelCodeDecl:
|
||||
case DeclContextKind::AbstractFunctionDecl:
|
||||
Result = Result->getParent();
|
||||
continue;
|
||||
|
||||
case DeclContextKind::Module:
|
||||
case DeclContextKind::FileUnit:
|
||||
return nullptr;
|
||||
|
||||
case DeclContextKind::ExtensionDecl:
|
||||
case DeclContextKind::NominalTypeDecl:
|
||||
return Result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Module *DeclContext::getParentModule() const {
|
||||
const DeclContext *DC = this;
|
||||
while (!DC->isModuleContext())
|
||||
|
||||
Reference in New Issue
Block a user