This commit is contained in:
Valentin Kipyatkov
2015-06-13 01:49:29 +03:00
parent 95baf9b884
commit 1dbd342938
2 changed files with 5 additions and 9 deletions
@@ -51,7 +51,7 @@ public class MutableClassDescriptor extends ClassDescriptorBase implements Class
// This scope contains type parameters but does not contain inner classes // This scope contains type parameters but does not contain inner classes
private final WritableScope scopeForSupertypeResolution; private final WritableScope scopeForSupertypeResolution;
private JetScope scopeForInitializers; //contains members + primary constructor value parameters + map for backing fields private JetScope scopeForInitializers; //contains members + primary constructor value parameters + map for backing fields
private JetScope scopeForMemberLookup; private final JetScope scopeForMemberLookup;
private final JetScope staticScope = new StaticScopeForKotlinClass(this); private final JetScope staticScope = new StaticScopeForKotlinClass(this);
public MutableClassDescriptor( public MutableClassDescriptor(
@@ -70,8 +70,8 @@ public class MutableClassDescriptor extends ClassDescriptorBase implements Class
RedeclarationHandler redeclarationHandler = RedeclarationHandler.DO_NOTHING; RedeclarationHandler redeclarationHandler = RedeclarationHandler.DO_NOTHING;
setScopeForMemberLookup(new WritableScopeImpl(JetScope.Empty.INSTANCE$, this, redeclarationHandler, "MemberLookup", null, this) this.scopeForMemberLookup = new WritableScopeImpl(JetScope.Empty.INSTANCE$, this, redeclarationHandler, "MemberLookup", null, this)
.changeLockLevel(WritableScope.LockLevel.BOTH)); .changeLockLevel(WritableScope.LockLevel.BOTH);
this.scopeForSupertypeResolution = new WritableScopeImpl(outerScope, this, redeclarationHandler, "SupertypeResolution") this.scopeForSupertypeResolution = new WritableScopeImpl(outerScope, this, redeclarationHandler, "SupertypeResolution")
.changeLockLevel(WritableScope.LockLevel.BOTH); .changeLockLevel(WritableScope.LockLevel.BOTH);
this.mutableScopeForMemberResolution = new MutableScopeForMemberResolution(); this.mutableScopeForMemberResolution = new MutableScopeForMemberResolution();
@@ -254,10 +254,6 @@ public class MutableClassDescriptor extends ClassDescriptorBase implements Class
.changeLockLevel(WritableScope.LockLevel.BOTH); .changeLockLevel(WritableScope.LockLevel.BOTH);
} }
public void setScopeForMemberLookup(@NotNull JetScope scopeForMemberLookup) {
this.scopeForMemberLookup = scopeForMemberLookup;
}
@Override @Override
@NotNull @NotNull
public JetScope getScopeForMemberLookup() { public JetScope getScopeForMemberLookup() {
@@ -508,7 +508,7 @@ public class BodyResolver {
if (unsubstitutedPrimaryConstructor != null) { if (unsubstitutedPrimaryConstructor != null) {
ForceResolveUtil.forceResolveAllContents(unsubstitutedPrimaryConstructor.getAnnotations()); ForceResolveUtil.forceResolveAllContents(unsubstitutedPrimaryConstructor.getAnnotations());
WritableScope parameterScope = getPrimaryConstructorParametersScope(classDescriptor.getScopeForClassHeaderResolution(), JetScope parameterScope = getPrimaryConstructorParametersScope(classDescriptor.getScopeForClassHeaderResolution(),
unsubstitutedPrimaryConstructor); unsubstitutedPrimaryConstructor);
valueParameterResolver.resolveValueParameters(klass.getPrimaryConstructorParameters(), valueParameterResolver.resolveValueParameters(klass.getPrimaryConstructorParameters(),
unsubstitutedPrimaryConstructor.getValueParameters(), unsubstitutedPrimaryConstructor.getValueParameters(),
@@ -517,7 +517,7 @@ public class BodyResolver {
} }
} }
private static WritableScope getPrimaryConstructorParametersScope( private static JetScope getPrimaryConstructorParametersScope(
JetScope originalScope, JetScope originalScope,
ConstructorDescriptor unsubstitutedPrimaryConstructor ConstructorDescriptor unsubstitutedPrimaryConstructor
) { ) {