MultifileClassCodegen
- initial implementation - new Kotlin file kinds + stub builder
This commit is contained in:
+3
@@ -69,6 +69,9 @@ public class K2JVMCompilerArguments extends CommonCompilerArguments {
|
||||
@Argument(value = "Xno-optimize", description = "Disable optimizations")
|
||||
public boolean noOptimize;
|
||||
|
||||
@Argument(value = "Xmultifile-package-facades", description = "Compile package facade classes as multifile classes")
|
||||
public boolean packageFacadesAsMultifileClasses;
|
||||
|
||||
@Argument(value = "Xreport-perf", description = "Report detailed performance statistics")
|
||||
public boolean reportPerf;
|
||||
|
||||
|
||||
@@ -272,6 +272,7 @@ public open class K2JVMCompiler : CLICompiler<K2JVMCompilerArguments>() {
|
||||
configuration.put(JVMConfigurationKeys.DISABLE_PARAM_ASSERTIONS, arguments.noParamAssertions)
|
||||
configuration.put(JVMConfigurationKeys.DISABLE_INLINE, arguments.noInline)
|
||||
configuration.put(JVMConfigurationKeys.DISABLE_OPTIMIZATION, arguments.noOptimize)
|
||||
configuration.put(JVMConfigurationKeys.PACKAGE_FACADES_AS_MULTIFILE_CLASSES, arguments.packageFacadesAsMultifileClasses);
|
||||
}
|
||||
|
||||
private fun getClasspath(paths: KotlinPaths, arguments: K2JVMCompilerArguments): List<File> {
|
||||
|
||||
+1
@@ -392,6 +392,7 @@ public class KotlinToJVMBytecodeCompiler {
|
||||
GenerationState.GenerateClassFilter.GENERATE_ALL,
|
||||
configuration.get(JVMConfigurationKeys.DISABLE_INLINE, false),
|
||||
configuration.get(JVMConfigurationKeys.DISABLE_OPTIMIZATION, false),
|
||||
configuration.get(JVMConfigurationKeys.PACKAGE_FACADES_AS_MULTIFILE_CLASSES, false),
|
||||
diagnosticHolder,
|
||||
packagesWithObsoleteParts,
|
||||
targetId,
|
||||
|
||||
@@ -42,6 +42,8 @@ public class JVMConfigurationKeys {
|
||||
CompilerConfigurationKey.create("disable inline");
|
||||
public static final CompilerConfigurationKey<Boolean> DISABLE_OPTIMIZATION =
|
||||
CompilerConfigurationKey.create("disable optimization");
|
||||
public static final CompilerConfigurationKey<Boolean> PACKAGE_FACADES_AS_MULTIFILE_CLASSES =
|
||||
CompilerConfigurationKey.create("compile package facades as multifile classes");
|
||||
|
||||
public static final CompilerConfigurationKey<IncrementalCompilationComponents> INCREMENTAL_COMPILATION_COMPONENTS =
|
||||
CompilerConfigurationKey.create("incremental cache provider");
|
||||
|
||||
Reference in New Issue
Block a user