| Package | Description |
|---|---|
| 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.instrumentation.field |
This package contains types and implementations for describing a Java field.
|
| net.bytebuddy.instrumentation.method |
This package contains types and implementations for describing a Java byte code method which can be any byte code
container, i.e.
|
| net.bytebuddy.instrumentation.type |
This package contains types and implementations for describing a Java type, i.e.
|
| net.bytebuddy.matcher |
Contains an API for matching Java byte code entities.
|
| net.bytebuddy.pool |
Classes of this package allow for the creating
TypeDescriptions without
loading any classes. |
| 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 | 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.
|
| 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 |
MethodLookupEngine.ConflictingInterfaceMethod
This
MethodDescription represents methods that are defined
ambiguously on several interfaces of a common type. |
static class |
MethodLookupEngine.OverridenClassMethod
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 | Interface and Description |
|---|---|
interface |
InstrumentedType
Implementations of this interface represent an instrumented type that is subject to change.
|
interface |
TypeDescription
Implementations of this interface represent a Java type, i.e.
|
| 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.
|
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.
|
| Modifier and Type | Class and Description |
|---|---|
class |
DescriptorMatcher<T extends ByteCodeElement>
An element matcher that matches a Java descriptor.
|
class |
NameMatcher<T extends ByteCodeElement>
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.
|
class |
VisibilityMatcher<T extends ByteCodeElement>
An element matcher that validates that a given byte code element is visible to a given type.
|
| Modifier and Type | Method and Description |
|---|---|
static <T extends ByteCodeElement> |
ElementMatchers.hasDescriptor(String descriptor)
Matches a
ByteCodeElement's descriptor against a given value. |
static <T extends ByteCodeElement> |
ElementMatchers.isDeclaredBy(Class<?> type)
Matches a
ByteCodeElement for being declared by a given
Class. |
static <T extends ByteCodeElement> |
ElementMatchers.isDeclaredBy(ElementMatcher<? super TypeDescription> matcher)
Matches a
ByteCodeElement for being declared by a
TypeDescription that is matched by the given matcher. |
static <T extends ByteCodeElement> |
ElementMatchers.isDeclaredBy(TypeDescription type)
Matches a
ByteCodeElement for being declared by a given
TypeDescription. |
static <T extends ByteCodeElement> |
ElementMatchers.isVisibleTo(Class<?> type)
Matches a
ByteCodeElement that is visible to a given Class. |
static <T extends ByteCodeElement> |
ElementMatchers.isVisibleTo(TypeDescription typeDescription)
Matches a
ByteCodeElement that is visible to a given
TypeDescription. |
static <T extends ByteCodeElement> |
ElementMatchers.nameContains(String infix)
Matches a
ByteCodeElement for an infix of its name. |
static <T extends ByteCodeElement> |
ElementMatchers.nameContainsIgnoreCase(String infix)
Matches a
ByteCodeElement for an infix of its name. |
static <T extends ByteCodeElement> |
ElementMatchers.named(String name)
Matches a
ByteCodeElement for its exact name. |
static <T extends ByteCodeElement> |
ElementMatchers.namedIgnoreCase(String name)
Matches a
ByteCodeElement for its name. |
static <T extends ByteCodeElement> |
ElementMatchers.nameEndsWith(String suffix)
Matches a
ByteCodeElement for its name's suffix. |
static <T extends ByteCodeElement> |
ElementMatchers.nameEndsWithIgnoreCase(String suffix)
Matches a
ByteCodeElement for its name's suffix. |
static <T extends ByteCodeElement> |
ElementMatchers.nameMatches(String regex)
Matches a
ByteCodeElement name against a regular expression. |
static <T extends ByteCodeElement> |
ElementMatchers.nameStartsWith(String prefix)
Matches a
ByteCodeElement for its name's prefix. |
static <T extends ByteCodeElement> |
ElementMatchers.nameStartsWithIgnoreCase(String prefix)
Matches a
ByteCodeElement for its name's prefix. |
| Modifier and Type | Class and Description |
|---|---|
static class |
TypePool.LazyTypeDescription
A type description that looks up any referenced
ByteCodeElements or
AnnotationDescriptions by querying a type pool
at lookup time. |
Copyright © 2014. All rights reserved.