Instances of ChainedScope should always have a debugMessage
This commit is contained in:
@@ -460,7 +460,7 @@ public class TypeHierarchyResolver {
|
||||
context.getPackageFragments().put(file, packageFragment);
|
||||
|
||||
PackageViewDescriptor packageView = packageFragment.getContainingDeclaration().getPackage(packageFragment.getFqName());
|
||||
ChainedScope rootPlusPackageScope = new ChainedScope(packageView, packageView.getMemberScope(), outerScope);
|
||||
ChainedScope rootPlusPackageScope = new ChainedScope(packageView, "Root scope for " + file, packageView.getMemberScope(), outerScope);
|
||||
WriteThroughScope packageScope = new WriteThroughScope(rootPlusPackageScope, packageFragment.getMemberScope(),
|
||||
new TraceBasedRedeclarationHandler(trace), "package in file " + file.getName());
|
||||
packageScope.changeLockLevel(WritableScope.LockLevel.BOTH);
|
||||
|
||||
+6
-2
@@ -178,7 +178,9 @@ public class CallExpressionResolver {
|
||||
scopes.add(namespace.getMemberScope());
|
||||
}
|
||||
|
||||
JetScope scope = new ChainedScope(classifier, scopes.toArray(new JetScope[scopes.size()]));
|
||||
JetScope scope = new ChainedScope(
|
||||
classifier, "Member scope for extended class object type " + classifier, scopes.toArray(new JetScope[scopes.size()])
|
||||
);
|
||||
return new NamespaceType(referencedName, scope, new ExpressionReceiver(expression, classObjectType));
|
||||
}
|
||||
|
||||
@@ -213,7 +215,9 @@ public class CallExpressionResolver {
|
||||
JetScope scope;
|
||||
ClassifierDescriptor classifier = context.scope.getClassifier(name);
|
||||
if (classifier instanceof ClassDescriptor) {
|
||||
scope = new ChainedScope(namespace, namespace.getMemberScope(), getStaticNestedClassesScope((ClassDescriptor) classifier));
|
||||
scope = new ChainedScope(
|
||||
namespace, "Namespace type member scope for " + expression.getText(), namespace.getMemberScope(), getStaticNestedClassesScope((ClassDescriptor) classifier)
|
||||
);
|
||||
}
|
||||
else {
|
||||
scope = namespace.getMemberScope();
|
||||
|
||||
@@ -93,6 +93,7 @@ public class TypeSubstitutorTest extends KotlinTestWithEnvironment {
|
||||
}
|
||||
typeParameters.changeLockLevel(WritableScope.LockLevel.READING);
|
||||
return new ChainedScope(module,
|
||||
"TypeSubstitutorTest::getContextScope()",
|
||||
topLevelDeclarations,
|
||||
typeParameters,
|
||||
contextClass.getDefaultType().getMemberScope(),
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@ public class JavaFullPackageScope extends ChainedScope implements JavaPackageFra
|
||||
@NotNull JetScope kotlinPackageScope,
|
||||
@NotNull JavaPurePackageScope purePackageScope
|
||||
) {
|
||||
super(packageFragment, kotlinPackageScope, purePackageScope);
|
||||
super(packageFragment, "JavaFullPackageScope", kotlinPackageScope, purePackageScope);
|
||||
this.purePackageScope = purePackageScope;
|
||||
}
|
||||
|
||||
|
||||
@@ -37,10 +37,6 @@ public class ChainedScope implements JetScope {
|
||||
private Collection<DeclarationDescriptor> allDescriptors;
|
||||
private List<ReceiverParameterDescriptor> implicitReceiverHierarchy;
|
||||
|
||||
public ChainedScope(DeclarationDescriptor containingDeclaration, JetScope... scopes) {
|
||||
this(containingDeclaration, "Untitled chained scope", scopes);
|
||||
}
|
||||
|
||||
public ChainedScope(DeclarationDescriptor containingDeclaration, String debugName, JetScope... scopes) {
|
||||
this.containingDeclaration = containingDeclaration;
|
||||
scopeChain = scopes.clone();
|
||||
|
||||
@@ -215,7 +215,7 @@ public class TypeUtils {
|
||||
constructor,
|
||||
allNullable,
|
||||
Collections.<TypeProjection>emptyList(),
|
||||
new ChainedScope(null, scopes)); // TODO : check intersectibility, don't use a chanied scope
|
||||
new ChainedScope(null, "member scope for intersection type " + constructor, scopes)); // TODO : check intersectibility, don't use a chanied scope
|
||||
}
|
||||
|
||||
private static class TypeUnifier {
|
||||
|
||||
Reference in New Issue
Block a user