[FIR] Qualifier resolve

This commit is contained in:
simon.ogorodnik
2020-01-22 17:39:34 +03:00
parent 723ebb4f57
commit c29c140a9c
21 changed files with 238 additions and 175 deletions
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.fir.java
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.declarations.FirClass
import org.jetbrains.kotlin.fir.declarations.FirRegularClass
import org.jetbrains.kotlin.fir.declarations.classId
import org.jetbrains.kotlin.fir.java.declarations.FirJavaClass
import org.jetbrains.kotlin.fir.java.scopes.JavaClassEnhancementScope
import org.jetbrains.kotlin.fir.java.scopes.JavaClassUseSiteMemberScope
@@ -111,7 +112,15 @@ class JavaScopeProvider(
)
)
}
return FirStaticScope(enhancementScope)
return FirOnlyCallablesScope(FirStaticScope(enhancementScope))
}
override fun getNestedClassifierScope(klass: FirClass<*>, useSiteSession: FirSession, scopeSession: ScopeSession): FirScope? {
return lazyNestedClassifierScope(
klass.classId,
(klass as FirJavaClass).existingNestedClassifierNames,
useSiteSession.firSymbolProvider
)
}
}
@@ -227,7 +227,7 @@ class JavaSymbolProvider(
symbol = constructorSymbol
this.visibility = visibility
this.isPrimary = isPrimary
isInner = !javaClass.isStatic
isInner = javaClass.outerClass != null && !javaClass.isStatic
returnTypeRef = buildResolvedTypeRef {
type = firSymbol.constructType(
classTypeParameters.map { ConeTypeParameterTypeImpl(it.symbol.toLookupTag(), false) }.toTypedArray(),