Package net.bytebuddy
Class ByteBuddy.EnumerationImplementation
java.lang.Object
net.bytebuddy.ByteBuddy.EnumerationImplementation
- All Implemented Interfaces:
InstrumentedType.Prepareable
,Implementation
- Enclosing class:
ByteBuddy
@Enhance
protected static class ByteBuddy.EnumerationImplementation
extends Object
implements Implementation
An implementation fo the
values
method of an enumeration type.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class
A byte code appender for the type initializer of any enumeration type.protected static class
A byte code appender for thevalues
method of any enumeration type.Nested classes/interfaces inherited from interface net.bytebuddy.implementation.Implementation
Implementation.Composable, Implementation.Compound, Implementation.Context, Implementation.Simple, Implementation.SpecialMethodInvocation, Implementation.Target
Nested classes/interfaces inherited from interface net.bytebuddy.dynamic.scaffold.InstrumentedType.Prepareable
InstrumentedType.Prepareable.NoOp
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final String
The name of theObject.clone()
method.private static final int
The field modifiers to use for any field that is added to an enumeration.protected static final String
The name of thevalueOf
method that is defined for any enumeration.private static final String
The name of the field containing an array of all enumeration values.protected static final String
The name of thevalues
method that is defined for any enumeration.The names of the enumerations to define for the enumeration. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
EnumerationImplementation
(List<String> values) Creates a new implementation of an enumeration type. -
Method Summary
Modifier and TypeMethodDescriptionappender
(Implementation.Target implementationTarget) Creates a byte code appender that determines the implementation of the instrumented type's methods.prepare
(InstrumentedType instrumentedType) Prepares a given instrumented type.
-
Field Details
-
CLONE_METHOD_NAME
The name of theObject.clone()
method.- See Also:
-
ENUM_VALUE_OF_METHOD_NAME
The name of thevalueOf
method that is defined for any enumeration.- See Also:
-
ENUM_VALUES_METHOD_NAME
The name of thevalues
method that is defined for any enumeration.- See Also:
-
ENUM_FIELD_MODIFIERS
private static final int ENUM_FIELD_MODIFIERSThe field modifiers to use for any field that is added to an enumeration.- See Also:
-
ENUM_VALUES
The name of the field containing an array of all enumeration values.- See Also:
-
values
The names of the enumerations to define for the enumeration.
-
-
Constructor Details
-
EnumerationImplementation
Creates a new implementation of an enumeration type.- Parameters:
values
- The values of the enumeration.
-
-
Method Details
-
prepare
Prepares a given instrumented type.- Specified by:
prepare
in interfaceInstrumentedType.Prepareable
- Parameters:
instrumentedType
- The instrumented type in its current form.- Returns:
- The prepared instrumented type.
-
appender
Creates a byte code appender that determines the implementation of the instrumented type's methods.- Specified by:
appender
in interfaceImplementation
- Parameters:
implementationTarget
- The target of the current implementation.- Returns:
- A byte code appender for implementing methods delegated to this implementation. This byte code appender
is also responsible for handling methods that were added by this implementation on the call to
InstrumentedType.Prepareable.prepare(InstrumentedType)
.
-