store namespace kind in trace, kill some JavaNamespaceDescriptor usages

JavaNamespaceDescriptor will be killed soon
This commit is contained in:
Stepan Koltsov
2012-03-23 23:44:16 +04:00
parent f73b2c01b4
commit 8517fe6878
8 changed files with 87 additions and 40 deletions
@@ -173,6 +173,11 @@ public interface BindingContext {
WritableSlice<FqName, ClassDescriptor> FQNAME_TO_CLASS_DESCRIPTOR = new BasicWritableSlice<FqName, ClassDescriptor>(DO_NOTHING, true);
WritableSlice<FqName, NamespaceDescriptor> FQNAME_TO_NAMESPACE_DESCRIPTOR = new BasicWritableSlice<FqName, NamespaceDescriptor>(DO_NOTHING);
/**
* Each namespace found in src must be registered here.
*/
WritableSlice<NamespaceDescriptor, Boolean> NAMESPACE_IS_SRC = Slices.createSimpleSlice();
WritableSlice<ClassDescriptor, Boolean> INCOMPLETE_HIERARCHY = Slices.createCollectiveSetSlice();
@@ -80,6 +80,7 @@ public class NamespaceFactoryImpl implements NamespaceFactory {
String namespaceName = JetPsiUtil.safeName(nameExpression.getReferencedName());
NamespaceDescriptorImpl namespaceDescriptor = createNamespaceDescriptorIfNeeded(null, currentOwner, namespaceName, false);
trace.record(BindingContext.NAMESPACE_IS_SRC, namespaceDescriptor, true);
currentOwner = namespaceDescriptor;
@@ -92,7 +93,10 @@ public class NamespaceFactoryImpl implements NamespaceFactory {
String name = JetPsiUtil.safeName(namespaceHeader.getName());
trace.record(RESOLUTION_SCOPE, namespaceHeader, outerScope);
return createNamespaceDescriptorIfNeeded(file, currentOwner, name, false);
NamespaceDescriptorImpl namespaceDescriptor = createNamespaceDescriptorIfNeeded(file, currentOwner, name, false);
trace.record(BindingContext.NAMESPACE_IS_SRC, namespaceDescriptor, true);
return namespaceDescriptor;
}
@Override