[scripting] Move earlierScripts to the frontend descriptor

^KT-20488 fixed
This commit is contained in:
Ilya Muradyan
2021-11-13 00:28:06 +03:00
parent 4149b91c0d
commit 6917ff7d2a
15 changed files with 94 additions and 65 deletions
@@ -100,12 +100,20 @@ open class ReplCodeAnalyzerBase(
fun reset(): List<SourceCodeByReplLine> = replState.reset()
fun analyzeReplLine(psiFile: KtFile, codeLine: ReplCodeLine): ReplLineAnalysisResult {
protected fun prepareForAnalyze(
psiFile: KtFile,
priority: Int
) {
topDownAnalysisContext.scripts.clear()
trace.clearDiagnostics()
psiFile.script!!.putUserData(ScriptPriorities.PRIORITY_KEY, codeLine.no)
val script = psiFile.script!!
script.putUserData(ScriptPriorities.PRIORITY_KEY, priority)
}
fun analyzeReplLine(psiFile: KtFile, codeLine: ReplCodeLine): ReplLineAnalysisResult {
prepareForAnalyze(psiFile, codeLine.no)
return doAnalyze(psiFile, emptyList(), codeLine.toSourceCode())
}
@@ -115,11 +123,7 @@ open class ReplCodeAnalyzerBase(
codeLine: SourceCode,
priority: Int
): ReplLineAnalysisResult {
topDownAnalysisContext.scripts.clear()
trace.clearDiagnostics()
psiFile.script!!.putUserData(ScriptPriorities.PRIORITY_KEY, priority)
prepareForAnalyze(psiFile, priority)
return doAnalyze(psiFile, importedScripts, codeLine.addNo(priority))
}