Package | Description |
---|---|
net.bytebuddy.description |
Classes of this package allow the representation of Java classes, their member and their meta data.
|
net.bytebuddy.description.field |
Contains descriptions of Java fields.
|
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.scaffold |
This package contains helper types and implementations that are responsible for the actual writing of a byte array
representing a Java class.
|
net.bytebuddy.dynamic.scaffold.inline |
All classes and types in this package are related to creating a
DynamicType by
enhancing a given type. |
net.bytebuddy.dynamic.scaffold.subclass |
All classes and types in this package are related to creating a
DynamicType by
creating a subclass of a given type. |
net.bytebuddy.matcher |
Contains an API for matching Java byte code entities.
|
net.bytebuddy.pool |
Classes of this package allow for the creating
TypeDescription s without
loading any classes. |
Modifier and Type | Interface and Description |
---|---|
interface |
ByteCodeElement
Implementations describe an element represented in byte code, i.e.
|
Modifier and Type | Interface and Description |
---|---|
interface |
FieldDescription
Implementations of this interface describe a Java field.
|
Modifier and Type | Class and Description |
---|---|
static class |
FieldDescription.AbstractFieldDescription
An abstract base implementation of a field description.
|
static class |
FieldDescription.ForLoadedField
An implementation of a field description for a loaded field.
|
static class |
FieldDescription.Latent
A latent field description describes a field that is not attached to a declaring
TypeDescription . |
Modifier and Type | Interface and Description |
---|---|
interface |
MethodDescription
Implementations of this interface describe a Java method, i.e.
|
interface |
ParameterDescription
Description of the parameter of a Java method or constructor.
|
Modifier and Type | Class and Description |
---|---|
static class |
MethodDescription.AbstractMethodDescription
An abstract base implementation of a method description.
|
static class |
MethodDescription.ForLoadedConstructor
An implementation of a method description for a loaded constructor.
|
static class |
MethodDescription.ForLoadedMethod
An implementation of a method description for a loaded method.
|
static class |
MethodDescription.Latent
A latent method description describes a method that is not attached to a declaring
TypeDescription . |
static class |
ParameterDescription.AbstractParameterDescription
A base implementation of a method parameter description.
|
static class |
ParameterDescription.ForLoadedParameter
Description of a loaded parameter, represented by a Java 8
java.lang.reflect.Parameter . |
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. |
static class |
ParameterDescription.Latent
A latent description of a parameter that is not attached to a method or constructor.
|
Modifier and Type | Interface and Description |
---|---|
interface |
PackageDescription
A package description represents a Java package.
|
interface |
TypeDescription
Implementations of this interface represent a Java type, i.e.
|
Modifier and Type | Class and Description |
---|---|
static class |
PackageDescription.AbstractPackageDescription
An abstract base implementation of a package description.
|
static class |
PackageDescription.ForLoadedPackage
Represents a loaded
Package wrapped as a
PackageDescription . |
static class |
PackageDescription.Simple
A simple implementation of a package without annotations.
|
static class |
TypeDescription.AbstractTypeDescription
An abstract base implementation of a type description.
|
static class |
TypeDescription.AbstractTypeDescription.OfSimpleType
An adapter implementation of a
TypeDescription that
describes any type that is not an array or a primitive type. |
static class |
TypeDescription.ArrayProjection
A projection for an array type based on an existing
TypeDescription . |
static class |
TypeDescription.ForLoadedType
A type description implementation that represents a loaded type.
|
static class |
TypeDescription.Latent
A latent type description for a type without methods or fields.
|
Modifier and Type | Interface and Description |
---|---|
interface |
InstrumentedType
Implementations of this interface represent an instrumented type that is subject to change.
|
Modifier and Type | Class and Description |
---|---|
static class |
InstrumentedType.AbstractBase
An abstract base implementation of an instrumented type.
|
protected class |
InstrumentedType.AbstractBase.FieldToken
An implementation of a new field for the enclosing instrumented type.
|
protected class |
InstrumentedType.AbstractBase.MethodToken
An implementation of a new method or constructor for the enclosing instrumented type.
|
protected class |
InstrumentedType.AbstractBase.MethodToken.ParameterToken
An implementation of a method parameter for a method of an instrumented type.
|
static class |
MethodLookupEngine.ConflictingInterfaceMethod
This
MethodDescription represents methods that are defined
ambiguously on several interfaces of a common type. |
static class |
MethodLookupEngine.OverriddenClassMethod
This method description represents a method that is defined in a non-interface type and overrides a method
in another class it directly or indirectly extends.
|
Modifier and Type | Class and Description |
---|---|
class |
InlineInstrumentedType
An instrumented type which enhances a given type description by an extending redefinition.
|
Modifier and Type | Class and Description |
---|---|
class |
SubclassInstrumentedType
Represents a type instrumentation that creates a new type based on a given superclass.
|
Modifier and Type | Class and Description |
---|---|
class |
NameMatcher<T extends NamedElement>
A method matcher that matches a byte code element's source code name:
The source code name of types is equal to their binary name where arrays are appended a
[] by
their arity and where inner classes are appended by dots to their outer class's source name.
Constructors and the type initializer methods are represented by the empty string as they do not
represent a source code name.
Fields are named as in the source code.
|
Modifier and Type | Method and Description |
---|---|
static <T extends NamedElement> |
ElementMatchers.nameContains(String infix)
Matches a
NamedElement for an infix of its name. |
static <T extends NamedElement> |
ElementMatchers.nameContainsIgnoreCase(String infix)
Matches a
NamedElement for an infix of its name. |
static <T extends NamedElement> |
ElementMatchers.named(String name)
Matches a
NamedElement for its exact name. |
static <T extends NamedElement> |
ElementMatchers.namedIgnoreCase(String name)
Matches a
NamedElement for its name. |
static <T extends NamedElement> |
ElementMatchers.nameEndsWith(String suffix)
Matches a
NamedElement for its name's suffix. |
static <T extends NamedElement> |
ElementMatchers.nameEndsWithIgnoreCase(String suffix)
Matches a
NamedElement for its name's suffix. |
static <T extends NamedElement> |
ElementMatchers.nameMatches(String regex)
Matches a
NamedElement name against a regular expression. |
static <T extends NamedElement> |
ElementMatchers.nameStartsWith(String prefix)
Matches a
NamedElement for its name's prefix. |
static <T extends NamedElement> |
ElementMatchers.nameStartsWithIgnoreCase(String prefix)
Matches a
NamedElement for its name's prefix. |
Modifier and Type | Class and Description |
---|---|
static class |
TypePool.LazyTypeDescription
A type description that looks up any referenced
ByteCodeElement or
AnnotationDescription by querying a type pool at lookup time. |
Copyright © 2014–2015. All rights reserved.