Package proguard.classfile.kotlin.flags
Class KotlinPropertyAccessorMetadata
java.lang.Object
proguard.util.SimpleProcessable
proguard.classfile.kotlin.flags.KotlinPropertyAccessorMetadata
- All Implemented Interfaces:
Serializable,KotlinFlags,KotlinAnnotatable,Processable
public class KotlinPropertyAccessorMetadata
extends SimpleProcessable
implements KotlinFlags, KotlinAnnotatable
Kotlin property accessor metadata (getters/setters for properties).
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionbooleanDeprecated.booleanIndicates that the corresponding interface has at least one annotation in the JVM bytecode.booleanSignifies that the corresponding property is not default, i.e.booleanSignifies that the corresponding property is `external`.booleanSignifies that the corresponding property is `inline`.Fields inherited from class proguard.util.SimpleProcessable
processingFlags, processingInfo -
Constructor Summary
ConstructorsConstructorDescriptionKotlinPropertyAccessorMetadata(KotlinVisibilityFlags visibility, KotlinModalityFlags modality) -
Method Summary
Modifier and TypeMethodDescriptionvoidaccept(Clazz clazz, KotlinMetadata kotlinMetadata, KotlinPropertyMetadata kotlinPropertyMetadata, KotlinPropertyAccessorVisitor kotlinPropertyAccessorVisitor) voidannotationsAccept(Clazz clazz, KotlinAnnotationVisitor kotlinAnnotationVisitor) Methods inherited from class proguard.util.SimpleProcessable
addProcessingFlags, getProcessingFlags, getProcessingInfo, hasProcessingFlags, removeProcessingFlags, setProcessingFlags, setProcessingInfoMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface proguard.util.Processable
accept
-
Field Details
-
visibility
-
modality
-
referencedMethod
-
signature
-
annotations
-
isDefault
public boolean isDefaultSignifies that the corresponding property is not default, i.e. it has a body and/or annotations in the source code. -
isExternal
public boolean isExternalSignifies that the corresponding property is `external`. -
isInline
public boolean isInlineSignifies that the corresponding property is `inline`. -
hasAnnotationsInBytecode
public boolean hasAnnotationsInBytecodeIndicates that the corresponding interface 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.
-
-
Constructor Details
-
KotlinPropertyAccessorMetadata
public KotlinPropertyAccessorMetadata(KotlinVisibilityFlags visibility, KotlinModalityFlags modality)
-
-
Method Details
-
accept
public void accept(Clazz clazz, KotlinMetadata kotlinMetadata, KotlinPropertyMetadata kotlinPropertyMetadata, KotlinPropertyAccessorVisitor kotlinPropertyAccessorVisitor) -
annotationsAccept
- Specified by:
annotationsAcceptin interfaceKotlinAnnotatable
-