org.jetbrains.kotlin.config.JVMConfigurationKeys Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of kotlin-compiler-embeddable Show documentation
Show all versions of kotlin-compiler-embeddable Show documentation
the Kotlin compiler embeddable
/*
* Copyright 2010-2017 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.kotlin.config;
import org.jetbrains.kotlin.load.kotlin.incremental.components.IncrementalCompilationComponents;
import org.jetbrains.kotlin.modules.Module;
import java.io.File;
import java.util.List;
public class JVMConfigurationKeys {
private JVMConfigurationKeys() {
}
public static final CompilerConfigurationKey OUTPUT_DIRECTORY =
CompilerConfigurationKey.create("output directory");
public static final CompilerConfigurationKey OUTPUT_JAR =
CompilerConfigurationKey.create("output .jar");
public static final CompilerConfigurationKey INCLUDE_RUNTIME =
CompilerConfigurationKey.create("include runtime to the resulting .jar");
public static final CompilerConfigurationKey JDK_HOME =
CompilerConfigurationKey.create("jdk home");
public static final CompilerConfigurationKey NO_JDK =
CompilerConfigurationKey.create("no jdk");
public static final CompilerConfigurationKey DISABLE_STANDARD_SCRIPT_DEFINITION =
CompilerConfigurationKey.create("Disable standard kotlin script support");
public static final CompilerConfigurationKey RETAIN_OUTPUT_IN_MEMORY =
CompilerConfigurationKey.create("retain compiled classes in memory for further use, e.g. when running scripts");
public static final CompilerConfigurationKey DISABLE_CALL_ASSERTIONS =
CompilerConfigurationKey.create("disable not-null call assertions");
public static final CompilerConfigurationKey DISABLE_RECEIVER_ASSERTIONS =
CompilerConfigurationKey.create("disable not-null call receiver assertions");
public static final CompilerConfigurationKey DISABLE_PARAM_ASSERTIONS =
CompilerConfigurationKey.create("disable not-null parameter assertions");
public static final CompilerConfigurationKey ASSERTIONS_MODE =
CompilerConfigurationKey.create("assertions mode");
public static final CompilerConfigurationKey DISABLE_OPTIMIZATION =
CompilerConfigurationKey.create("disable optimization");
public static final CompilerConfigurationKey USE_TYPE_TABLE =
CompilerConfigurationKey.create("use type table in serializer");
public static final CompilerConfigurationKey JVM_TARGET =
CompilerConfigurationKey.create("JVM bytecode target version");
public static final CompilerConfigurationKey PARAMETERS_METADATA =
CompilerConfigurationKey.create("Parameters metadata for java 1.8 reflection");
public static final CompilerConfigurationKey INCREMENTAL_COMPILATION_COMPONENTS =
CompilerConfigurationKey.create("incremental cache provider");
public static final CompilerConfigurationKey MODULE_XML_FILE =
CompilerConfigurationKey.create("path to module.xml");
public static final CompilerConfigurationKey> MODULES =
CompilerConfigurationKey.create("module data");
public static final CompilerConfigurationKey> FRIEND_PATHS =
CompilerConfigurationKey.create("friend module paths");
public static final CompilerConfigurationKey IR =
CompilerConfigurationKey.create("IR");
public static final CompilerConfigurationKey USE_PSI_CLASS_FILES_READING =
CompilerConfigurationKey.create("use a slower (PSI-based) class files reading implementation");
public static final CompilerConfigurationKey USE_FAST_JAR_FILE_SYSTEM =
CompilerConfigurationKey.create("use a faster JAR filesystem implementation");
public static final CompilerConfigurationKey USE_JAVAC =
CompilerConfigurationKey.create("use javac [experimental]");
public static final CompilerConfigurationKey COMPILE_JAVA =
CompilerConfigurationKey.create("compile java files [experimental]");
public static final CompilerConfigurationKey> ADDITIONAL_JAVA_MODULES =
CompilerConfigurationKey.create("additional Java modules");
public static final CompilerConfigurationKey EMIT_JVM_TYPE_ANNOTATIONS =
CompilerConfigurationKey.create("Emit JVM type annotations in bytecode");
public static final CompilerConfigurationKey STRING_CONCAT =
CompilerConfigurationKey.create("Specifies string concatenation scheme");
public static final CompilerConfigurationKey JDK_RELEASE =
CompilerConfigurationKey.create("Specifies JDK API version");
public static final CompilerConfigurationKey SAM_CONVERSIONS =
CompilerConfigurationKey.create("SAM conversions code generation scheme");
public static final CompilerConfigurationKey LAMBDAS =
CompilerConfigurationKey.create("Lambdas code generation scheme");
public static final CompilerConfigurationKey> KLIB_PATHS =
CompilerConfigurationKey.create("Paths to .klib libraries");
public static final CompilerConfigurationKey ABI_STABILITY =
CompilerConfigurationKey.create("ABI stability of class files produced by JVM IR and/or FIR");
public static final CompilerConfigurationKey DO_NOT_CLEAR_BINDING_CONTEXT =
CompilerConfigurationKey.create("When using the IR backend, do not clear BindingContext between psi2ir and lowerings");
public static final CompilerConfigurationKey NO_OPTIMIZED_CALLABLE_REFERENCES =
CompilerConfigurationKey.create("Do not use optimized callable reference superclasses available from 1.4");
public static final CompilerConfigurationKey NO_KOTLIN_NOTHING_VALUE_EXCEPTION =
CompilerConfigurationKey.create("Do not use KotlinNothingValueException available since 1.4");
public static final CompilerConfigurationKey NO_RESET_JAR_TIMESTAMPS =
CompilerConfigurationKey.create("Do not reset timestamps in jar entries");
public static final CompilerConfigurationKey NO_UNIFIED_NULL_CHECKS =
CompilerConfigurationKey.create("Use pre-1.4 exception types in null checks instead of java.lang.NPE");
public static final CompilerConfigurationKey NO_SOURCE_DEBUG_EXTENSION =
CompilerConfigurationKey.create("Do not generate @kotlin.jvm.internal.SourceDebugExtension annotation on a class with the copy of SMAP");
public static final CompilerConfigurationKey USE_OLD_INLINE_CLASSES_MANGLING_SCHEME =
CompilerConfigurationKey.create("Use old, 1.4 version of inline classes mangling scheme");
public static final CompilerConfigurationKey ENABLE_JVM_PREVIEW =
CompilerConfigurationKey.create("Enable Java language preview features");
public static final CompilerConfigurationKey NO_REFLECT =
CompilerConfigurationKey.create("Don't automatically include kotlin-reflect.jar into the output if the output is a jar");
public static final CompilerConfigurationKey SERIALIZE_IR =
CompilerConfigurationKey.create("What functions to serialize as IR to class metadata");
public static final CompilerConfigurationKey VALIDATE_IR =
CompilerConfigurationKey.create("Validate IR");
public static final CompilerConfigurationKey VALIDATE_BYTECODE =
CompilerConfigurationKey.create("Validate generated JVM bytecode");
public static final CompilerConfigurationKey LINK_VIA_SIGNATURES =
CompilerConfigurationKey.create("Link JVM IR symbols via signatures, instead of by descriptors on the K1 frontend");
public static final CompilerConfigurationKey ENABLE_DEBUG_MODE =
CompilerConfigurationKey.create("Enable debug mode");
public static final CompilerConfigurationKey NO_NEW_JAVA_ANNOTATION_TARGETS =
CompilerConfigurationKey.create("Do not generate Java 1.8+ targets for Kotlin annotation classes");
public static final CompilerConfigurationKey OLD_INNER_CLASSES_LOGIC =
CompilerConfigurationKey.create("Use old logic for generation of InnerClasses attributes");
public static final CompilerConfigurationKey ENABLE_IR_INLINER =
CompilerConfigurationKey.create("Enable inlining on IR, instead of inlining on bytecode");
public static final CompilerConfigurationKey USE_INLINE_SCOPES_NUMBERS =
CompilerConfigurationKey.create("Use inline scopes numbers for inline marker variables");
}