Class TypeAttributeAppender.ForInstrumentedType.Differentiating
- java.lang.Object
-
- net.bytebuddy.implementation.attribute.TypeAttributeAppender.ForInstrumentedType.Differentiating
-
- All Implemented Interfaces:
TypeAttributeAppender
- Enclosing class:
- TypeAttributeAppender.ForInstrumentedType
@Enhance public static class TypeAttributeAppender.ForInstrumentedType.Differentiating extends java.lang.Object implements TypeAttributeAppender
A type attribute appender that writes all annotations of the instrumented but excludes annotations up to a given index.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface net.bytebuddy.implementation.attribute.TypeAttributeAppender
TypeAttributeAppender.Compound, TypeAttributeAppender.Explicit, TypeAttributeAppender.ForInstrumentedType, TypeAttributeAppender.NoOp
-
-
Field Summary
Fields Modifier and Type Field Description private int
annotationIndex
The index of the first annotations that should be directly written onto the type.private int
interfaceTypeIndex
The index of the first interface type for which type annotations should be directly written onto the type.private int
typeVariableIndex
The index of the first type variable for which type annotations should be directly written onto the type.
-
Constructor Summary
Constructors Modifier Constructor Description protected
Differentiating(int annotationIndex, int typeVariableIndex, int interfaceTypeIndex)
Creates a new differentiating type attribute appender.Differentiating(TypeDescription typeDescription)
Creates a new differentiating type attribute appender.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
apply(org.objectweb.asm.ClassVisitor classVisitor, TypeDescription instrumentedType, AnnotationValueFilter annotationValueFilter)
Applies this type attribute appender.
-
-
-
Field Detail
-
annotationIndex
private final int annotationIndex
The index of the first annotations that should be directly written onto the type.
-
typeVariableIndex
private final int typeVariableIndex
The index of the first type variable for which type annotations should be directly written onto the type.
-
interfaceTypeIndex
private final int interfaceTypeIndex
The index of the first interface type for which type annotations should be directly written onto the type.
-
-
Constructor Detail
-
Differentiating
public Differentiating(TypeDescription typeDescription)
Creates a new differentiating type attribute appender.- Parameters:
typeDescription
- The type for which to resolve all exclusion indices.
-
Differentiating
protected Differentiating(int annotationIndex, int typeVariableIndex, int interfaceTypeIndex)
Creates a new differentiating type attribute appender.- Parameters:
annotationIndex
- The index of the first annotations that should be directly written onto the type.typeVariableIndex
- The index of the first interface type for which type annotations should be directly written onto the type.interfaceTypeIndex
- The index of the first interface type for which type annotations should be directly written onto the type.
-
-
Method Detail
-
apply
public void apply(org.objectweb.asm.ClassVisitor classVisitor, TypeDescription instrumentedType, AnnotationValueFilter annotationValueFilter)
Applies this type attribute appender.- Specified by:
apply
in interfaceTypeAttributeAppender
- Parameters:
classVisitor
- The class visitor to which the annotations of this visitor should be written to.instrumentedType
- A description of the instrumented type that is target of the ongoing instrumentation.annotationValueFilter
- The annotation value filter to apply when writing annotations.
-
-