protected abstract static class Implementation.Context.Default.DelegationRecord extends TypeWriter.MethodPool.Record.ForDefinedMethod implements ByteCodeAppender
TypeWriter.MethodPool.Record.ForDefinedMethod.OfVisibilityBridge, TypeWriter.MethodPool.Record.ForDefinedMethod.WithAnnotationDefaultValue, TypeWriter.MethodPool.Record.ForDefinedMethod.WithBody, TypeWriter.MethodPool.Record.ForDefinedMethod.WithoutBodyByteCodeAppender.Compound, ByteCodeAppender.Simple, ByteCodeAppender.SizeTypeWriter.MethodPool.Record.AccessBridgeWrapper, TypeWriter.MethodPool.Record.ForDefinedMethod, TypeWriter.MethodPool.Record.ForNonImplementedMethod, TypeWriter.MethodPool.Record.Sort| Modifier and Type | Field and Description |
|---|---|
protected MethodDescription.InDefinedShape |
methodDescription
The delegation method.
|
protected Visibility |
visibility
The record's visibility.
|
| Modifier | Constructor and Description |
|---|---|
protected |
DelegationRecord(MethodDescription.InDefinedShape methodDescription,
Visibility visibility)
Creates a new delegation record.
|
| Modifier and Type | Method and Description |
|---|---|
void |
applyAttributes(MethodVisitor methodVisitor,
AnnotationValueFilter.Factory annotationValueFilterFactory)
Applies the attributes of this entry.
|
void |
applyBody(MethodVisitor methodVisitor,
Implementation.Context implementationContext,
AnnotationValueFilter.Factory annotationValueFilterFactory)
Applies the body of this entry.
|
ByteCodeAppender.Size |
applyCode(MethodVisitor methodVisitor,
Implementation.Context implementationContext)
Applies the code of this entry.
|
void |
applyHead(MethodVisitor methodVisitor)
Applies the head of this entry.
|
MethodDescription.InDefinedShape |
getMethod()
Returns the method that is implemented where the returned method resembles a potential transformation.
|
TypeWriter.MethodPool.Record.Sort |
getSort()
Returns the sort of this method instrumentation.
|
Visibility |
getVisibility()
The visibility to enforce for this method.
|
TypeWriter.MethodPool.Record |
prepend(ByteCodeAppender byteCodeAppender)
Prepends the given method appender to this entry.
|
protected abstract Implementation.Context.Default.DelegationRecord |
with(MethodAccessorFactory.AccessType accessType)
Returns this delegation record with the minimal visibility represented by the supplied access type.
|
applyclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitapplyprotected final MethodDescription.InDefinedShape methodDescription
protected final Visibility visibility
protected DelegationRecord(MethodDescription.InDefinedShape methodDescription, Visibility visibility)
methodDescription - The delegation method.visibility - The method's actual visibility.protected abstract Implementation.Context.Default.DelegationRecord with(MethodAccessorFactory.AccessType accessType)
accessType - The access type to enforce.public MethodDescription.InDefinedShape getMethod()
TypeWriter.MethodPool.RecordTypeWriter.MethodPool.Record.Sort.SKIPPED.getMethod in interface TypeWriter.MethodPool.Recordpublic TypeWriter.MethodPool.Record.Sort getSort()
TypeWriter.MethodPool.RecordgetSort in interface TypeWriter.MethodPool.Recordpublic Visibility getVisibility()
TypeWriter.MethodPool.RecordgetVisibility in interface TypeWriter.MethodPool.Recordpublic void applyHead(MethodVisitor methodVisitor)
TypeWriter.MethodPool.RecordTypeWriter.MethodPool.Record.Sort.SKIPPED.applyHead in interface TypeWriter.MethodPool.RecordmethodVisitor - The method visitor to which this entry should be applied.public void applyBody(MethodVisitor methodVisitor, Implementation.Context implementationContext, AnnotationValueFilter.Factory annotationValueFilterFactory)
TypeWriter.MethodPool.RecordTypeWriter.MethodPool.Record.Sort.IMPLEMENTED.applyBody in interface TypeWriter.MethodPool.RecordmethodVisitor - The method visitor to which this entry should be applied.implementationContext - The implementation context to which this entry should be applied.annotationValueFilterFactory - The annotation value filter factory to apply when writing annotations.public void applyAttributes(MethodVisitor methodVisitor, AnnotationValueFilter.Factory annotationValueFilterFactory)
TypeWriter.MethodPool.RecordTypeWriter.MethodPool.Record.Sort.DEFINED.applyAttributes in interface TypeWriter.MethodPool.RecordmethodVisitor - The method visitor to which this entry should be applied.annotationValueFilterFactory - The annotation value filter factory to apply when writing annotations.public ByteCodeAppender.Size applyCode(MethodVisitor methodVisitor, Implementation.Context implementationContext)
TypeWriter.MethodPool.RecordTypeWriter.MethodPool.Record.Sort.IMPLEMENTED.applyCode in interface TypeWriter.MethodPool.RecordmethodVisitor - The method visitor to which this entry should be applied.implementationContext - The implementation context to which this entry should be applied.public TypeWriter.MethodPool.Record prepend(ByteCodeAppender byteCodeAppender)
TypeWriter.MethodPool.Recordprepend in interface TypeWriter.MethodPool.RecordbyteCodeAppender - The byte code appender to prepend.Copyright © 2014–2017. All rights reserved.