Generate not-null assertions only for descriptors coming from Java

Introduce BindingContext.IS_DECLARED_IN_JAVA, store that info in
JavaDescriptorResolver
This commit is contained in:
Alexander Udalov
2012-10-02 22:44:57 +04:00
parent 988af8208c
commit bf779b4ca5
7 changed files with 89 additions and 5 deletions
@@ -130,6 +130,10 @@ public final class FunctionResolver {
BindingContextUtils.recordFunctionDeclarationToDescriptor(javaDescriptorResolver.getTrace(), psiMethod, functionDescriptorImpl);
}
if (!scopeData.isKotlin()) {
javaDescriptorResolver.getTrace().record(BindingContext.IS_DECLARED_IN_JAVA, functionDescriptorImpl);
}
if (containingClass != psiClass && !method.isStatic()) {
throw new IllegalStateException("non-static method in subclass");
}
@@ -275,6 +275,9 @@ public final class PropertiesResolver {
trace.record(BindingContext.OBJECT_DECLARATION_CLASS, propertyDescriptor, objectDescriptor);
}
if (!scopeData.isKotlin()) {
trace.record(BindingContext.IS_DECLARED_IN_JAVA, propertyDescriptor);
}
propertiesFromCurrent.add(propertyDescriptor);
}