Package net.bytebuddy.asm
Class ClassVisitorFactory.ConstantTranslator
- java.lang.Object
-
- net.bytebuddy.asm.ClassVisitorFactory.ConstantTranslator
-
- All Implemented Interfaces:
ByteCodeAppender
- Enclosing class:
- ClassVisitorFactory<T>
@Enhance protected static class ClassVisitorFactory.ConstantTranslator extends java.lang.Object implements ByteCodeAppender
A method to translate a constant value from one namespace to another.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface net.bytebuddy.implementation.bytecode.ByteCodeAppender
ByteCodeAppender.Compound, ByteCodeAppender.Simple, ByteCodeAppender.Size
-
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.StringNAMEThe name of the method.private java.lang.Class<?>sourceConstantDynamicTheConstantDynamictype in the original namespace.private java.lang.Class<?>sourceHandleTheHandletype in the original namespace.private java.lang.Class<?>sourceTypeTheTypetype in the original namespace.private java.lang.Class<?>targetConstantDynamicTheConstantDynamictype in the targeted namespace.private java.lang.Class<?>targetHandleTheHandletype in the targeted namespace.private java.lang.Class<?>targetTypeTheTypetype in the targeted namespace.
-
Constructor Summary
Constructors Modifier Constructor Description protectedConstantTranslator(java.lang.Class<?> sourceHandle, java.lang.Class<?> targetHandle, java.lang.Class<?> sourceType, java.lang.Class<?> targetType, java.lang.Class<?> sourceConstantDynamic, java.lang.Class<?> targetConstantDynamic)Creates a new constant translator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ByteCodeAppender.Sizeapply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext, MethodDescription instrumentedMethod)Applies this byte code appender to a type creation process.
-
-
-
Field Detail
-
NAME
protected static final java.lang.String NAME
The name of the method.- See Also:
- Constant Field Values
-
sourceHandle
@MaybeNull @ValueHandling(REVERSE_NULLABILITY) private final java.lang.Class<?> sourceHandle
TheHandletype in the original namespace.
-
targetHandle
@MaybeNull @ValueHandling(REVERSE_NULLABILITY) private final java.lang.Class<?> targetHandle
TheHandletype in the targeted namespace.
-
sourceType
@MaybeNull @ValueHandling(REVERSE_NULLABILITY) private final java.lang.Class<?> sourceType
TheTypetype in the original namespace.
-
targetType
@MaybeNull @ValueHandling(REVERSE_NULLABILITY) private final java.lang.Class<?> targetType
TheTypetype in the targeted namespace.
-
sourceConstantDynamic
@MaybeNull @ValueHandling(REVERSE_NULLABILITY) private final java.lang.Class<?> sourceConstantDynamic
TheConstantDynamictype in the original namespace.
-
targetConstantDynamic
@MaybeNull @ValueHandling(REVERSE_NULLABILITY) private final java.lang.Class<?> targetConstantDynamic
TheConstantDynamictype in the targeted namespace.
-
-
Constructor Detail
-
ConstantTranslator
protected ConstantTranslator(@MaybeNull java.lang.Class<?> sourceHandle, @MaybeNull java.lang.Class<?> targetHandle, @MaybeNull java.lang.Class<?> sourceType, @MaybeNull java.lang.Class<?> targetType, @MaybeNull java.lang.Class<?> sourceConstantDynamic, @MaybeNull java.lang.Class<?> targetConstantDynamic)
Creates a new constant translator.- Parameters:
sourceHandle- TheHandletype in the original namespace.targetHandle- TheHandletype in the targeted namespace.sourceType- TheTypetype in the original namespace.targetType- TheTypetype in the targeted namespace.sourceConstantDynamic- TheConstantDynamictype in the original namespace.targetConstantDynamic- TheConstantDynamictype in the targeted namespace.
-
-
Method Detail
-
apply
public ByteCodeAppender.Size apply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext, MethodDescription instrumentedMethod)
Applies this byte code appender to a type creation process.- Specified by:
applyin interfaceByteCodeAppender- Parameters:
methodVisitor- The method visitor to which the byte code appender writes its code to.implementationContext- The implementation context of the current type creation process.instrumentedMethod- The method that is the target of the instrumentation.- Returns:
- The required size for the applied byte code to run.
-
-