Class KotlinFunctionFlags

java.lang.Object
proguard.classfile.kotlin.flags.KotlinFunctionFlags
All Implemented Interfaces:
KotlinFlags

public class KotlinFunctionFlags extends Object implements KotlinFlags
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    boolean
    Deprecated.
    boolean
    Indicates that the corresponding function has at least one annotation in the JVM bytecode.
    boolean
    A member kind flag, signifying that the corresponding function is explicitly declared in the containing class.
    boolean
    A member kind flag, signifying that the corresponding function exists in the containing class because it has been produced by interface delegation (delegation "by").
    boolean
    Signifies that the corresponding function is `expect`.
    boolean
    Signifies that the corresponding function is `external`.
    boolean
    A member kind flag, signifying that the corresponding function exists in the containing class because a function with a suitable signature exists in a supertype.
    boolean
    Signifies that the corresponding function is `infix`.
    boolean
    Signifies that the corresponding function is `inline`.
    boolean
    Signifies that the corresponding function is `operator`.
    boolean
    Signifies that the corresponding function is `suspend`.
    boolean
    A member kind flag, signifying that the corresponding function exists in the containing class because it has been synthesized by the compiler and has no declaration in the source code.
    boolean
    Signifies that the corresponding function is `tailrec`.
     
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Methods inherited from class java.lang.Object

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

    • visibility

      public final KotlinVisibilityFlags visibility
    • modality

      public final KotlinModalityFlags modality
    • isDeclaration

      public boolean isDeclaration
      A member kind flag, signifying that the corresponding function is explicitly declared in the containing class.
    • isFakeOverride

      public boolean isFakeOverride
      A member kind flag, signifying that the corresponding function exists in the containing class because a function with a suitable signature exists in a supertype. This flag is not written by the Kotlin compiler and its effects are unspecified.
    • isDelegation

      public boolean isDelegation
      A member kind flag, signifying that the corresponding function exists in the containing class because it has been produced by interface delegation (delegation "by").
    • isSynthesized

      public boolean isSynthesized
      A member kind flag, signifying that the corresponding function exists in the containing class because it has been synthesized by the compiler and has no declaration in the source code.
    • isOperator

      public boolean isOperator
      Signifies that the corresponding function is `operator`.
    • isInfix

      public boolean isInfix
      Signifies that the corresponding function is `infix`.
    • isInline

      public boolean isInline
      Signifies that the corresponding function is `inline`.
    • isTailrec

      public boolean isTailrec
      Signifies that the corresponding function is `tailrec`.
    • isExternal

      public boolean isExternal
      Signifies that the corresponding function is `external`.
    • isSuspend

      public boolean isSuspend
      Signifies that the corresponding function is `suspend`.
    • isExpect

      public boolean isExpect
      Signifies that the corresponding function is `expect`.
    • hasAnnotationsInBytecode

      public boolean hasAnnotationsInBytecode
      Indicates that the corresponding function 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 Details