类 KotlinMetadataInitializer
java.lang.Object
proguard.classfile.util.kotlin.KotlinMetadataInitializer
- 所有已实现的接口:
AnnotationVisitor,ElementValueVisitor,ConstantVisitor,ClassVisitor
public class KotlinMetadataInitializer
extends Object
implements ClassVisitor, AnnotationVisitor, ElementValueVisitor, ConstantVisitor
Initializes the kotlin metadata for a Kotlin class.
Provides two APIs:
- Visitor: use as a ClassVisitor or AnnotationVisitor to initialize the Kotlin metadata
contain within a Metadata annotation. After initialization, all info from the
annotation is represented in the Clazz's ProgramClass.kotlinMetadata field.
Note: only applicable for ProgramClass.
- `initialize`: provide the Clazz and Metadata field values to the
initialize(Clazz, int, int[], String[], String[], int, String, String) method to initialize Kotlin metadata for the given Clazz.
-
构造器概要
构造器构造器说明KotlinMetadataInitializer(BiConsumer<Clazz, String> errorHandler) KotlinMetadataInitializer(WarningPrinter warningPrinter) -
方法概要
修饰符和类型方法说明voidInitialize Kotlin metadata for a givenClazz.static booleanstatic booleanstatic KotlinMetadataTypemetadataTypeOf(String name) voidvisitAnnotation(Clazz clazz, Annotation annotation) Visits any Annotation instance.voidvisitAnyClass(Clazz clazz) Visits any Clazz instance.voidvisitArrayElementValue(Clazz clazz, Annotation annotation, ArrayElementValue arrayElementValue) voidvisitConstantElementValue(Clazz clazz, Annotation annotation, ConstantElementValue constantElementValue) voidvisitIntegerConstant(Clazz clazz, IntegerConstant integerConstant) voidvisitLibraryClass(LibraryClass libraryClass) voidvisitProgramClass(ProgramClass clazz) voidvisitUtf8Constant(Clazz clazz, Utf8Constant utf8Constant) 从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait从接口继承的方法 proguard.classfile.attribute.annotation.visitor.AnnotationVisitor
visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotation从接口继承的方法 proguard.classfile.constant.visitor.ConstantVisitor
visitAnyConstant, visitAnyMethodrefConstant, visitAnyRefConstant, visitClassConstant, visitDoubleConstant, visitDynamicConstant, visitFieldrefConstant, visitFloatConstant, visitInterfaceMethodrefConstant, visitInvokeDynamicConstant, visitLongConstant, visitMethodHandleConstant, visitMethodrefConstant, visitMethodTypeConstant, visitModuleConstant, visitNameAndTypeConstant, visitPackageConstant, visitPrimitiveArrayConstant, visitStringConstant从接口继承的方法 proguard.classfile.attribute.annotation.visitor.ElementValueVisitor
visitAnnotationElementValue, visitAnyElementValue, visitClassElementValue, visitEnumConstantElementValue
-
构造器详细资料
-
KotlinMetadataInitializer
-
KotlinMetadataInitializer
-
-
方法详细资料
-
visitAnyClass
从接口复制的说明:ClassVisitorVisits any Clazz instance. The more specific default implementations of this interface delegate to this method.- 指定者:
visitAnyClass在接口中ClassVisitor
-
visitLibraryClass
- 指定者:
visitLibraryClass在接口中ClassVisitor
-
visitProgramClass
- 指定者:
visitProgramClass在接口中ClassVisitor
-
visitAnnotation
从接口复制的说明:AnnotationVisitorVisits any Annotation instance. The more specific default implementations of this interface delegate to this method.- 指定者:
visitAnnotation在接口中AnnotationVisitor
-
initialize
public void initialize(Clazz clazz, int k, int[] mv, String[] d1, String[] d2, int xi, String xs, String pn) Initialize Kotlin metadata for a givenClazz.- 参数:
clazz- TheProgramClassorLibraryClass.
-
visitConstantElementValue
public void visitConstantElementValue(Clazz clazz, Annotation annotation, ConstantElementValue constantElementValue) - 指定者:
visitConstantElementValue在接口中ElementValueVisitor
-
visitArrayElementValue
public void visitArrayElementValue(Clazz clazz, Annotation annotation, ArrayElementValue arrayElementValue) - 指定者:
visitArrayElementValue在接口中ElementValueVisitor
-
visitUtf8Constant
- 指定者:
visitUtf8Constant在接口中ConstantVisitor
-
visitIntegerConstant
- 指定者:
visitIntegerConstant在接口中ConstantVisitor
-
isSupportedMetadataVersion
-
isValidKotlinMetadataAnnotationField
-
metadataTypeOf
-