Package | Description |
---|---|
net.bytebuddy.asm |
The ASM package contains classes that are meant for direct interaction with the ASM API.
|
net.bytebuddy.description.method |
Contains descriptions of Java methods and constructors as well as their parameters.
|
net.bytebuddy.description.type |
Contains descriptions of Java types and packages.
|
net.bytebuddy.dynamic |
This package contains classes and interfaces that are connected to writing the byte stream that represents a Java
type that is dynamically created and for loading this type into a running JVM process.
|
net.bytebuddy.implementation |
The implementation package contains any logic for intercepting method calls.
|
net.bytebuddy.implementation.bind.annotation |
This package contains annotations, types and classes that are responsible for binding a method to calling another
method by interpreting annotations that indicate how a method should be bound to another method.
|
net.bytebuddy.implementation.bytecode.member |
StackManipulation s of this package are responsible for
accessing type or method members, i.e. reading and writing of fields, invoking of methods, access of local variables
within a method invocation or returning values from method invocations. |
net.bytebuddy.matcher |
Contains an API for matching Java byte code entities.
|
Modifier and Type | Method and Description |
---|---|
<T extends Annotation> |
Advice.WithCustomMapping.bind(Class<? extends T> type,
ParameterDescription parameterDescription)
Binds the supplied annotation to the supplied parameter's argument.
|
Constructor and Description |
---|
ForArgument(ParameterDescription parameterDescription,
boolean readOnly,
Assigner.Typing typing)
Creates a new offset mapping for a parameter.
|
ForParameterValue(ParameterDescription parameterDescription)
Creates a new dynamic binding for a parameter.
|
ReadOnly(ParameterDescription parameterDescription,
StackManipulation readAssignment)
Creates a read-only mapping for a local variable.
|
ReadWrite(ParameterDescription parameterDescription,
StackManipulation readAssignment,
StackManipulation writeAssignment)
Creates a new target mapping for a writable local variable.
|
Modifier and Type | Interface and Description |
---|---|
interface |
ParameterList<T extends ParameterDescription>
Represents a list of parameters of a method or a constructor.
|
static class |
ParameterList.AbstractBase<S extends ParameterDescription>
An base implementation for a
ParameterList . |
static class |
ParameterList.Empty<S extends ParameterDescription>
An empty list of parameters.
|
static class |
ParameterList.Explicit<S extends ParameterDescription>
A list of explicitly provided parameter descriptions.
|
Modifier and Type | Interface and Description |
---|---|
static interface |
ParameterDescription.InDefinedShape
Represents a parameter in its defined shape, i.e. in the form it is defined by a class without its type variables being resolved.
|
static interface |
ParameterDescription.InGenericShape
Represents a parameter description in its generic shape, i.e. in the shape it is defined by a generic or raw type.
|
Modifier and Type | Class and Description |
---|---|
static class |
ParameterDescription.AbstractBase
A base implementation of a method parameter description.
|
static class |
ParameterDescription.ForLoadedParameter<T extends AccessibleObject>
Description of a loaded parameter with support for the information exposed by
java.lang.reflect.Parameter . |
protected static class |
ParameterDescription.ForLoadedParameter.OfConstructor
A description of a loaded
Constructor parameter for a modern VM. |
protected static class |
ParameterDescription.ForLoadedParameter.OfLegacyVmConstructor
Description of a loaded constructor's parameter on a virtual machine where
java.lang.reflect.Parameter
is not available. |
protected static class |
ParameterDescription.ForLoadedParameter.OfLegacyVmMethod
Description of a loaded method's parameter on a virtual machine where
java.lang.reflect.Parameter
is not available. |
protected static class |
ParameterDescription.ForLoadedParameter.OfMethod
A description of a loaded
Method parameter for a modern VM. |
static class |
ParameterDescription.InDefinedShape.AbstractBase
An abstract base implementation of a parameter description in its defined shape.
|
static class |
ParameterDescription.Latent
A latent description of a parameter that is not attached to a method or constructor.
|
static class |
ParameterDescription.TypeSubstituting
A parameter description that represents a given parameter but with a substituted parameter type.
|
Constructor and Description |
---|
Explicit(S... parameterDescription)
Creates a new list of explicit parameter descriptions.
|
TypeSubstituting(MethodDescription.InGenericShape declaringMethod,
ParameterDescription parameterDescription,
TypeDescription.Generic.Visitor<? extends TypeDescription.Generic> visitor)
Creates a new type substituting parameter.
|
Constructor and Description |
---|
TypeSubstituting(MethodDescription.InGenericShape declaringMethod,
List<? extends ParameterDescription> parameterDescriptions,
TypeDescription.Generic.Visitor<? extends TypeDescription.Generic> visitor)
Creates a new type substituting parameter list.
|
Modifier and Type | Method and Description |
---|---|
static TypeList.Generic |
TypeList.Generic.ForDetachedTypes.attach(ParameterDescription parameterDescription,
List<? extends TypeDescription.Generic> detachedTypes)
Creates a list of types that are attached to the provided parameter.
|
static TypeDescription.Generic.Visitor.Substitutor.ForAttachment |
TypeDescription.Generic.Visitor.Substitutor.ForAttachment.of(ParameterDescription parameterDescription)
Attaches all types to the given parameter description.
|
Modifier and Type | Class and Description |
---|---|
protected class |
Transformer.ForMethod.TransformedMethod.TransformedParameter
A transformed method's parameter.
|
Modifier and Type | Method and Description |
---|---|
ParameterDescription |
Transformer.ForMethod.TransformedMethod.TransformedParameterList.get(int index) |
Modifier and Type | Method and Description |
---|---|
StackManipulation |
MethodCall.ArgumentLoader.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing)
Loads the argument that is represented by this instance onto the operand stack.
|
StackManipulation |
MethodCall.ArgumentLoader.ForNullConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForThisReference.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForInstrumentedType.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForMethodParameter.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForInstance.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForField.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForMethodParameterArray.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForBooleanConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForByteConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForShortConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForCharacterConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForIntegerConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForLongConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForFloatConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForDoubleConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForTextConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForClassConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForEnumerationValue.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
StackManipulation |
MethodCall.ArgumentLoader.ForJavaConstant.resolve(ParameterDescription target,
Assigner assigner,
Assigner.Typing typing) |
protected StackManipulation |
FieldAccessor.setter(FieldDescription fieldDescription,
ParameterDescription parameterDescription)
Creates a setter instruction.
|
Constructor and Description |
---|
ForMethodParameterArray(ParameterDescription parameterDescription,
int index)
Creates an argument loader for a parameter of the instrumented method where an array element is assigned to the invoked method.
|
Constructor and Description |
---|
Bound(ParameterDescription target,
TargetMethodAnnotationDrivenBinder.ParameterBinder<T> parameterBinder,
AnnotationDescription.Loadable<T> annotation,
Assigner.Typing typing)
Creates a new bound handler.
|
Unbound(ParameterDescription target,
Assigner.Typing typing)
Creates a new unbound handler.
|
Modifier and Type | Method and Description |
---|---|
static StackManipulation |
MethodVariableAccess.increment(ParameterDescription parameterDescription,
int value)
Increments the value of the supplied parameter.
|
static StackManipulation |
MethodVariableAccess.load(ParameterDescription parameterDescription)
Loads a parameter's value onto the operand stack.
|
static StackManipulation |
MethodVariableAccess.store(ParameterDescription parameterDescription)
Stores the top operand stack value at the supplied parameter.
|
Modifier and Type | Class and Description |
---|---|
class |
MethodParameterTypeMatcher<T extends ParameterDescription>
An element matcher that matches a method's parameter's type.
|
Modifier and Type | Method and Description |
---|---|
static <T extends ParameterDescription> |
ElementMatchers.definedParameter(ElementMatcher<? super ParameterDescription.InDefinedShape> matcher)
Matches a parameter in its defined shape.
|
static <T extends ParameterDescription> |
ElementMatchers.hasGenericType(ElementMatcher<? super TypeDescription.Generic> matcher)
Matches a method parameter by its generic type.
|
static <T extends ParameterDescription> |
ElementMatchers.hasType(ElementMatcher<? super TypeDescription> matcher)
Matches a parameter's type by the given matcher.
|
static <T extends ParameterDescription> |
ElementMatchers.isMandated()
Matches a parameter description for a
mandated parameter. |
Modifier and Type | Method and Description |
---|---|
static <T extends MethodDescription> |
ElementMatchers.hasParameters(ElementMatcher<? super Iterable<? extends ParameterDescription>> matcher)
Matches a
MethodDescription by validating that its parameters
fulfill a given constraint. |
Constructor and Description |
---|
MethodParametersMatcher(ElementMatcher<? super ParameterList<? extends ParameterDescription>> matcher)
Creates a new matcher for a method's parameters.
|
Copyright © 2014–2017. All rights reserved.