From 7101f9a3a42baaa0bd67b137aeeec1bac6e359ce Mon Sep 17 00:00:00 2001 From: Alexey Tsvetkov Date: Tue, 1 Sep 2015 15:10:53 +0300 Subject: [PATCH] Move GenerationState member up to further simplify constructor usages --- .../kotlin/codegen/state/GenerationState.kt | 6 +++--- .../jvm/compiler/KotlinToJVMBytecodeCompiler.java | 2 +- .../kotlin/asJava/KotlinJavaFileStubProvider.java | 5 +---- .../jetbrains/kotlin/codegen/CodegenTestUtil.java | 6 +----- .../kotlin/idea/debugger/JetPositionManager.kt | 14 ++++++++------ .../idea/internal/KotlinBytecodeToolWindow.java | 8 +++++--- 6 files changed, 19 insertions(+), 22 deletions(-) diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/state/GenerationState.kt b/compiler/backend/src/org/jetbrains/kotlin/codegen/state/GenerationState.kt index e8869377f75..200330c0a69 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/state/GenerationState.kt +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/state/GenerationState.kt @@ -47,10 +47,10 @@ public class GenerationState jvmOverloads constructor( public val generateDeclaredClassFilter: GenerationState.GenerateClassFilter = GenerationState.GenerateClassFilter.GENERATE_ALL, disableInline: Boolean = false, disableOptimization: Boolean = false, - public val packagesWithObsoleteParts: Collection = emptySet(), - // for PackageCodegen in incremental compilation mode - public val moduleId: String? = null, public val diagnostics: DiagnosticSink = DiagnosticSink.DO_NOTHING, + // for PackageCodegen in incremental compilation mode + public val packagesWithObsoleteParts: Collection = emptySet(), + public val moduleId: String? = null, // TODO: temporary hack, see JetTypeMapperWithOutDirectory state for details public val outDirectory: File? = null, public val progress: Progress = Progress.DEAF diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.java b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.java index dbe37b962b5..c9020f66a10 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.java +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.java @@ -383,9 +383,9 @@ public class KotlinToJVMBytecodeCompiler { GenerationState.GenerateClassFilter.GENERATE_ALL, configuration.get(JVMConfigurationKeys.DISABLE_INLINE, false), configuration.get(JVMConfigurationKeys.DISABLE_OPTIMIZATION, false), + diagnosticHolder, packagesWithObsoleteParts, moduleId, - diagnosticHolder, outputDirectory ); ProgressIndicatorAndCompilationCanceledStatus.checkCanceled(); diff --git a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KotlinJavaFileStubProvider.java b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KotlinJavaFileStubProvider.java index f42dc2866f6..9665f17e08e 100644 --- a/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KotlinJavaFileStubProvider.java +++ b/compiler/light-classes/src/org/jetbrains/kotlin/asJava/KotlinJavaFileStubProvider.java @@ -338,10 +338,7 @@ public class KotlinJavaFileStubProvideremptySet(), - null, - forExtraDiagnostics, - null + forExtraDiagnostics ); KotlinCodegenFacade.prepareForCompilation(state); diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/CodegenTestUtil.java b/compiler/tests/org/jetbrains/kotlin/codegen/CodegenTestUtil.java index 51d60405677..2726f5aec81 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/CodegenTestUtil.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/CodegenTestUtil.java @@ -27,7 +27,6 @@ import org.jetbrains.kotlin.cli.jvm.config.JVMConfigurationKeys; import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime; import org.jetbrains.kotlin.codegen.state.GenerationState; import org.jetbrains.kotlin.config.CompilerConfiguration; -import org.jetbrains.kotlin.name.FqName; import org.jetbrains.kotlin.resolve.AnalyzingUtils; import org.jetbrains.kotlin.resolve.BindingTraceContext; import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil; @@ -66,10 +65,7 @@ public class CodegenTestUtil { GenerationState.GenerateClassFilter.GENERATE_ALL, configuration.get(JVMConfigurationKeys.DISABLE_INLINE, false), configuration.get(JVMConfigurationKeys.DISABLE_OPTIMIZATION, false), - Collections.emptySet(), - null, - forExtraDiagnostics, - null + forExtraDiagnostics ); KotlinCodegenFacade.compileCorrectFiles(state, CompilationErrorHandler.THROW_EXCEPTION); diff --git a/idea/src/org/jetbrains/kotlin/idea/debugger/JetPositionManager.kt b/idea/src/org/jetbrains/kotlin/idea/debugger/JetPositionManager.kt index b274eecc9e3..b994d644449 100644 --- a/idea/src/org/jetbrains/kotlin/idea/debugger/JetPositionManager.kt +++ b/idea/src/org/jetbrains/kotlin/idea/debugger/JetPositionManager.kt @@ -59,8 +59,7 @@ import org.jetbrains.kotlin.psi.psiUtil.getElementTextWithContext import org.jetbrains.kotlin.resolve.BindingContext import org.jetbrains.kotlin.resolve.inline.InlineUtil import org.jetbrains.kotlin.resolve.jvm.JvmClassName -import java.util.ArrayList -import java.util.WeakHashMap +import java.util.* import com.intellij.debugger.engine.DebuggerUtils as JDebuggerUtils class PositionedElement(val className: String?, val element: PsiElement?) @@ -321,8 +320,12 @@ public class JetPositionManager(private val myDebugProcess: DebugProcess) : Mult val analysisResult = file.analyzeFullyAndGetResult() analysisResult.throwIfError() - val state = GenerationState(project, ClassBuilderFactories.THROW_EXCEPTION, analysisResult.moduleDescriptor, - analysisResult.bindingContext, listOf(file)) + val state = GenerationState( + project, + ClassBuilderFactories.THROW_EXCEPTION, + analysisResult.moduleDescriptor, + analysisResult.bindingContext, + listOf(file)) state.beforeCompile() return state.typeMapper } @@ -437,8 +440,7 @@ public class JetPositionManager(private val myDebugProcess: DebugProcess) : Mult val element = getElementToCreateTypeMapperForLibraryFile(notPositionedElement) val analysisResult = element!!.analyzeAndGetResult() - val state = GenerationState(file.getProject(), ClassBuilderFactories.THROW_EXCEPTION, - analysisResult.moduleDescriptor, analysisResult.bindingContext, listOf(file)) + val state = GenerationState(file.getProject(), ClassBuilderFactories.THROW_EXCEPTION, analysisResult.moduleDescriptor, analysisResult.bindingContext, listOf(file)) state.beforeCompile() return state.typeMapper } diff --git a/idea/src/org/jetbrains/kotlin/idea/internal/KotlinBytecodeToolWindow.java b/idea/src/org/jetbrains/kotlin/idea/internal/KotlinBytecodeToolWindow.java index 5a0f16df014..37f89992084 100644 --- a/idea/src/org/jetbrains/kotlin/idea/internal/KotlinBytecodeToolWindow.java +++ b/idea/src/org/jetbrains/kotlin/idea/internal/KotlinBytecodeToolWindow.java @@ -47,7 +47,6 @@ import org.jetbrains.kotlin.idea.util.DebuggerUtils; import org.jetbrains.kotlin.idea.util.InfinitePeriodicalTask; import org.jetbrains.kotlin.idea.util.LongRunningReadTask; import org.jetbrains.kotlin.idea.util.ProjectRootsUtil; -import org.jetbrains.kotlin.name.FqName; import org.jetbrains.kotlin.psi.JetClassOrObject; import org.jetbrains.kotlin.psi.JetFile; import org.jetbrains.kotlin.psi.JetScript; @@ -234,9 +233,12 @@ public class KotlinBytecodeToolWindow extends JPanel implements Disposable { state = new GenerationState(jetFile.getProject(), ClassBuilderFactories.TEST, resolutionFacade.getModuleDescriptor(), bindingContext, - toProcess, !enableAssertions, !enableAssertions, + toProcess, + !enableAssertions, + !enableAssertions, generateClassFilter, - !enableInline, !enableOptimization, Collections.emptySet(), null, + !enableInline, + !enableOptimization, sink); KotlinCodegenFacade.compileCorrectFiles(state, CompilationErrorHandler.THROW_EXCEPTION); }