Class KotlinValueParameterFlags

  • All Implemented Interfaces:
    KotlinFlags

    public class KotlinValueParameterFlags
    extends java.lang.Object
    implements KotlinFlags
    Flags for Kotlin value parameters.

    No valid visibility or modality flags.

    • Field Summary

      Fields 
      Modifier and Type Field Description
      boolean hasAnnotations
      Deprecated.
      boolean hasAnnotationsInBytecode
      Indicates that the corresponding value parameter has at least one annotation in the JVM bytecode.
      boolean hasDefaultValue
      Signifies that the corresponding value parameter declares a default value.
      boolean isCrossInline
      Signifies that the corresponding value parameter is `crossinline`.
      boolean isNoInline
      Signifies that the corresponding value parameter is `noinline`.
    • Method Summary

      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • hasDefaultValue

        public boolean hasDefaultValue
        Signifies that the corresponding value parameter declares a default value. Note that the default value itself can be a complex expression and is not available via metadata. Also note that in case of an override of a parameter with default value, the parameter in the derived method does _not_ declare the default value ([DECLARES_DEFAULT_VALUE] == false), but the parameter is still optional at the call site because the default value from the base method is used.
      • isCrossInline

        public boolean isCrossInline
        Signifies that the corresponding value parameter is `crossinline`.
      • isNoInline

        public boolean isNoInline
        Signifies that the corresponding value parameter is `noinline`.
      • hasAnnotationsInBytecode

        public boolean hasAnnotationsInBytecode
        Indicates that the corresponding value parameter has at least one annotation in the JVM bytecode.

        Before annotations in metadata are enabled by default in the Kotlin compiler (https://youtrack.jetbrains.com/issue/KT-75736), annotations are only generated in the JVM bytecode. The compiler writes and reads this flag to metadata as an optimization, to avoid parsing class file one additional time when it's not needed.

        Only annotations with [AnnotationRetention.BINARY] and [AnnotationRetention.RUNTIME] are written to the class files.

      • hasAnnotations

        @Deprecated
        public boolean hasAnnotations
        Deprecated.
    • Constructor Detail

      • KotlinValueParameterFlags

        public KotlinValueParameterFlags()