JET-61 Support class objects
JET-83 Interpret Java static methods as class objects' members
This commit is contained in:
@@ -24,7 +24,6 @@ public class ScopeWithReceiver extends JetScopeImpl {
|
||||
@Override
|
||||
public FunctionGroup getFunctionGroup(@NotNull String name) {
|
||||
JetScope memberScope = receiverType.getMemberScope();
|
||||
assert memberScope != null : receiverType;
|
||||
FunctionGroup functionGroup = memberScope.getFunctionGroup(name);
|
||||
if (functionGroup.isEmpty()) {
|
||||
return outerScope.getFunctionGroup(name);
|
||||
@@ -47,7 +46,7 @@ public class ScopeWithReceiver extends JetScopeImpl {
|
||||
|
||||
@Override
|
||||
public ClassifierDescriptor getClassifier(@NotNull String name) {
|
||||
return super.getClassifier(name); // TODO
|
||||
return receiverType.getMemberScope().getClassifier(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -201,16 +201,17 @@ public class JavaDescriptorResolver {
|
||||
if (namespaceDescriptor == null) {
|
||||
// TODO : packages
|
||||
|
||||
PsiClass psiClass = javaFacade.findClass(qualifiedName, javaSearchScope);
|
||||
if (psiClass == null) {
|
||||
// PsiClass psiClass = javaFacade.findClass(qualifiedName, javaSearchScope);
|
||||
// if (psiClass != null) {
|
||||
// namespaceDescriptor = createJavaNamespaceDescriptor(psiClass);
|
||||
// }
|
||||
// else {
|
||||
PsiPackage psiPackage = javaFacade.findPackage(qualifiedName);
|
||||
if (psiPackage == null) {
|
||||
return null;
|
||||
}
|
||||
namespaceDescriptor = createJavaNamespaceDescriptor(psiPackage);
|
||||
} else {
|
||||
namespaceDescriptor = createJavaNamespaceDescriptor(psiClass);
|
||||
}
|
||||
// }
|
||||
namespaceDescriptorCache.put(qualifiedName, namespaceDescriptor);
|
||||
}
|
||||
return namespaceDescriptor;
|
||||
|
||||
Reference in New Issue
Block a user