SymbolUsageValidator infrastructure

This commit is contained in:
Ilya Ryzhenkov
2015-03-26 16:39:41 +03:00
parent b3aadfd5e0
commit c2b3bcc95f
36 changed files with 268 additions and 59 deletions
@@ -44,6 +44,7 @@ import org.jetbrains.kotlin.resolve.jvm.JavaDescriptorResolver
import org.jetbrains.kotlin.resolve.jvm.JavaLazyAnalyzerPostConstruct
import org.jetbrains.kotlin.resolve.lazy.*
import org.jetbrains.kotlin.resolve.lazy.declarations.DeclarationProviderFactory
import org.jetbrains.kotlin.resolve.validation.DefaultSymbolUsageValidator
import org.jetbrains.kotlin.storage.LockBasedStorageManager
import org.jetbrains.kotlin.types.DynamicTypesAllowed
import org.jetbrains.kotlin.types.DynamicTypesSettings
@@ -106,6 +107,7 @@ private fun generatorForLazyLocalClassifierAnalyzer() =
field<NoFileScopeProvider>()
field<DeclarationScopeProviderForLocalClassifierAnalyzer>()
field<LocalLazyDeclarationResolver>()
field<DefaultSymbolUsageValidator>()
}
private fun generatorForLazyBodyResolve() =
@@ -118,6 +120,7 @@ private fun generatorForLazyBodyResolve() =
parameter<DynamicTypesSettings>()
field<ModuleDescriptor>(init = GivenExpression("analyzer.getModuleDescriptor()"), useAsContext = true)
field<DefaultSymbolUsageValidator>()
publicField<LazyTopDownAnalyzerForTopLevel>()
}
@@ -211,6 +214,7 @@ private fun generatorForMacro() =
init = GivenExpression("org.jetbrains.kotlin.context.ContextPackage.GlobalContext()"))
field<AdditionalCheckerProvider.DefaultProvider>()
field<DefaultSymbolUsageValidator>()
}
private fun generatorForTests() =
@@ -228,6 +232,7 @@ private fun generatorForTests() =
useAsContext = true)
field<KotlinJvmCheckerProvider>()
field<DefaultSymbolUsageValidator>()
}
private fun generatorForBodyResolve() =
@@ -240,6 +245,7 @@ private fun generatorForBodyResolve() =
parameter<StatementFilter>()
publicField<BodyResolver>()
field<DefaultSymbolUsageValidator>()
}
private fun generatorForLazyResolve() =
@@ -256,6 +262,7 @@ private fun generatorForLazyResolve() =
field<ScopeProvider>()
field<LazyResolveToken>()
field<DefaultSymbolUsageValidator>()
}
private fun DependencyInjectorGenerator.commonForResolveSessionBased() {
@@ -267,6 +274,7 @@ private fun DependencyInjectorGenerator.commonForResolveSessionBased() {
publicField<ResolveSession>()
field<ScopeProvider>()
field<DefaultSymbolUsageValidator>()
}
private fun DependencyInjectorGenerator.commonForJavaTopDownAnalyzer() {