Registering local classes with the outer scope

This commit is contained in:
Andrey Breslav
2015-01-23 17:10:22 +03:00
parent 7036cb8f42
commit 0fe191b028
@@ -77,6 +77,7 @@ public class LazyLocalClassifierAnalyzer(
additionalCheckerProvider, additionalCheckerProvider,
dynamicTypesSettings, dynamicTypesSettings,
LocalClassDescriptorManager( LocalClassDescriptorManager(
scope,
classOrObject, classOrObject,
containingDeclaration, containingDeclaration,
globalContext.storageManager, globalContext.storageManager,
@@ -96,6 +97,7 @@ public class LazyLocalClassifierAnalyzer(
} }
class LocalClassDescriptorManager( class LocalClassDescriptorManager(
val writableScope: WritableScope?,
val myClass: JetClassOrObject, val myClass: JetClassOrObject,
val containingDeclaration: DeclarationDescriptor, val containingDeclaration: DeclarationDescriptor,
val storageManager: StorageManager, val storageManager: StorageManager,
@@ -138,6 +140,7 @@ class LocalClassDescriptorManager(
if (classOrObject.isObjectLiteral()) SpecialNames.NO_NAME_PROVIDED else classOrObject.getNameAsName(), if (classOrObject.isObjectLiteral()) SpecialNames.NO_NAME_PROVIDED else classOrObject.getNameAsName(),
JetClassInfoUtil.createClassLikeInfo(classOrObject) JetClassInfoUtil.createClassLikeInfo(classOrObject)
) )
writableScope?.addClassifierDescriptor(classDescriptor!!)
} }
return classDescriptor!! return classDescriptor!!