类 KotlinContextReceiverUsageMarker
- java.lang.Object
-
- proguard.optimize.kotlin.KotlinContextReceiverUsageMarker
-
- 所有已实现的接口:
proguard.classfile.kotlin.visitor.KotlinConstructorVisitor,proguard.classfile.kotlin.visitor.KotlinFunctionVisitor,proguard.classfile.kotlin.visitor.KotlinMetadataVisitor,proguard.classfile.kotlin.visitor.KotlinPropertyVisitor
public class KotlinContextReceiverUsageMarker extends java.lang.Object implements proguard.classfile.kotlin.visitor.KotlinMetadataVisitor, proguard.classfile.kotlin.visitor.KotlinFunctionVisitor, proguard.classfile.kotlin.visitor.KotlinConstructorVisitor, proguard.classfile.kotlin.visitor.KotlinPropertyVisitorThis Kotlin metadata visitor marks the parameters of methods used, using theParameterUsageMarker, if those parameters correspond to Kotlin context receivers.This is done to ensure that the list of context receivers does not get out of sync, as otherwise unused context receiver parameters may be removed.
On the Java method level, each context receiver is passed as a leading parameter to a function's JVM method, a property getter/setter method, or a constructor.
context(Foo, Bar) fun foo(string:String) { } // -> public static void foo(LFoo;LBar;Ljava/lang/String;)VTODO(T18173): Implement proper shrinking of context receivers when the underlying parameter is not used i.e. consistently remove context receivers when the underlying parameter is removed in e.g.
MethodDescriptorShrinker
-
-
构造器概要
构造器 构造器 说明 KotlinContextReceiverUsageMarker()
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 voidvisitAnyFunction(proguard.classfile.Clazz clazz, proguard.classfile.kotlin.KotlinMetadata kotlinMetadata, proguard.classfile.kotlin.KotlinFunctionMetadata kotlinFunctionMetadata)voidvisitAnyKotlinMetadata(proguard.classfile.Clazz clazz, proguard.classfile.kotlin.KotlinMetadata kotlinMetadata)voidvisitAnyProperty(proguard.classfile.Clazz clazz, proguard.classfile.kotlin.KotlinDeclarationContainerMetadata kotlinDeclarationContainerMetadata, proguard.classfile.kotlin.KotlinPropertyMetadata kotlinPropertyMetadata)voidvisitConstructor(proguard.classfile.Clazz clazz, proguard.classfile.kotlin.KotlinClassKindMetadata kotlinClassKindMetadata, proguard.classfile.kotlin.KotlinConstructorMetadata kotlinConstructorMetadata)voidvisitKotlinClassMetadata(proguard.classfile.Clazz clazz, proguard.classfile.kotlin.KotlinClassKindMetadata kotlinClassKindMetadata)-
从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
从接口继承的方法 proguard.classfile.kotlin.visitor.KotlinFunctionVisitor
visitFunction, visitSyntheticFunction
-
-
-
-
方法详细资料
-
visitAnyKotlinMetadata
public void visitAnyKotlinMetadata(proguard.classfile.Clazz clazz, proguard.classfile.kotlin.KotlinMetadata kotlinMetadata)- 指定者:
visitAnyKotlinMetadata在接口中proguard.classfile.kotlin.visitor.KotlinMetadataVisitor
-
visitKotlinClassMetadata
public void visitKotlinClassMetadata(proguard.classfile.Clazz clazz, proguard.classfile.kotlin.KotlinClassKindMetadata kotlinClassKindMetadata)- 指定者:
visitKotlinClassMetadata在接口中proguard.classfile.kotlin.visitor.KotlinMetadataVisitor
-
visitAnyFunction
public void visitAnyFunction(proguard.classfile.Clazz clazz, proguard.classfile.kotlin.KotlinMetadata kotlinMetadata, proguard.classfile.kotlin.KotlinFunctionMetadata kotlinFunctionMetadata)- 指定者:
visitAnyFunction在接口中proguard.classfile.kotlin.visitor.KotlinFunctionVisitor
-
visitConstructor
public void visitConstructor(proguard.classfile.Clazz clazz, proguard.classfile.kotlin.KotlinClassKindMetadata kotlinClassKindMetadata, proguard.classfile.kotlin.KotlinConstructorMetadata kotlinConstructorMetadata)- 指定者:
visitConstructor在接口中proguard.classfile.kotlin.visitor.KotlinConstructorVisitor
-
visitAnyProperty
public void visitAnyProperty(proguard.classfile.Clazz clazz, proguard.classfile.kotlin.KotlinDeclarationContainerMetadata kotlinDeclarationContainerMetadata, proguard.classfile.kotlin.KotlinPropertyMetadata kotlinPropertyMetadata)- 指定者:
visitAnyProperty在接口中proguard.classfile.kotlin.visitor.KotlinPropertyVisitor
-
-