| Package | Description | 
|---|---|
| net.bytebuddy | Byte Buddy is a library for creating Java classes at runtime of a Java program. | 
| net.bytebuddy.agent.builder | An agent builder is used to easily implement load-time class-transformations using a Java agent. | 
| net.bytebuddy.asm | The ASM package contains classes that are meant for direct interaction with the ASM API. | 
| net.bytebuddy.build | A package for types that allow for applying Byte Buddy transformation during a build process. | 
| net.bytebuddy.description.annotation | Contains descriptions of annotations and annotation values. | 
| net.bytebuddy.description.method | Contains descriptions of Java methods and constructors as well as their parameters. | 
| net.bytebuddy.description.modifier | The modifier package contains high-level and type-safe descriptions of Java modifiers. | 
| 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.dynamic.loading | This package contains classes that are responsible for class loading of classes that are represented by
  bytearrays. | 
| 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  DynamicTypeby
 enhancing a given type. | 
| net.bytebuddy.dynamic.scaffold.subclass | All classes and types in this package are related to creating a  DynamicTypeby
 creating a subclass of a given type. | 
| net.bytebuddy.implementation | The implementation package contains any logic for intercepting method calls. | 
| net.bytebuddy.implementation.attribute | All types and classes in this package are responsible for writing attributes for a given Java byte code element,
 i.e. | 
| net.bytebuddy.implementation.auxiliary | Auxiliary types describe helper types that aid as a supplementary to a given
  InstrumentedType. | 
| net.bytebuddy.implementation.bind | The types and classes of this package are responsible for binding a method call to calling another method. | 
| 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 | Types and classes in this package are responsible for creating Java byte code for a given byte code target
 which is represented by a  MethodDescription. | 
| net.bytebuddy.implementation.bytecode.assign | An  Assigneris responsible for transforming
 a givenTypeDescriptioninto another one. | 
| net.bytebuddy.implementation.bytecode.assign.primitive | Assignerimplementations of this package
 are capable of handling primitive types or thevoidtype. | 
| net.bytebuddy.implementation.bytecode.assign.reference | Assignerimplementations of this package
 are capable of assigning non-primitive types to each other. | 
| net.bytebuddy.implementation.bytecode.collection | This package is dedicated to creating  StackManipulations
 that create collections or arrays from a given number of values. | 
| net.bytebuddy.implementation.bytecode.constant | StackManipulations in this package are responsible for
 creating compile-time constants and pushing them onto the operand stack. | 
| net.bytebuddy.implementation.bytecode.member | StackManipulations of this package are responsible for
 accessing type or method members, 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. | 
| net.bytebuddy.utility | This package contains utility classes for common use within any Byte Buddy logic. | 
| net.bytebuddy.utility.dispatcher | A package to handle dispatching of classes. | 
| net.bytebuddy.utility.privilege | A package containing  PrivilegedActions that are used for invoking sensitive methods. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | ByteBuddyInstances of this class serve as a focus point for configuration of the library's behavior and as an entry point
 to any form of code generation using the library. | 
| protected static class  | ByteBuddy.EnumerationImplementationAn implementation fo the  valuesmethod of an enumeration type. | 
| protected static class  | ByteBuddy.EnumerationImplementation.InitializationAppenderA byte code appender for the type initializer of any enumeration type. | 
| protected static class  | ByteBuddy.EnumerationImplementation.ValuesMethodAppenderA byte code appender for the  valuesmethod of any enumeration type. | 
| protected static class  | ByteBuddy.RecordConstructorStrategyA constructor strategy for implementing a Java record. | 
| protected static class  | ByteBuddy.RecordConstructorStrategy.AppenderA byte code appender for accessors and the record constructor. | 
| protected static class  | ByteBuddy.RecordObjectMethodImplements the object methods of the Java record type. | 
| class  | ClassFileVersionA wrapper object for representing a validated class file version in the format that is specified by the
 JVMS. | 
| static class  | ClassFileVersion.VersionLocator.ResolvedA version locator for a resolved class file version. | 
| static class  | ClassFileVersion.VersionLocator.UnresolvedAn unresolved version locator. | 
| static class  | NamingStrategy.PrefixingRandomA naming strategy that creates a name by prefixing a given class and its package with another package and
 by appending a random number to the class's simple name. | 
| static class  | NamingStrategy.SuffixingRandomA naming strategy that creates a name by concatenating:
 
 The super classes package and name
 A given suffix string
 A random number
 
 Between all these elements, a  $sign is included into the name to improve readability. | 
| static class  | NamingStrategy.SuffixingRandom.BaseNameResolver.ForFixedValueA base name resolver that simply returns a fixed value. | 
| static class  | NamingStrategy.SuffixingRandom.BaseNameResolver.ForGivenTypeUses a specific type's name as the resolved name. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | AgentBuilder.CircularityLock.GlobalA circularity lock that holds a global monitor and does not permit concurrent access. | 
| static class  | AgentBuilder.Default
 The default implementation of an  AgentBuilder. | 
| static class  | AgentBuilder.Default.ExecutingTransformer.Factory.ForJava9CapableVmA factory for a class file transformer on a JVM that supports the  java.lang.ModuleAPI to override
 the newly added method of theClassFileTransformerto capture an instrumented class's module. | 
| protected class  | AgentBuilder.Default.ExecutingTransformer.Java9CapableVmDispatcherA privileged action for transforming a class on a JVM that supports modules. | 
| protected class  | AgentBuilder.Default.ExecutingTransformer.LegacyVmDispatcherA privileged action for transforming a class on a JVM prior to Java 9. | 
| protected class  | AgentBuilder.Default.IgnoringA delegator transformer for further precising what types to ignore. | 
| static class  | AgentBuilder.Default.NativeMethodStrategy.ForPrefixA native method strategy that prefixes method names with a fixed value for supporting rebasing of native methods. | 
| protected static class  | AgentBuilder.Default.TransformationA transformation to apply. | 
| protected static class  | AgentBuilder.Default.Transformation.DifferentialMatcherA matcher that considers the differential of two transformers' transformations. | 
| protected static class  | AgentBuilder.Default.Transformation.SimpleMatcherA matcher that matches any type that is touched by a transformer without being ignored. | 
| protected class  | AgentBuilder.Default.TransformingA helper class that describes a  AgentBuilder.Defaultafter supplying
 aAgentBuilder.RawMatchersuch that one or severalAgentBuilder.Transformers can be supplied. | 
| static class  | AgentBuilder.Default.WarmupStrategy.EnabledAn enabled warmup strategy. | 
| static class  | AgentBuilder.DescriptionStrategy.SuperTypeLoading
 A description strategy that enforces the loading of any super type of a type description but delegates the actual type description
 to another description strategy. | 
| static class  | AgentBuilder.DescriptionStrategy.SuperTypeLoading.Asynchronous
 A description strategy that enforces the loading of any super type of a type description but delegates the actual type description
 to another description strategy. | 
| protected static class  | AgentBuilder.DescriptionStrategy.SuperTypeLoading.Asynchronous.ThreadSwitchingClassLoadingDelegateA class loading delegate that delegates loading of the super type to another thread. | 
| protected static class  | AgentBuilder.DescriptionStrategy.SuperTypeLoading.Asynchronous.ThreadSwitchingClassLoadingDelegate.SimpleClassLoadingActionA class loading action that simply loads a type. | 
| protected static class  | AgentBuilder.DescriptionStrategy.SuperTypeLoading.UnlockingClassLoadingDelegateA class loading delegate that unlocks the circularity lock during class loading. | 
| static class  | AgentBuilder.FallbackStrategy.ByThrowableTypeA fallback strategy that discriminates by the type of the  Throwablethat triggered a request. | 
| static class  | AgentBuilder.InitializationStrategy.SelfInjectionAn initialization strategy that adds a code block to an instrumented type's type initializer which
 then calls a specific class that is responsible for the explicit initialization. | 
| protected static class  | AgentBuilder.InitializationStrategy.SelfInjection.DispatcherA dispatcher for a self-initialization strategy. | 
| protected static class  | AgentBuilder.InitializationStrategy.SelfInjection.Dispatcher.InjectingInitializerA type initializer that injects all auxiliary types of the instrumented type. | 
| static class  | AgentBuilder.InjectionStrategy.UsingInstrumentationAn injection strategy that uses bootstrap injection using an  Instrumentationinstance. | 
| static class  | AgentBuilder.InjectionStrategy.UsingUnsafe.OfFactoryAn injection strategy that uses a factory for creating an unsafe injector. | 
| static class  | AgentBuilder.InstallationListener.CompoundA compound installation listener. | 
| static class  | AgentBuilder.InstallationListener.StreamWritingThis installation listener prints the status of any installation to a  PrintStream. | 
| protected static class  | AgentBuilder.LambdaInstrumentationStrategy.LambdaInstanceFactoryA factory that creates instances that represent lambda expressions. | 
| protected static class  | AgentBuilder.LambdaInstrumentationStrategy.LambdaInstanceFactory.BridgeMethodImplementationImplements an explicit bridge method for a lambda expression. | 
| protected static class  | AgentBuilder.LambdaInstrumentationStrategy.LambdaInstanceFactory.BridgeMethodImplementation.AppenderAn appender for implementing a bridge method for a lambda expression. | 
| protected static class  | AgentBuilder.LambdaInstrumentationStrategy.LambdaInstanceFactory.ConstructorImplementation.AppenderAn appender to implement the executing transformer. | 
| protected static class  | AgentBuilder.LambdaInstrumentationStrategy.LambdaInstanceFactory.FactoryImplementation.AppenderAn appender for a lambda expression factory. | 
| protected static class  | AgentBuilder.LambdaInstrumentationStrategy.LambdaInstanceFactory.LambdaMethodImplementationImplements a lambda expression's functional method. | 
| protected static class  | AgentBuilder.LambdaInstrumentationStrategy.LambdaInstanceFactory.LambdaMethodImplementation.AppenderAn appender for a lambda expression's functional method. | 
| protected static class  | AgentBuilder.LambdaInstrumentationStrategy.LambdaInstanceFactory.SerializationImplementationImplements the  writeReplacemethod for serializable lambda expressions. | 
| static class  | AgentBuilder.Listener.CompoundA compound listener that allows to group several listeners in one instance. | 
| static class  | AgentBuilder.Listener.FilteringA listener that filters types with a given name from being logged. | 
| static class  | AgentBuilder.Listener.ModuleReadEdgeCompletingA listener that adds read-edges to any module of an instrumented class upon its transformation and opens the class's package to the module. | 
| static class  | AgentBuilder.Listener.StreamWritingA listener that writes events to a  PrintStream. | 
| static class  | AgentBuilder.Listener.WithErrorsOnlyA listener that only delegates events if they are failed transformations. | 
| static class  | AgentBuilder.Listener.WithTransformationsOnlyA listener that only delegates events if they are successful or failed transformations. | 
| static class  | AgentBuilder.LocationStrategy.CompoundA compound location strategy that applies a list of location strategies. | 
| static class  | AgentBuilder.LocationStrategy.SimpleA simple location strategy that queries a given class file locator. | 
| static class  | AgentBuilder.PoolStrategy.WithTypePoolCache
 A type locator that uses type pools but allows for the configuration of a custom cache provider by class loader. | 
| static class  | AgentBuilder.PoolStrategy.WithTypePoolCache.SimpleAn implementation of a type locator  AgentBuilder.PoolStrategy.WithTypePoolCache(note documentation of the linked class) that is based on aConcurrentMap. | 
| static class  | AgentBuilder.RawMatcher.ConjunctionA conjunction of two raw matchers. | 
| static class  | AgentBuilder.RawMatcher.DisjunctionA disjunction of two raw matchers. | 
| static class  | AgentBuilder.RawMatcher.ForElementMatchersA raw matcher implementation that checks a  TypeDescriptionand itsClassLoaderagainst two suitable matchers in order to determine if the matched
 type should be instrumented. | 
| static class  | AgentBuilder.RawMatcher.InversionA raw matcher that inverts a raw matcher's result. | 
| static class  | AgentBuilder.RedefinitionListenable.ResubmissionImmediateMatcher.ConjunctionA matcher for immediate resubmission that matches both of the supplied delegate matchers. | 
| static class  | AgentBuilder.RedefinitionListenable.ResubmissionImmediateMatcher.DisjunctionA matcher for immediate resubmission that matches either of the supplied delegate matchers. | 
| static class  | AgentBuilder.RedefinitionListenable.ResubmissionImmediateMatcher.ForElementMatchersA matcher for immediate resubmission that uses element matchers for each argument to determine a resubmission. | 
| static class  | AgentBuilder.RedefinitionListenable.ResubmissionOnErrorMatcher.ConjunctionA matcher for resubmission upon an error that matches both of the supplied delegate matchers. | 
| static class  | AgentBuilder.RedefinitionListenable.ResubmissionOnErrorMatcher.DisjunctionA matcher for resubmission upon an error that matches either of the supplied delegate matchers. | 
| static class  | AgentBuilder.RedefinitionListenable.ResubmissionOnErrorMatcher.ForElementMatchersA matcher for resubmission upon error that uses element matchers for each argument to determine a resubmission. | 
| static class  | AgentBuilder.RedefinitionStrategy.BatchAllocator.ForFixedSizeA batch allocator that creates chunks with a fixed size as batch jobs. | 
| static class  | AgentBuilder.RedefinitionStrategy.BatchAllocator.ForMatchedGroupingA batch allocator that groups all batches by discriminating types using a type matcher. | 
| static class  | AgentBuilder.RedefinitionStrategy.BatchAllocator.PartitioningA partitioning batch allocator that splits types for redefinition into a fixed amount of parts. | 
| static class  | AgentBuilder.RedefinitionStrategy.BatchAllocator.SlicingA slicing batch allocator that assures that any batch is within a certain size range. | 
| static class  | AgentBuilder.RedefinitionStrategy.DiscoveryStrategy.ExplicitAn explicit discovery strategy that only attempts the redefinition of specific types. | 
| protected static class  | AgentBuilder.RedefinitionStrategy.DiscoveryStrategy.Reiterating.ReiteratingIterableAn iterable that returns any loaded types and checks if any additional types were loaded during the last instrumentation. | 
| static class  | AgentBuilder.RedefinitionStrategy.Listener.AdapterA listener adapter that offers non-operational implementations of all listener methods. | 
| static class  | AgentBuilder.RedefinitionStrategy.Listener.BatchReallocator
 A batch reallocator allows to split up a failed retransformation into additional batches which are reenqueed to the
 current retransformation process. | 
| static class  | AgentBuilder.RedefinitionStrategy.Listener.CompoundA compound listener that delegates events to several listeners. | 
| protected static class  | AgentBuilder.RedefinitionStrategy.Listener.Compound.CompoundIterableA compound iterable. | 
| static class  | AgentBuilder.RedefinitionStrategy.Listener.PausingA listener that invokes  Thread.sleep(long)prior to every batch but the first batch. | 
| static class  | AgentBuilder.RedefinitionStrategy.Listener.StreamWritingA listener that writes events to a  PrintStream. | 
| static class  | AgentBuilder.RedefinitionStrategy.ResubmissionScheduler.AtFixedRateA resubmission scheduler that schedules jobs at a fixed rate. | 
| static class  | AgentBuilder.RedefinitionStrategy.ResubmissionScheduler.Cancelable.ForFutureA cancelable for a  Future. | 
| static class  | AgentBuilder.RedefinitionStrategy.ResubmissionScheduler.WithFixedDelayA resubmission scheduler that schedules jobs with a fixed delay. | 
| static class  | AgentBuilder.RedefinitionStrategy.ResubmissionStrategy.EnabledAn enabled resubmission strategy. | 
| static class  | AgentBuilder.RedefinitionStrategy.ResubmissionStrategy.InstallationRepresents an installation of a resubmission strategy. | 
| static class  | AgentBuilder.Transformer.ForAdviceA transformer for applying an  Advicewhere this advice class might reference types of both the agent's and the user's
 class loader. | 
| protected static class  | AgentBuilder.Transformer.ForAdvice.EntryAn entry for an advice to apply. | 
| protected static class  | AgentBuilder.Transformer.ForAdvice.Entry.ForSplitAdviceAn entry for an advice class where both entry and exit advice methods are declared by the different classes. | 
| protected static class  | AgentBuilder.Transformer.ForAdvice.Entry.ForUnifiedAdviceAn entry for an advice class where both the (optional) entry and exit advice methods are declared by the same class. | 
| static class  | AgentBuilder.Transformer.ForBuildPluginA transformer that applies a build  Plugin. | 
| static class  | AgentBuilder.TransformerDecorator.CompoundA compound transformer decorator. | 
| static class  | AgentBuilder.TypeStrategy.ForBuildEntryPointA type strategy that applies a build  EntryPoint. | 
| class  | LambdaFactoryThis class serves as a dispatcher for creating lambda expression objects when Byte Buddy is configured to instrument the
  java.lang.invoke.LambdaMetafactory. | 
| static class  | ResettableClassFileTransformer.WithDelegationImplements a resettable class file transformer that allows for the delegation of a transformation. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | Advice
 Advice wrappers copy the code of blueprint methods to be executed before and/or after a matched method. | 
| protected static class  | Advice.AppenderA byte code appender for implementing  Advice. | 
| protected static class  | Advice.ArgumentHandler.ForAdvice.Default.ForMethodEnterAn argument handler for an enter advice method. | 
| protected static class  | Advice.ArgumentHandler.ForAdvice.Default.ForMethodExitAn argument handler for an exit advice method. | 
| protected static class  | Advice.ArgumentHandler.ForInstrumentedMethod.Default.CopyingAn argument handler for an instrumented method that copies all arguments before executing the instrumented method. | 
| protected static class  | Advice.ArgumentHandler.ForInstrumentedMethod.Default.SimpleA simple argument handler for an instrumented method. | 
| static class  | Advice.Delegator.ForDynamicInvocationInvokes an advice method using a dynamic method call. | 
| static class  | Advice.Dispatcher.DelegatingA dispatcher for an advice method that is being invoked from the instrumented method. | 
| protected static class  | Advice.Dispatcher.Delegating.Resolved.ForMethodEnterA resolved dispatcher for implementing method enter advice. | 
| protected static class  | Advice.Dispatcher.Delegating.Resolved.ForMethodExitA resolved dispatcher for implementing method exit advice. | 
| protected static class  | Advice.Dispatcher.Delegating.Resolved.ForMethodExit.WithExceptionHandlerImplementation of exit advice that handles exceptions. | 
| static class  | Advice.Dispatcher.InliningA dispatcher for an advice method that is being inlined into the instrumented method. | 
| protected static class  | Advice.Dispatcher.Inlining.Resolved.ForMethodEnterA resolved dispatcher for implementing method enter advice. | 
| protected static class  | Advice.Dispatcher.Inlining.Resolved.ForMethodExitA resolved dispatcher for implementing method exit advice. | 
| protected static class  | Advice.Dispatcher.Inlining.Resolved.ForMethodExit.WithExceptionHandlerImplementation of exit advice that handles exceptions. | 
| static class  | Advice.Dispatcher.RelocationHandler.ForTypeA relocation handler that is triggered if the checked value is an instance of a given type. | 
| protected class  | Advice.Dispatcher.RelocationHandler.ForType.BoundA bound relocation handler for  Advice.Dispatcher.RelocationHandler.ForType. | 
| protected class  | Advice.Dispatcher.RelocationHandler.ForValue.BoundA bound relocation handler for  Advice.Dispatcher.RelocationHandler.ForValue. | 
| protected class  | Advice.Dispatcher.RelocationHandler.ForValue.InvertedAn inverted version of the outer relocation handler. | 
| static class  | Advice.Dispatcher.RelocationHandler.Relocation.ForLabelA relocation that unconditionally jumps to a given label. | 
| static class  | Advice.Dispatcher.Resolved.AbstractBaseAn abstract base implementation of a  Advice.OffsetMapping.ForArgument.Resolveddispatcher. | 
| static class  | Advice.Dispatcher.SuppressionHandler.SuppressingA suppression handler that suppresses a given throwable type. | 
| static class  | Advice.ExceptionHandler.SimpleA simple exception handler that returns a fixed stack manipulation. | 
| static class  | Advice.OffsetMapping.Factory.Illegal<T extends Annotation>A factory for an annotation whose use is not permitted. | 
| static class  | Advice.OffsetMapping.Factory.Simple<T extends Annotation>A simple factory that binds a constant offset mapping. | 
| static class  | Advice.OffsetMapping.ForAllArgumentsAn offset mapping that maps an array containing all arguments of the instrumented method. | 
| static class  | Advice.OffsetMapping.ForArgumentAn offset mapping for a given parameter of the instrumented method. | 
| static class  | Advice.OffsetMapping.ForArgument.ResolvedAn offset mapping for a specific parameter of the instrumented method. | 
| static class  | Advice.OffsetMapping.ForArgument.Resolved.Factory<T extends Annotation>A factory for a parameter argument of the instrumented method. | 
| static class  | Advice.OffsetMapping.ForArgument.UnresolvedAn offset mapping for a parameter of the instrumented method with a specific index. | 
| static class  | Advice.OffsetMapping.ForEnterValueAn offset mapping that provides access to the value that is returned by the enter advice. | 
| protected static class  | Advice.OffsetMapping.ForEnterValue.FactoryA factory for creating a  Advice.OffsetMapping.ForEnterValueoffset mapping. | 
| static class  | Advice.OffsetMapping.ForExitValueAn offset mapping that provides access to the value that is returned by the exit advice. | 
| protected static class  | Advice.OffsetMapping.ForExitValue.FactoryA factory for creating a  Advice.OffsetMapping.ForExitValueoffset mapping. | 
| static class  | Advice.OffsetMapping.ForFieldAn offset mapping for a field. | 
| static class  | Advice.OffsetMapping.ForField.ResolvedA binding for an offset mapping that represents a specific field. | 
| static class  | Advice.OffsetMapping.ForField.Resolved.Factory<T extends Annotation>A factory that binds a field. | 
| static class  | Advice.OffsetMapping.ForField.UnresolvedAn offset mapping for a field that is resolved from the instrumented type by its name. | 
| static class  | Advice.OffsetMapping.ForField.Unresolved.WithExplicitTypeAn offset mapping for a field with an explicit declaring type. | 
| static class  | Advice.OffsetMapping.ForLocalValueAn offset mapping that provides access to a named local variable that is declared by the advice methods via  Advice.Local. | 
| protected static class  | Advice.OffsetMapping.ForLocalValue.FactoryA factory for an offset mapping for a local variable that is declared by the advice methods via  Advice.Local. | 
| static class  | Advice.OffsetMapping.ForOriginAn offset mapping for the  Advice.Originannotation. | 
| static class  | Advice.OffsetMapping.ForOrigin.Renderer.ForConstantValueA renderer for a constant value. | 
| static class  | Advice.OffsetMapping.ForReturnValueAn offset mapping that provides access to the value that is returned by the instrumented method. | 
| static class  | Advice.OffsetMapping.ForSerializedValueAn offset mapping that loads a serialized value. | 
| static class  | Advice.OffsetMapping.ForSerializedValue.Factory<T extends Annotation>A factory for loading a deserialized value. | 
| static class  | Advice.OffsetMapping.ForStackManipulationAn offset mapping for binding a stack manipulation. | 
| static class  | Advice.OffsetMapping.ForStackManipulation.Factory<T extends Annotation>A factory that binds a stack manipulation. | 
| static class  | Advice.OffsetMapping.ForStackManipulation.OfAnnotationProperty<T extends Annotation>A factory for binding an annotation's property. | 
| static class  | Advice.OffsetMapping.ForStackManipulation.OfDefaultValue<T extends Annotation>A factory for binding the annotated parameter's default value. | 
| static class  | Advice.OffsetMapping.ForStackManipulation.OfDynamicInvocation<T extends Annotation>Uses dynamic method invocation for binding an annotated parameter to a value. | 
| static class  | Advice.OffsetMapping.ForThisReferenceAn offset mapping that provides access to the  thisreference of the instrumented method. | 
| static class  | Advice.OffsetMapping.ForThrowableAn offset mapping for accessing a  Throwableof the instrumented method. | 
| static class  | Advice.OffsetMapping.ForUnusedValueAn offset mapping for a parameter where assignments are fully ignored and that always return the parameter type's default value. | 
| static class  | Advice.OffsetMapping.Target.ForArrayA target mapping for an array of all local variables. | 
| static class  | Advice.OffsetMapping.Target.ForArray.ReadWriteA target mapping for a writable target mapping for an array of local variables. | 
| static class  | Advice.OffsetMapping.Target.ForDefaultValueA target for an offset mapping that represents a non-operational value. | 
| static class  | Advice.OffsetMapping.Target.ForFieldA target for an offset mapping that loads a field value. | 
| static class  | Advice.OffsetMapping.Target.ForField.ReadWriteA mapping for a writable field. | 
| static class  | Advice.OffsetMapping.Target.ForStackManipulationA target for an offset mapping that represents a read-only stack manipulation. | 
| static class  | Advice.OffsetMapping.Target.ForVariableA target for an offset mapping that represents a local variable. | 
| static class  | Advice.OffsetMapping.Target.ForVariable.ReadWriteA target for a writable mapping of a local variable. | 
| static class  | Advice.PostProcessor.CompoundA compound post processor. | 
| static class  | Advice.PostProcessor.Factory.CompoundA compound factory for a post processor. | 
| static class  | Advice.WithCustomMappingA builder step for creating an  Advicethat uses custom mappings of annotations to constant pool values. | 
| static class  | AsmVisitorWrapper.CompoundAn ordered, immutable chain of  AsmVisitorWrappers. | 
| static class  | AsmVisitorWrapper.ForDeclaredFieldsAn ASM visitor wrapper that allows to wrap declared fields of the instrumented type with a  AsmVisitorWrapper.ForDeclaredFields.FieldVisitorWrapper. | 
| protected static class  | AsmVisitorWrapper.ForDeclaredFields.EntryAn entry describing a field visitor wrapper paired with a matcher for fields to be wrapped. | 
| static class  | AsmVisitorWrapper.ForDeclaredMethods
 An ASM visitor wrapper that allows to wrap declared methods of the instrumented type with a  AsmVisitorWrapper.ForDeclaredMethods.MethodVisitorWrapper. | 
| protected static class  | AsmVisitorWrapper.ForDeclaredMethods.EntryAn entry describing a method visitor wrapper paired with a matcher for fields to be wrapped. | 
| class  | MemberAttributeExtension<T>A visitor that adds attributes to a class member. | 
| class  | MemberRemoval
 A visitor wrapper that removes fields or methods that match a given  ElementMatcher. | 
| class  | MemberSubstitution
 Substitutes field access or method invocations within a method's body. | 
| static class  | MemberSubstitution.Replacement.Binding.ResolvedA binding that was resolved for an actual substitution. | 
| static class  | MemberSubstitution.Replacement.Factory.CompoundA compound factory. | 
| static class  | MemberSubstitution.Replacement.ForElementMatchersA replacement that substitutes a member based on a row of element matchers. | 
| protected static class  | MemberSubstitution.Replacement.ForElementMatchers.FactoryA factory for creating a replacement that chooses members based on a row of element matchers. | 
| static class  | MemberSubstitution.Replacement.ForFirstBindingA replacement that only resolves the first matching replacement of a list of replacements. | 
| static class  | MemberSubstitution.Substitution.ChainA substitution chain allows for chaining multiple substitution steps for a byte code element being replaced. | 
| static class  | MemberSubstitution.Substitution.Chain.Step.SimpleA simple substitution step within a substitution chain. | 
| static class  | MemberSubstitution.Substitution.ForFieldAccessA substitution with a field access. | 
| static class  | MemberSubstitution.Substitution.ForFieldAccess.FieldResolver.ForElementMatcherA field matcher that resolves a non-static field on the first parameter type of the substituted member usage. | 
| static class  | MemberSubstitution.Substitution.ForFieldAccess.FieldResolver.SimpleA simple field resolver that returns a specific field. | 
| static class  | MemberSubstitution.Substitution.ForFieldAccess.OfGivenFieldA factory for a substitution that substitutes with a given field. | 
| static class  | MemberSubstitution.Substitution.ForFieldAccess.OfMatchedFieldA factory for a substitution that locates a field on the receiver type using a matcher. | 
| static class  | MemberSubstitution.Substitution.ForMethodInvocationA substitution with a method invocation. | 
| static class  | MemberSubstitution.Substitution.ForMethodInvocation.MethodResolver.MatchingA method resolver that locates a non-static method by locating it from the receiver type. | 
| static class  | MemberSubstitution.Substitution.ForMethodInvocation.MethodResolver.SimpleA simple method resolver that returns a given method. | 
| static class  | MemberSubstitution.Substitution.ForMethodInvocation.OfGivenMethodA factory for a substitution that invokes a given method. | 
| static class  | MemberSubstitution.Substitution.ForMethodInvocation.OfMatchedMethodA factory for a substitution that locates a method on the receiver type using a matcher. | 
| static class  | MemberSubstitution.TypePoolResolver.ForClassFileLocatorA type pool resolver that resolves the implicit pool but additionally checks another class file locator. | 
| static class  | MemberSubstitution.TypePoolResolver.ForExplicitPoolA type pool resolver that returns a specific type pool. | 
| static class  | MemberSubstitution.WithoutSpecificationA member substitution that lacks a specification for how to substitute the matched members references within a method body. | 
| protected static class  | MemberSubstitution.WithoutSpecification.ForMatchedByteCodeElementDescribes a member substitution that requires a specification for how to replace a byte code element. | 
| static class  | MemberSubstitution.WithoutSpecification.ForMatchedFieldDescribes a member substitution that requires a specification for how to replace a field. | 
| static class  | MemberSubstitution.WithoutSpecification.ForMatchedMethodDescribes a member substitution that requires a specification for how to replace a method or constructor. | 
| class  | ModifierAdjustment
 A visitor wrapper that adjusts the modifiers of the instrumented type or its members. | 
| protected static class  | ModifierAdjustment.Adjustment<T>A description of a conditional adjustment. | 
| class  | TypeReferenceAdjustmentAdds an attribute value for all inner classes that are referenced by the instrumented type. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | AccessControllerPluginA build tool plugin that instruments methods to dispatch to methods  java.security.AccessControllerwith equal signature. | 
| protected static class  | AccessControllerPlugin.AccessControlWrapperAn wrapper for a method that represents a method of  AccessControllerwhich is weaved. | 
| protected static class  | AccessControllerPlugin.InitializerA byte code appender to create an initializer segment that determines if
 the  java.security.AccessControlleris available. | 
| protected static class  | AccessControllerPlugin.Initializer.WithoutPropertyAn initializer that always uses the access controller if it is available. | 
| protected static class  | AccessControllerPlugin.Initializer.WithPropertyAn initializer that uses a property to determine if the access controller should be actually used even if it is available. | 
| static class  | BuildLogger.CompoundA compound build logger. | 
| static class  | BuildLogger.StreamWritingA build logger that writes all statements to a  PrintStream. | 
| class  | CachedReturnPluginA plugin that caches the return value of a method in a synthetic field. | 
| protected static class  | CachedReturnPlugin.CacheFieldOffsetMappingAn offset mapping for the cached field. | 
| class  | HashCodeAndEqualsPluginA build tool plugin that adds  Object.hashCode()andObject.equals(Object)methods to a class if theHashCodeAndEqualsPlugin.Enhanceannotation is present and no explicit method declaration was added. | 
| protected static class  | HashCodeAndEqualsPlugin.ValueMatcherAn element matcher for a  HashCodeAndEqualsPlugin.ValueHandlingannotation. | 
| static class  | HashCodeAndEqualsPlugin.WithNonNullableFieldsA version of the  HashCodeAndEqualsPluginthat assumes that all fields are non-nullable unless they are explicitly marked. | 
| static class  | Plugin.Engine.DefaultA default implementation of a plugin engine. | 
| protected static class  | Plugin.Engine.Dispatcher.ForParallelTransformation.EagerWorkAn eager materialization that does not defer processing after preprocessing. | 
| static class  | Plugin.Engine.Dispatcher.ForParallelTransformation.FactoryA factory for a dispatcher that uses a given executor service for parallel dispatching. | 
| static class  | Plugin.Engine.Dispatcher.ForParallelTransformation.WithThrowawayExecutorServiceA parallel dispatcher that shuts down its executor service upon completion of a plugin engine's application. | 
| static class  | Plugin.Engine.Dispatcher.ForParallelTransformation.WithThrowawayExecutorService.FactoryA factory for a parallel executor service that creates a new executor service on each plugin engine application. | 
| static class  | Plugin.Engine.Listener.CompoundA compound listener. | 
| static class  | Plugin.Engine.Listener.ForErrorHandlerA listener decorator that forwards events to an error handler if they are applicable. | 
| static class  | Plugin.Engine.Listener.StreamWritingA listener that forwards significant events of a plugin engine application to a  PrintStream. | 
| static class  | Plugin.Engine.Listener.WithErrorsOnlyA decorator for another listener to only print error events. | 
| static class  | Plugin.Engine.Listener.WithTransformationsOnlyA decorator for another listener to only print transformation and error events. | 
| static class  | Plugin.Engine.Source.Element.ForByteArrayAn element representation for a byte array. | 
| static class  | Plugin.Engine.Source.Element.ForFileAn element representation for a file. | 
| static class  | Plugin.Engine.Source.Element.ForJarEntryRepresents a jar file entry as an element. | 
| static class  | Plugin.Engine.Source.FilteringA source that applies a filter upon iterating elements. | 
| static class  | Plugin.Engine.Source.ForFolderRepresents the contents of a folder as class files. | 
| static class  | Plugin.Engine.Source.ForJarFileRepresents a jar file as a source. | 
| static class  | Plugin.Engine.Source.InMemoryA source that represents a collection of in-memory resources that are represented as byte arrays. | 
| static class  | Plugin.Engine.Source.Origin.FilteringAn origin that forwards all invocations to a delegate where an  ElementMatcheris applied prior to iteration. | 
| static class  | Plugin.Engine.Target.ForFolderRepresents a folder as the target for a plugin engine's application. | 
| static class  | Plugin.Engine.Target.ForJarFileRepresents a jar file as a target. | 
| static class  | Plugin.Engine.Target.InMemoryA sink that stores all elements in a memory map. | 
| static class  | Plugin.Engine.TypeStrategy.ForEntryPointA type strategy that represents a given  EntryPointfor a build tool. | 
| static class  | Plugin.Factory.SimpleA simple factory that returns a preconstructed plugin instance.. | 
| static class  | Plugin.Factory.UsingReflectionA plugin factory that uses reflection for instantiating a plugin. | 
| static class  | Plugin.Factory.UsingReflection.ArgumentResolver.ForIndexAn argument resolver that resolves an argument for a specific parameter index. | 
| static class  | Plugin.Factory.UsingReflection.ArgumentResolver.ForIndex.WithDynamicTypeAn argument resolver that resolves an argument for a specific parameter index by attempting a conversion via
 invoking a static  valueOfmethod on the target type, if it exists. | 
| static class  | Plugin.Factory.UsingReflection.ArgumentResolver.ForType<T>An argument resolver that resolves parameters for a given type. | 
| static class  | Plugin.Factory.UsingReflection.ArgumentResolver.Resolution.ResolvedRepresents a resolved argument resolution. | 
| static class  | Plugin.Factory.UsingReflection.Instantiator.AmbiguousRepresents an ambiguously resolved instantiator. | 
| static class  | Plugin.Factory.UsingReflection.Instantiator.ResolvedAn instantiator that is resolved for a given constructor with arguments. | 
| static class  | Plugin.Factory.UsingReflection.Instantiator.UnresolvedAn instantiator that is not resolved for creating an instance. | 
| static class  | Plugin.ForElementMatcherAn abstract base for a  Pluginthat matches types by a givenElementMatcher. | 
| static class  | Plugin.NoOpA non-operational plugin that does not instrument any type. | 
| class  | ToStringPluginA build tool plugin that adds a  Object.toString()and method to a class if theToStringPlugin.Enhanceannotation is present and no
 explicit method declaration was added. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | AnnotationDescription.BuilderA builder for pragmatically creating  AnnotationDescription. | 
| static class  | AnnotationSource.ExplicitAn annotation source that declares a given list of annotations. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | ParameterDescription.ForLoadedParameter.ParameterAnnotationSource.ForLoadedConstructorA source for a loaded constructor. | 
| static class  | ParameterDescription.ForLoadedParameter.ParameterAnnotationSource.ForLoadedMethodA source for a loaded method. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | ModifierContributor.Resolver<T extends ModifierContributor>A resolver for Java modifiers represented by  ModifierContributors. | 
| Modifier and Type | Class and Description | 
|---|---|
| protected static class  | TypeDescription.Generic.AnnotationReader.Delegator.ChainedA chained delegator that bases its result on an underlying annotation reader. | 
| static class  | TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedExecutableExceptionTypeA delegating annotation reader for an annotated exception variable. | 
| static class  | TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedExecutableParameterTypeA delegating annotation reader for an annotated parameter variable. | 
| static class  | TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedFieldA delegating annotation reader for an annotated field variable. | 
| static class  | TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedInterfaceA delegating annotation reader for an annotated interface type. | 
| static class  | TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedMethodReturnTypeA delegating annotation reader for an annotated return variable. | 
| static class  | TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedSuperClassA delegating annotation reader for an annotated super type. | 
| static class  | TypeDescription.Generic.AnnotationReader.Delegator.ForLoadedTypeVariableA delegating annotation reader for an annotated type variable. | 
| static class  | TypeDescription.Generic.AnnotationReader.Delegator.SimpleA simple delegator for a given  AnnotatedElement. | 
| static class  | TypeDescription.Generic.AnnotationReader.ForTypeArgumentA chained annotation reader for reading a parameterized type's type argument. | 
| static class  | TypeDescription.Generic.AnnotationReader.ForTypeVariableBoundTypeA chained annotation reader for reading a type variable's type argument. | 
| protected static class  | TypeDescription.Generic.AnnotationReader.ForTypeVariableBoundType.OfFormalTypeVariableA chained annotation reader for reading a formal type variable's type argument. | 
| static class  | TypeDescription.Generic.AnnotationReader.ForWildcardLowerBoundTypeA chained annotation reader for reading a wildcard type's lower bound type. | 
| static class  | TypeDescription.Generic.AnnotationReader.ForWildcardUpperBoundTypeA chained annotation reader for reading a wildcard type's upper bound type. | 
| static class  | TypeDescription.Generic.BuilderA builder for creating describing a generic type as a  TypeDescription.Generic. | 
| protected static class  | TypeDescription.Generic.Builder.OfGenericArrayTypeA generic type builder building a generic array type. | 
| protected static class  | TypeDescription.Generic.Builder.OfNonGenericTypeA generic type builder for building a non-generic type. | 
| protected static class  | TypeDescription.Generic.Builder.OfParameterizedTypeA generic type builder for building a parameterized type. | 
| protected static class  | TypeDescription.Generic.Builder.OfTypeVariableA generic type builder building a symbolic type variable. | 
| static class  | TypeDescription.Generic.Visitor.Assigner.Dispatcher.ForGenericArrayA dispatcher for checking the assignability of a generic array type. | 
| static class  | TypeDescription.Generic.Visitor.Assigner.Dispatcher.ForNonGenericTypeA dispatcher for checking the assignability of a non-generic type. | 
| static class  | TypeDescription.Generic.Visitor.Assigner.Dispatcher.ForParameterizedTypeA dispatcher for checking the assignability of a parameterized type. | 
| protected static class  | TypeDescription.Generic.Visitor.Assigner.Dispatcher.ForParameterizedType.ParameterAssigner.ContravariantBindingA dispatcher for an contravariant parameter of a parameterized type, i.e. | 
| protected static class  | TypeDescription.Generic.Visitor.Assigner.Dispatcher.ForParameterizedType.ParameterAssigner.CovariantBindingA dispatcher for an covariant parameter of a parameterized type, i.e. | 
| protected static class  | TypeDescription.Generic.Visitor.Assigner.Dispatcher.ForParameterizedType.ParameterAssigner.InvariantBindingA dispatcher for an invariant parameter of a parameterized type, i.e. | 
| static class  | TypeDescription.Generic.Visitor.Assigner.Dispatcher.ForTypeVariableA dispatcher for checking the assignability of a type variable. | 
| static class  | TypeDescription.Generic.Visitor.ForSignatureVisitorVisits a generic type and appends the discovered type to the supplied signature visitor. | 
| static class  | TypeDescription.Generic.Visitor.ReducingA visitor that reduces a detached generic type to its erasure. | 
| static class  | TypeDescription.Generic.Visitor.Substitutor.ForAttachmentA substitutor that attaches type variables to a type variable source and replaces representations of
  TargetTypewith a given declaring type. | 
| static class  | TypeDescription.Generic.Visitor.Substitutor.ForDetachmentA visitor for detaching a type from its declaration context by detaching type variables. | 
| static class  | TypeDescription.Generic.Visitor.Substitutor.ForTokenNormalizationA substitutor that normalizes a token to represent all  TargetTypeby a given type and that symbolizes all type variables. | 
| static class  | TypeDescription.Generic.Visitor.Substitutor.ForTypeVariableBindingA visitor for binding type variables to their values. | 
| protected class  | TypeDescription.Generic.Visitor.Substitutor.ForTypeVariableBinding.TypeVariableSubstitutorSubstitutes a type variable, either with a new binding if the variable is defined by a type or with a
 retained type variable if the variable is defined by a method. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | ClassFileLocator.CompoundA compound  ClassFileLocatorthat chains several locators. | 
| static class  | ClassFileLocator.ForClassLoader
 A class file locator that queries a class loader for binary representations of class files. | 
| static class  | ClassFileLocator.ForFolderA class file locator that finds files from a standardized Java folder structure with
 folders donating packages and class files being saved as  <classname>.classfiles
 within their package folder. | 
| static class  | ClassFileLocator.ForInstrumentationA Java agent that allows the location of class files by emulating a retransformation. | 
| static class  | ClassFileLocator.ForInstrumentation.ClassLoadingDelegate.DefaultA default implementation of a class loading delegate. | 
| static class  | ClassFileLocator.ForInstrumentation.ClassLoadingDelegate.ExplicitA class loading delegate that allows the location of explicitly registered classes that cannot
 be located by a class loader directly. | 
| static class  | ClassFileLocator.ForInstrumentation.ClassLoadingDelegate.ForDelegatingClassLoader.Dispatcher.ResolvedRepresents a field that could be located. | 
| static class  | ClassFileLocator.ForInstrumentation.ClassLoadingDelegate.ForDelegatingClassLoader.Dispatcher.UnresolvedRepresents a field that could not be located. | 
| static class  | ClassFileLocator.ForJarFileA class file locator that locates classes within a Java jar file. | 
| static class  | ClassFileLocator.ForModule
 A class file locator that locates class files by querying a Java module's  getResourceAsStreammethod. | 
| static class  | ClassFileLocator.ForModuleFileA class file locator that locates classes within a Java jmod file. | 
| static class  | ClassFileLocator.ForUrlA class file locator that reads class files from one or several URLs. | 
| protected static class  | ClassFileLocator.ForUrl.ClassLoaderCreationActionAn action to create a class loader with the purpose of locating classes from an URL location. | 
| static class  | ClassFileLocator.PackageDiscriminatingA class file locator that discriminates by a type's package. | 
| static class  | ClassFileLocator.Resolution.ExplicitRepresents a byte array as binary data. | 
| static class  | ClassFileLocator.Resolution.IllegalA canonical representation of an illegal binary representation. | 
| static class  | ClassFileLocator.SimpleA simple class file locator that returns class files from a selection of given types. | 
| static class  | DynamicType.Builder.AbstractBase.Adapter<U>An adapter implementation of a dynamic type builder. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.FieldDefinitionAdapterAn adapter for defining a new field. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.FieldMatchAdapterAn adapter for matching an existing field. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.InnerTypeDefinitionForMethodAdapterAn adapter for applying an inner type definition for an outer method or constructor. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.InnerTypeDefinitionForTypeAdapterAn adapter for applying an inner type definition for an outer type. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapterAn adapter for defining a new method. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapter.AnnotationAdapterAn annotation adapter for a method definition. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapter.ParameterAnnotationAdapterAn annotation adapter for a parameter definition. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapter.SimpleParameterAnnotationAdapterAn annotation adapter for a simple parameter definition. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.MethodDefinitionAdapter.TypeVariableAnnotationAdapterAn adapter for defining a new type variable for the currently defined method. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.MethodMatchAdapterAn adapter for matching an existing method. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.MethodMatchAdapter.AnnotationAdapterAn annotation adapter for implementing annotations during a method definition. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.OptionalMethodMatchAdapterAn adapter for optionally matching methods defined by declared interfaces. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.RecordComponentDefinitionAdapterAn adapter for defining a record component. | 
| protected class  | DynamicType.Builder.AbstractBase.Adapter.TypeVariableDefinitionAdapterAn adapter for defining a new type variable for the instrumented type. | 
| protected static class  | DynamicType.Builder.MethodDefinition.AbstractBase.Adapter<V>An adapter implementation of a method definition. | 
| static class  | DynamicType.DefaultA default implementation of a dynamic type. | 
| protected static class  | DynamicType.Default.Loaded<T>A default implementation of a loaded dynamic type. | 
| static class  | DynamicType.Default.Unloaded<T>A default implementation of an unloaded dynamic type. | 
| class  | NexusAccessorThe Nexus accessor is creating a VM-global singleton  Nexussuch that it can be seen by all class loaders of
 a virtual machine. | 
| static class  | NexusAccessor.Dispatcher.AvailableAn enabled dispatcher for registering a type initializer in a  Nexus. | 
| static class  | NexusAccessor.Dispatcher.UnavailableA disabled dispatcher where a  Nexusis not available. | 
| static class  | NexusAccessor.InitializationAppenderAn initialization appender that looks up a loaded type initializer from Byte Buddy's  Nexus. | 
| static class  | Transformer.Compound<S>A compound transformer. | 
| static class  | Transformer.ForFieldA transformer for a field that delegates to another transformer that transforms a  FieldDescription.Token. | 
| protected static class  | Transformer.ForField.FieldModifierTransformerA transformer for a field's modifiers. | 
| static class  | Transformer.ForMethodA transformer for a field that delegates to another transformer that transforms a  MethodDescription.Token. | 
| protected static class  | Transformer.ForMethod.MethodModifierTransformerA transformer for a method's modifiers. | 
| protected class  | Transformer.ForMethod.TransformedMethod.AttachmentVisitorA visitor that attaches type variables based on the transformed method's type variables and the instrumented type. | 
| static class  | TypeResolutionStrategy.ActiveA type resolution strategy that applies all  LoadedTypeInitializeras a part of class loading using reflection. | 
| protected static class  | TypeResolutionStrategy.Active.ResolvedA resolved version of an active type resolution strategy. | 
| Modifier and Type | Class and Description | 
|---|---|
| protected class  | ByteArrayClassLoader.ClassDefinitionActionAn action for defining a located class that is not yet loaded. | 
| static class  | ByteArrayClassLoader.PackageLookupStrategy.ForJava9CapableVmA package lookup strategy for Java 9 or newer. | 
| protected static class  | ByteArrayClassLoader.PersistenceHandler.UrlDefinitionActionAn action to define a URL that represents a class file. | 
| protected static class  | ByteArrayClassLoader.PersistenceHandler.UrlDefinitionAction.ByteArrayUrlStreamHandlerA stream handler that returns the given binary representation. | 
| static class  | ByteArrayClassLoader.SynchronizationStrategy.ForJava7CapableVmA synchronization engine for a VM that is aware of parallel-capable class loaders. | 
| static class  | ByteArrayClassLoader.SynchronizationStrategy.ForJava8CapableVmA synchronization engine for a VM that is aware of parallel-capable class loaders using method handles to respect module boundaries. | 
| static class  | ClassFilePostProcessor.ForClassFileTransformerA class file post processor that delegates to an  ClassFileTransformer. | 
| static class  | ClassInjector.UsingInstrumentationA class injector using a  Instrumentationto append to either the boot classpath
 or the system class path. | 
| static class  | ClassInjector.UsingJnaA class injector using JNA to invoke JNI's define class utility for defining a class. | 
| static class  | ClassInjector.UsingJna.Dispatcher.EnabledAn enabled dispatcher for JNA-based class injection. | 
| static class  | ClassInjector.UsingJna.Dispatcher.UnavailableAn unavailable dispatcher for JNA-based class injection. | 
| static class  | ClassInjector.UsingLookup
 A class injector that uses a  java.lang.invoke.MethodHandles$Lookupobject for defining a class. | 
| static class  | ClassInjector.UsingReflectionA class injector that uses reflective method calls. | 
| static class  | ClassInjector.UsingReflection.Dispatcher.DirectA class injection dispatcher that is using reflection on the  ClassLoadermethods. | 
| protected static class  | ClassInjector.UsingReflection.Dispatcher.Direct.ForJava7CapableVmA resolved class dispatcher for a class injector on a VM running at least Java 7. | 
| static class  | ClassInjector.UsingReflection.Dispatcher.Initializable.UnavailableRepresents an unsuccessfully loaded method lookup. | 
| static class  | ClassInjector.UsingReflection.Dispatcher.UnavailableRepresents an unsuccessfully loaded method lookup. | 
| static class  | ClassInjector.UsingReflection.Dispatcher.UsingUnsafeInjectionAn indirect dispatcher that uses a redirection accessor class that was injected into the bootstrap class loader. | 
| protected static class  | ClassInjector.UsingReflection.Dispatcher.UsingUnsafeOverride.ForJava7CapableVmA resolved class dispatcher using unsafe field injection for a class injector on a VM running at least Java 7. | 
| static class  | ClassInjector.UsingUnsafeA class injector that uses  sun.misc.Unsafeorjdk.internal.misc.Unsafeto inject classes. | 
| static class  | ClassInjector.UsingUnsafe.Dispatcher.EnabledAn enabled dispatcher. | 
| static class  | ClassInjector.UsingUnsafe.Dispatcher.UnavailableA disabled dispatcher. | 
| static class  | ClassInjector.UsingUnsafe.FactoryA factory for creating a  ClassInjectorthat usessun.misc.Unsafeif available but attempts a fallback
 to usingjdk.internal.misc.Unsafeif thejdk.internalmodule is not resolved or unavailable. | 
| protected static class  | ClassLoadingStrategy.Default.InjectionDispatcher
 A class loading strategy which applies a class loader injection while applying a given  ProtectionDomainon class injection. | 
| protected static class  | ClassLoadingStrategy.Default.WrappingDispatcherA class loading strategy which creates a wrapping class loader while applying a given
  ProtectionDomainon class loading. | 
| static class  | ClassLoadingStrategy.ForBootstrapInjectionA class loading strategy which allows class injection into the bootstrap class loader if
 appropriate. | 
| static class  | ClassLoadingStrategy.ForJnaInjectionA class loading strategy that injects a class using JNA via the JNI DefineClass method. | 
| static class  | ClassLoadingStrategy.ForUnsafeInjectionA class loading strategy that injects a class using  sun.misc.Unsafeorjdk.internal.misc.Unsafe. | 
| static class  | ClassLoadingStrategy.UsingLookupA class loading strategy that uses a  java.lang.invoke.MethodHandles$Lookupinstance for defining types. | 
| class  | ClassReloadingStrategy
 The class reloading strategy allows to redefine loaded  Classes. | 
| static class  | ClassReloadingStrategy.BootstrapInjection.EnabledAn enabled bootstrap class loader injection strategy. | 
| static class  | MultipleParentClassLoader.BuilderA builder to collect class loader and that creates a
  MultipleParentClassLoaderonly if multiple or noClassLoaders are found in the process. | 
| static class  | PackageDefinitionStrategy.ManifestReadingA package definer that reads a class loader's manifest file. | 
| static class  | PackageDefinitionStrategy.ManifestReading.SealBaseLocator.ForTypeResourceUrlA seal base locator that imitates the behavior of a  URLClassLoader, i.e. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | FieldLocator.AbstractBaseAn abstract base implementation of a field locator. | 
| static class  | FieldLocator.ForClassHierarchyA field locator that looks up fields that are declared within a class's class hierarchy. | 
| static class  | FieldLocator.ForExactTypeA field locator that only looks up fields that are declared by a specific type. | 
| static class  | FieldLocator.ForExactType.FactoryA factory for creating a  FieldLocator.ForExactType. | 
| static class  | FieldLocator.Resolution.SimpleA simple implementation for a field resolution. | 
| static class  | FieldRegistry.DefaultAn immutable default implementation of a field registry. | 
| protected static class  | FieldRegistry.Default.CompiledA compiled default field registry. | 
| protected static class  | FieldRegistry.Default.Compiled.EntryAn entry of a compiled field registry. | 
| protected static class  | FieldRegistry.Default.EntryAn entry of the default field registry. | 
| static class  | MethodGraph.Compiler.Default<T>A default implementation of a method graph. | 
| protected static class  | MethodGraph.Compiler.Default.Key.Store<V>A store for collected methods that are identified by keys. | 
| static class  | MethodGraph.Compiler.Default.Key.Store.Entry.Ambiguous<U>An entry representing an ambiguous node resolution. | 
| protected static class  | MethodGraph.Compiler.Default.Key.Store.Entry.Ambiguous.NodeA node implementation representing an ambiguous method resolution. | 
| static class  | MethodGraph.Compiler.Default.Key.Store.Entry.Resolved<U>An entry representing a non-ambiguous node resolution. | 
| protected static class  | MethodGraph.Compiler.Default.Key.Store.Entry.Resolved.NodeA node implementation representing a non-ambiguous method. | 
| protected static class  | MethodGraph.Compiler.Default.Key.Store.GraphA graph implementation based on a key store. | 
| static class  | MethodGraph.Linked.DelegationA simple implementation of a linked method graph that exposes views by delegation to given method graphs. | 
| static class  | MethodGraph.Node.SimpleA simple implementation of a resolved node of a method without bridges. | 
| static class  | MethodGraph.SimpleA simple implementation of a method graph. | 
| static class  | MethodRegistry.DefaultA default implementation of a method registry. | 
| protected static class  | MethodRegistry.Default.CompiledA compiled version of a default method registry. | 
| protected static class  | MethodRegistry.Default.Compiled.EntryAn entry of a compiled method registry. | 
| protected static class  | MethodRegistry.Default.EntryAn entry of a default method registry. | 
| protected static class  | MethodRegistry.Default.PreparedA prepared version of a default method registry. | 
| protected static class  | MethodRegistry.Default.Prepared.EntryAn entry of a prepared method registry. | 
| static class  | MethodRegistry.Handler.ForAnnotationValueA handler for defining a default annotation value for a method. | 
| static class  | MethodRegistry.Handler.ForImplementationA handler for a method that is implemented as byte code. | 
| protected static class  | MethodRegistry.Handler.ForImplementation.CompiledA compiled handler for implementing a method. | 
| protected static class  | MethodRegistry.Handler.ForVisibilityBridge.CompiledA compiled handler for a visibility bridge handler. | 
| static class  | RecordComponentRegistry.DefaultAn immutable default implementation of a record component registry. | 
| protected static class  | RecordComponentRegistry.Default.CompiledA compiled default record component registry. | 
| protected static class  | RecordComponentRegistry.Default.Compiled.EntryAn entry of a compiled record component registry. | 
| protected static class  | RecordComponentRegistry.Default.EntryAn entry of the default record component registry. | 
| static class  | TypeInitializer.Drain.DefaultA default implementation of a type initializer drain that creates a initializer method. | 
| static class  | TypeInitializer.SimpleA simple, defined type initializer that executes a given  ByteCodeAppender. | 
| static class  | TypeWriter.Default<S>A default implementation of a  TypeWriter. | 
| protected static class  | TypeWriter.Default.ClassDumpActionAn action to write a class file to the dumping location. | 
| static class  | TypeWriter.Default.ClassDumpAction.Dispatcher.EnabledAn enabled dispatcher that dumps class files to a given folder. | 
| static class  | TypeWriter.Default.ForCreation<U>A type writer that creates a class file that is not based upon another, existing class. | 
| static class  | TypeWriter.Default.ForInlining<U>A type writer that inlines the created type into an existing class file. | 
| protected static class  | TypeWriter.Default.ForInlining.WithFullProcessing<V>A default type writer that reprocesses a type completely. | 
| protected class  | TypeWriter.Default.UnresolvedTypeAn unresolved type. | 
| static class  | TypeWriter.Default.ValidatingClassVisitor.Constraint.CompoundA constraint implementation that summarizes several constraints. | 
| static class  | TypeWriter.Default.ValidatingClassVisitor.Constraint.ForClassFileVersionRepresents the constraint implied by a class file version. | 
| static class  | TypeWriter.FieldPool.Record.ForExplicitFieldA record for a rich field with attributes and a potential default value. | 
| static class  | TypeWriter.FieldPool.Record.ForImplicitFieldA record for a simple field without a default value where all of the field's declared annotations are appended. | 
| static class  | TypeWriter.MethodPool.Record.AccessBridgeWrapperA wrapper that appends accessor bridges for a method's implementation. | 
| static class  | TypeWriter.MethodPool.Record.ForDefinedMethod.OfVisibilityBridgeA record for a visibility bridge. | 
| static class  | TypeWriter.MethodPool.Record.ForDefinedMethod.WithAnnotationDefaultValueDescribes an entry that defines a method with a default annotation value. | 
| static class  | TypeWriter.MethodPool.Record.ForDefinedMethod.WithBodyDescribes an entry that defines a method as byte code. | 
| static class  | TypeWriter.MethodPool.Record.ForDefinedMethod.WithoutBodyDescribes an entry that defines a method but without byte code and without an annotation value. | 
| static class  | TypeWriter.MethodPool.Record.ForNonImplementedMethodA canonical implementation of a method that is not declared but inherited by the instrumented type. | 
| static class  | TypeWriter.RecordComponentPool.Record.ForExplicitRecordComponentA record for a rich record component with attributes. | 
| static class  | TypeWriter.RecordComponentPool.Record.ForImplicitRecordComponentA record for a simple field without a default value where all of the record component's declared annotations are appended. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | AbstractInliningDynamicTypeBuilder<T>An abstract base implementation of a dynamic type builder that alters an existing type. | 
| class  | DecoratingDynamicTypeBuilder<T>A type builder that decorates a type by allowing for the application of attribute changes and ASM visitor wrappers. | 
| class  | InliningImplementationMatcherA latent method matcher that identifies methods to instrument when redefining or rebasing a type. | 
| static class  | MethodNameTransformer.PrefixingA method name transformer that adds a fixed prefix to an original method name. | 
| static class  | MethodNameTransformer.SuffixingA method name transformer that adds a fixed suffix to an original method name, separated by a  $. | 
| static class  | MethodRebaseResolver.DefaultA default implementation of a method rebase resolver. | 
| static class  | MethodRebaseResolver.Resolution.ForRebasedConstructorA  MethodRebaseResolver.Resolutionof a rebased constructor. | 
| static class  | MethodRebaseResolver.Resolution.ForRebasedMethodA  MethodRebaseResolver.Resolutionof a rebased method. | 
| static class  | MethodRebaseResolver.Resolution.PreservedA  MethodRebaseResolver.Resolutionof a non-rebased method. | 
| class  | RebaseDynamicTypeBuilder<T>A type builder that rebases an instrumented type. | 
| class  | RebaseImplementationTargetAn implementation target for redefining a given type while preserving the original methods within the
 instrumented type. | 
| static class  | RebaseImplementationTarget.FactoryA factory for creating a  RebaseImplementationTarget. | 
| Modifier and Type | Class and Description | 
|---|---|
| protected static class  | ConstructorStrategy.Default.WithMethodAttributeAppenderFactoryA wrapper for a default constructor strategy which additionally applies a method attribute appender factory. | 
| static class  | ConstructorStrategy.ForDefaultConstructorA constructor strategy that creates a default constructor that invokes a super constructor with default arguments. | 
| class  | SubclassDynamicTypeBuilder<T>A type builder that creates an instrumented type as a subclass, i.e. | 
| protected static class  | SubclassDynamicTypeBuilder.InstrumentableMatcherA matcher that locates all methods that are overridable and not ignored or that are directly defined on the instrumented type. | 
| class  | SubclassImplementationTargetAn implementation target for creating a subclass of a given type. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | DefaultMethodCallThis  Implementationinvokes a default method for the methods it instruments. | 
| protected static class  | DefaultMethodCall.AppenderThe appender for implementing a  DefaultMethodCall. | 
| class  | EqualsMethodAn implementation of  Object.equals(Object)that takes a class's declared fields into consideration. | 
| protected static class  | EqualsMethod.AppenderA byte code appender to implement the  EqualsMethod. | 
| protected static class  | EqualsMethod.CompoundComparatorA compound comparator that compares the values of multiple fields. | 
| protected static class  | EqualsMethod.ConditionalReturnA conditional return aborts the equality computation if a given condition was reached. | 
| static class  | EqualsMethod.NullValueGuard.UsingJumpA null value guard that expects a reference type and that skips the comparison if both values are  nullbut returns if
 the invoked instance's field value isnullbut not the compared instance's value. | 
| protected class  | EqualsMethod.NullValueGuard.UsingJump.AfterInstructionThe stack manipulation to apply after the equality computation. | 
| protected class  | EqualsMethod.NullValueGuard.UsingJump.BeforeInstructionThe stack manipulation to apply before the equality computation. | 
| class  | ExceptionMethodThis implementation causes a  Throwableto be thrown when the instrumented method is invoked. | 
| static class  | ExceptionMethod.ConstructionDelegate.ForDefaultConstructorA construction delegate that calls the default constructor. | 
| static class  | ExceptionMethod.ConstructionDelegate.ForStringConstructorA construction delegate that calls a constructor that takes a single string as its argument. | 
| class  | FieldAccessor
 Defines a method to access a given field by following the Java bean conventions for getters and setters: | 
| static class  | FieldAccessor.FieldLocation.AbsoluteAn absolute field description representing a previously resolved field. | 
| static class  | FieldAccessor.FieldLocation.RelativeA relative field location where a field is located dynamically. | 
| protected static class  | FieldAccessor.FieldLocation.Relative.PreparedA prepared version of a field location. | 
| static class  | FieldAccessor.FieldNameExtractor.ForFixedValueA field name extractor that returns a fixed value. | 
| protected class  | FieldAccessor.ForImplicitProperty.AppenderAn byte code appender for an field accessor implementation. | 
| protected static class  | FieldAccessor.ForSetter<T>A field accessor for a field setter. | 
| protected class  | FieldAccessor.ForSetter.AppenderAn appender to implement a field setter. | 
| protected static class  | FieldAccessor.ForSetter.OfConstantValueAn instrumentation that sets a constant value to a field. | 
| protected static class  | FieldAccessor.ForSetter.OfFieldValueA setter that reads a value of another field and sets this value. | 
| protected static class  | FieldAccessor.ForSetter.OfParameterValueA setter instrumentation for a parameter value. | 
| protected static class  | FieldAccessor.ForSetter.OfReferenceValueAn instrumentation that sets a field to a reference value that is stored in a static field of the instrumented type. | 
| class  | FixedValueThis implementation returns a fixed value for a method. | 
| protected static class  | FixedValue.ForArgumentA fixed value implementation that returns a method's argument. | 
| protected class  | FixedValue.ForOriginType.AppenderAn appender for writing the origin type. | 
| protected static class  | FixedValue.ForPoolValueA fixed value implementation that represents its fixed value as a value that is written to the instrumented
 class's constant pool. | 
| protected static class  | FixedValue.ForThisValue.AppenderA byte code appender for returning  this. | 
| protected static class  | FixedValue.ForValueA fixed value implementation that represents its fixed value as a static field of the instrumented class. | 
| class  | HashCodeMethodAn implementation of  Object.hashCode()that takes a class's declared fields into consideration. | 
| protected static class  | HashCodeMethod.AppenderA byte code appender to implement a hash code method. | 
| static class  | HashCodeMethod.NullValueGuard.UsingJumpA null value guard that expects a reference type and that uses a jump if a field value is  null. | 
| protected class  | HashCodeMethod.NullValueGuard.UsingJump.AfterInstructionThe stack manipulation to apply after the hash value computation. | 
| protected class  | HashCodeMethod.NullValueGuard.UsingJump.BeforeInstructionThe stack manipulation to apply before the hash value computation. | 
| static class  | HashCodeMethod.OffsetProvider.ForFixedValueAn offset provider that supplies a fixed value. | 
| static class  | Implementation.CompoundA compound implementation that allows to combine several implementations. | 
| static class  | Implementation.Compound.ComposableA compound implementation that allows to combine several implementations and that is  Implementation.Composable. | 
| protected static class  | Implementation.Context.Default.AccessorMethodDelegationAn implementation of a  TypeWriter.MethodPool.Recordfor implementing
 an accessor method. | 
| protected static class  | Implementation.Context.Default.DelegationRecordAn abstract method pool entry that delegates the implementation of a method to itself. | 
| protected static class  | Implementation.Context.Default.FieldGetterDelegationAn implementation for a field getter. | 
| protected static class  | Implementation.Context.Default.FieldSetterDelegationAn implementation for a field setter. | 
| static class  | Implementation.Context.ExtractableView.AbstractBaseAn abstract base implementation of an extractable view of an implementation context. | 
| static class  | Implementation.SimpleA simple implementation that does not register any members with the instrumented type. | 
| protected static class  | Implementation.Simple.ForDispatcherA  ByteCodeAppenderfor a dispatcher. | 
| protected class  | Implementation.Simple.ForDispatcher.AppenderAn appender for a dispatcher-based simple implementation. | 
| static class  | Implementation.Target.AbstractBaseAn abstract base implementation for an  Implementation.Target. | 
| class  | InvocationHandlerAdapterAn adapter for adapting an  InvocationHandler. | 
| protected static class  | InvocationHandlerAdapter.ForFieldAn implementation of an  InvocationHandlerAdapterthat delegates method
 invocations to an adapter that is stored in an instance field. | 
| protected class  | InvocationHandlerAdapter.ForField.AppenderAn appender for implementing the  InvocationHandlerAdapter.ForField. | 
| protected static class  | InvocationHandlerAdapter.ForInstanceAn implementation of an  InvocationHandlerAdapterthat delegates method
 invocations to an adapter that is stored in a static field. | 
| protected class  | InvocationHandlerAdapter.ForInstance.AppenderAn appender for implementing the  InvocationHandlerAdapter.ForInstance. | 
| class  | InvokeDynamicAn implementation that applies a
 dynamic method invocation. | 
| protected class  | InvokeDynamic.AppenderThe byte code appender to be used by the  InvokeDynamicimplementation. | 
| protected class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ConstantPoolWrapper.WrappingArgumentProviderAn argument provider that loads a primitive value from the constant pool and wraps it. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForBooleanConstantAn argument provider for a  booleanvalue. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForByteConstantAn argument provider for a  bytevalue. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForCharacterConstantAn argument provider for a  charvalue. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForClassConstantAn argument provider for a  Classconstant. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForDoubleConstantAn argument provider for a  doublevalue. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForEnumerationValueAn argument provider for an  Enumconstant. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForFieldProvides an argument from an existing field. | 
| protected static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForField.WithExplicitTypeAn argument provider for a field value with an explicit type. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForFloatConstantAn argument provider for a  floatvalue. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForInstanceAn argument provider for a value that is stored in a randomly named static field. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForIntegerConstantAn argument provider for a  intvalue. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForJavaConstantAn argument provider for a Java instance. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForLongConstantAn argument provider for a  longvalue. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForMethodParameterAn argument provider that loads an argument of the intercepted method. | 
| protected static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForMethodParameter.WithExplicitTypeAn argument provider for a method parameter with an explicit type. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForNullValueAn argument provider for the  nullvalue. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForShortConstantAn argument provider for a  shortvalue. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForStringConstantAn argument provider for a  Stringvalue. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.ForThisInstanceAn argument provider that loads the intercepted instance. | 
| static class  | InvokeDynamic.InvocationProvider.ArgumentProvider.Resolved.SimpleA simple implementation of a resolved argument provider. | 
| static class  | InvokeDynamic.InvocationProvider.DefaultAn invocation provider that requests a synthetic dynamic invocation where all arguments are explicitly
 provided by the user. | 
| protected static class  | InvokeDynamic.InvocationProvider.Default.TargetA target for a synthetically bound method call. | 
| static class  | InvokeDynamic.InvocationProvider.NameProvider.ForExplicitNameA name provider that provides an explicit name. | 
| static class  | InvokeDynamic.InvocationProvider.ReturnTypeProvider.ForExplicitTypeRequests an explicit return type. | 
| static class  | InvokeDynamic.InvocationProvider.Target.Resolved.SimpleA simple implementation of
  InvokeDynamic.InvocationProvider.Target.Resolved. | 
| static class  | LoadedTypeInitializer.CompoundA compound loaded type initializer that combines several type initializers. | 
| static class  | LoadedTypeInitializer.ForStaticFieldA type initializer for setting a value for a static field. | 
| class  | MethodCallThis  Implementationallows the invocation of a specified method while
 providing explicit arguments to this method. | 
| protected class  | MethodCall.AppenderThe appender being used to implement a  MethodCall. | 
| static class  | MethodCall.ArgumentLoader.ForFieldLoads the value of an existing field onto the operand stack. | 
| protected static class  | MethodCall.ArgumentLoader.ForField.ArgumentProviderAn argument provider for a field access. | 
| protected static class  | MethodCall.ArgumentLoader.ForField.FactoryA factory for an argument loaded that loads the value of an existing field as an argument. | 
| static class  | MethodCall.ArgumentLoader.ForInstanceLoads a value onto the operand stack that is stored in a static field. | 
| protected static class  | MethodCall.ArgumentLoader.ForInstance.FactoryA factory that supplies the value of a static field as an argument. | 
| static class  | MethodCall.ArgumentLoader.ForInstrumentedTypeLoads the instrumented type onto the operand stack. | 
| static class  | MethodCall.ArgumentLoader.ForMethodCallLoads the return value of a method call onto the operand stack. | 
| protected static class  | MethodCall.ArgumentLoader.ForMethodCall.ArgumentProviderAn argument provider for a method call. | 
| protected static class  | MethodCall.ArgumentLoader.ForMethodCall.FactoryA factory for an argument loaded that loads the return value of a method call as an argument. | 
| static class  | MethodCall.ArgumentLoader.ForMethodParameterLoads a parameter of the instrumented method onto the operand stack. | 
| protected static class  | MethodCall.ArgumentLoader.ForMethodParameter.FactoryA factory for an argument loader that supplies a method parameter as an argument. | 
| static class  | MethodCall.ArgumentLoader.ForMethodParameterArrayLoads an array containing all arguments of a method. | 
| static class  | MethodCall.ArgumentLoader.ForMethodParameterArrayElementAn argument loader that loads an element of a parameter of an array type. | 
| static class  | MethodCall.ArgumentLoader.ForMethodParameterArrayElement.OfInvokedMethodAn argument loader factory that loads an array element from a parameter for each argument of the invoked method. | 
| static class  | MethodCall.ArgumentLoader.ForMethodParameterArrayElement.OfParameterCreates an argument loader for an array element that of a specific parameter. | 
| static class  | MethodCall.ArgumentLoader.ForStackManipulationLoads a stack manipulation resulting in a specific type as an argument. | 
| static class  | MethodCall.ArgumentLoader.ForThisReferenceAn argument loader that assigns the  thisreference to a parameter. | 
| static class  | MethodCall.FieldSettingA  MethodCallthat sets the call's result as the value of a field. | 
| static class  | MethodCall.MethodInvoker.ForContextualInvocationApplies a contextual invocation of the provided method, i.e. | 
| static class  | MethodCall.MethodInvoker.ForDefaultMethodInvocationInvokes a method as a Java 8 default method. | 
| static class  | MethodCall.MethodInvoker.ForSuperMethodInvocationApplies a super method invocation of the provided method. | 
| static class  | MethodCall.MethodInvoker.ForVirtualInvocationApplies a virtual invocation on a given type. | 
| protected static class  | MethodCall.MethodInvoker.ForVirtualInvocation.FactoryA method invoker factory for a virtual method invocation. | 
| static class  | MethodCall.MethodLocator.ForElementMatcherA method locator that identifies a unique virtual method. | 
| static class  | MethodCall.MethodLocator.ForElementMatcher.FactoryA factory for a method locator that uses a matcher on the instrumented type's available methods for identifing a target method. | 
| static class  | MethodCall.MethodLocator.ForExplicitMethodInvokes a given method. | 
| static class  | MethodCall.TargetHandler.ForConstructingInvocationInvokes a method in order to construct a new instance. | 
| static class  | MethodCall.TargetHandler.ForFieldCreates a target handler that stores the instance to invoke a method on in an instance field. | 
| protected static class  | MethodCall.TargetHandler.ForField.FactoryA factory for a field access. | 
| static class  | MethodCall.TargetHandler.ForField.Location.ForExplicitFieldAn explicit field location. | 
| static class  | MethodCall.TargetHandler.ForField.Location.ForImplicitFieldAn implicit field location. | 
| static class  | MethodCall.TargetHandler.ForMethodCallA target handler that executes the method and uses it's return value as the target object. | 
| protected static class  | MethodCall.TargetHandler.ForMethodCall.FactoryCreates a factory for invoking a method on the return type of another method. | 
| protected static class  | MethodCall.TargetHandler.ForMethodCall.ResolvedA resolved target handler for a method call. | 
| static class  | MethodCall.TargetHandler.ForMethodParameterA target handler that loads the parameter of the given index as the target object. | 
| protected static class  | MethodCall.TargetHandler.ForMethodParameter.ResolvedA resolved target handler for a method parameter. | 
| static class  | MethodCall.TargetHandler.ForSelfOrStaticInvocationA target handler that invokes a method either on the instance of the instrumented
 type or as a static method. | 
| protected static class  | MethodCall.TargetHandler.ForSelfOrStaticInvocation.ResolvedA resolved target handler for a static or self-declared invocation. | 
| static class  | MethodCall.TargetHandler.ForValueA target handler that invokes a method on an instance that is stored in a static field. | 
| protected static class  | MethodCall.TargetHandler.ForValue.FactoryA factory for a target handler that loads a specific value. | 
| static class  | MethodCall.TargetHandler.SimpleA simple target handler that applies a given stack manipulation. | 
| static class  | MethodCall.TerminationHandler.FieldSettingA termination handler that sets a field. | 
| protected static class  | MethodCall.TerminationHandler.FieldSetting.ExplicitA factory for a field-setting termination handler that locates a given field. | 
| protected static class  | MethodCall.TerminationHandler.FieldSetting.ImplicitA factory for a field-setting termination handler that uses a matcher to locate the target field on the insturmented type. | 
| class  | MethodDelegationThis implementation delegates an method call to another method which can either be  staticby providing
 a reference to aClassor an instance method when another object is provided. | 
| protected static class  | MethodDelegation.AppenderThe appender for implementing a  MethodDelegation. | 
| static class  | MethodDelegation.ImplementationDelegate.Compiled.ForConstructionA compiled implementation delegate for a constructor delegation. | 
| static class  | MethodDelegation.ImplementationDelegate.Compiled.ForFieldA compiled implementation delegate that invokes methods on a field. | 
| static class  | MethodDelegation.ImplementationDelegate.Compiled.ForMethodReturnA compiled implementation delegate that invokes a method on an instance that is returned by another method. | 
| static class  | MethodDelegation.ImplementationDelegate.Compiled.ForStaticCallA compiled implementation delegate for invoking a static method. | 
| static class  | MethodDelegation.ImplementationDelegate.ForConstructionAn implementation delegate for constructing an instance. | 
| static class  | MethodDelegation.ImplementationDelegate.ForFieldAn implementation delegate for invoking methods on a field that is declared by the instrumented type or a super type. | 
| protected static class  | MethodDelegation.ImplementationDelegate.ForField.WithInstanceAn implementation target for a static field that is declared by the instrumented type and that is assigned an instance. | 
| protected static class  | MethodDelegation.ImplementationDelegate.ForField.WithLookupAn implementation target for a field that is declared by the instrumented type or a super type. | 
| static class  | MethodDelegation.ImplementationDelegate.ForMethodReturnAn implementation delegate for invoking a delegation target on the another methods return value. | 
| static class  | MethodDelegation.ImplementationDelegate.ForStaticMethodAn implementation delegate for a static method delegation. | 
| static class  | MethodDelegation.WithCustomPropertiesA  MethodDelegationwith custom configuration. | 
| protected static class  | SuperMethodCall.AppenderAn appender for implementing a  SuperMethodCall. | 
| class  | ToStringMethodAn implementation of  Object.toString()that concatenates theStringrepresentation of all fields that are declared by a class. | 
| protected static class  | ToStringMethod.AppenderAn appender to implement  ToStringMethod. | 
| static class  | ToStringMethod.PrefixResolver.ForFixedValueA prefix resolver that returns a fixed value. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | AnnotationAppender.DefaultA default implementation for an annotation appender that writes annotations to a given byte consumer
 represented by an ASM  AnnotationVisitor. | 
| static class  | AnnotationAppender.ForTypeAnnotationsA type visitor that visits all type annotations of a generic type and writes any discovered annotation to a
 supplied  AnnotationAppender. | 
| static class  | AnnotationAppender.Target.OnFieldTarget for an annotation that is written to a Java field. | 
| static class  | AnnotationAppender.Target.OnMethodTarget for an annotation that is written to a Java method or constructor. | 
| static class  | AnnotationAppender.Target.OnMethodParameterTarget for an annotation that is written to a Java method or constructor parameter. | 
| static class  | AnnotationAppender.Target.OnRecordComponentTarget for an annotation that is written to a Java record component. | 
| static class  | AnnotationAppender.Target.OnTypeTarget for an annotation that is written to a Java type. | 
| static class  | FieldAttributeAppender.CompoundA field attribute appender that combines several method attribute appenders to be represented as a single
 field attribute appender. | 
| static class  | FieldAttributeAppender.ExplicitAppends an annotation to a field. | 
| static class  | FieldAttributeAppender.Factory.CompoundA field attribute appender factory that combines several field attribute appender factories to be
 represented as a single factory. | 
| static class  | MethodAttributeAppender.CompoundA method attribute appender that combines several method attribute appenders to be represented as a single
 method attribute appender. | 
| static class  | MethodAttributeAppender.ExplicitAppends an annotation to a method or method parameter. | 
| static class  | MethodAttributeAppender.Explicit.Target.OnMethodParameterA method attribute appender target for writing annotations onto a given method parameter. | 
| static class  | MethodAttributeAppender.Factory.CompoundA method attribute appender factory that combines several method attribute appender factories to be
 represented as a single factory. | 
| static class  | MethodAttributeAppender.ForReceiverTypeA method attribute appender that writes a receiver type. | 
| static class  | RecordComponentAttributeAppender.CompoundA record component attribute appender that combines several method attribute appenders to be represented as a single
 record component attribute appender. | 
| static class  | RecordComponentAttributeAppender.ExplicitAppends an annotation to a record component. | 
| static class  | RecordComponentAttributeAppender.Factory.CompoundA record component attribute appender factory that combines several record component attribute appender factories to be
 represented as a single factory. | 
| static class  | TypeAttributeAppender.CompoundA compound type attribute appender that concatenates a number of other attribute appenders. | 
| static class  | TypeAttributeAppender.ExplicitAn attribute appender that appends a single annotation to a given type. | 
| static class  | TypeAttributeAppender.ForInstrumentedType.DifferentiatingA type attribute appender that writes all annotations of the instrumented but excludes annotations up to
 a given index. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | AuxiliaryType.NamingStrategy.SuffixingRandomA naming strategy for an auxiliary type which returns the instrumented type's name with a fixed extension
 and a random number as a suffix. | 
| class  | MethodCallProxyA method call proxy represents a class that is compiled against a particular method which can then be called whenever
 either its  Callable.call()orRunnable.run()method is called where the method
 call proxy implements both interfaces. | 
| static class  | MethodCallProxy.AssignableSignatureCallA stack manipulation that creates a  MethodCallProxyfor a given method an pushes such an object onto the call stack. | 
| protected static class  | MethodCallProxy.ConstructorCall.AppenderThe appender for implementing the  MethodCallProxy.ConstructorCall. | 
| protected static class  | MethodCallProxy.MethodCallAn implementation for a method of a  MethodCallProxy. | 
| protected class  | MethodCallProxy.MethodCall.AppenderThe appender for implementing the  MethodCallProxy.MethodCall. | 
| class  | TypeProxyA type proxy creates accessor methods for all overridable methods of a given type by subclassing the given type and
 delegating all method calls to accessor methods of the instrumented type it was created for. | 
| static class  | TypeProxy.ForDefaultMethodCreates a type proxy which delegates its super method calls to any invokable default method of
 a given interface and loads an instance of this proxy onto the operand stack. | 
| static class  | TypeProxy.ForSuperMethodByConstructorLoads a type proxy onto the operand stack which is created by calling one of its constructors. | 
| static class  | TypeProxy.ForSuperMethodByReflectionFactoryLoads a type proxy onto the operand stack which is created by constructing a serialization constructor using
 the Oracle JDK's  ReflectionFactory.newConstructorForSerialization(Class, java.lang.reflect.Constructor)method which might not be available in any Java runtime. | 
| protected class  | TypeProxy.MethodCallAn implementation for a method call of a  TypeProxy. | 
| protected class  | TypeProxy.MethodCall.AppenderImplementation of a byte code appender for a  TypeProxy.MethodCall. | 
| protected class  | TypeProxy.MethodCall.Appender.AccessorMethodInvocationStack manipulation for invoking an accessor method. | 
| protected static class  | TypeProxy.SilentConstruction.AppenderThe appender for implementing a  TypeProxy.SilentConstruction. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | MethodDelegationBinder.AmbiguityResolver.CompoundA chain of  MethodDelegationBinder.AmbiguityResolvers
 that are applied in the given order until two bindings can be resolved. | 
| static class  | MethodDelegationBinder.BindingResolver.StreamWritingBinds a method using another resolver and prints the selected binding to a  PrintStream. | 
| protected static class  | MethodDelegationBinder.MethodBinding.Builder.BuildA method binding that was created by a
  MethodDelegationBinder.MethodBinding.Builder. | 
| static class  | MethodDelegationBinder.MethodInvoker.VirtualA method invocation that enforces a virtual invocation that is dispatched on a given type. | 
| static class  | MethodDelegationBinder.ParameterBinding.AnonymousAn anonymous binding of a target method parameter. | 
| static class  | MethodDelegationBinder.ParameterBinding.Unique<T>A uniquely identifiable parameter binding for a target method. | 
| static class  | MethodDelegationBinder.ProcessorA helper class that allows to identify a best binding for a given type and source method choosing from a list of given
 target methods by using a given  MethodDelegationBinderand anMethodDelegationBinder.AmbiguityResolver. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | Default.Binder.TypeLocator.ForTypeA type locator that returns a given type. | 
| static class  | DefaultCall.Binder.DefaultMethodLocator.ExplicitAn explicit default method locator attempts to look up a default method in the specified interface type. | 
| protected static class  | DefaultMethod.Binder.DelegationMethodLoads the delegation method constant onto the stack. | 
| static class  | DefaultMethod.Binder.MethodLocator.ForExplicitTypeA method locator for an explicit target type. | 
| static class  | FieldProxy.BinderA binder for the  FieldProxyannotation. | 
| protected class  | FieldProxy.Binder.AccessorProxyA proxy type for accessing a field either by a getter or a setter. | 
| protected static class  | FieldProxy.Binder.FieldGetterImplementation for a getter method. | 
| protected class  | FieldProxy.Binder.FieldGetter.AppenderA byte code appender for a getter method. | 
| static class  | FieldProxy.Binder.FieldResolver.Factory.DuplexA duplex factory for a type that both sets and gets a field value. | 
| static class  | FieldProxy.Binder.FieldResolver.Factory.SimplexA simplex factory where field getters and setters both have their own type. | 
| static class  | FieldProxy.Binder.FieldResolver.ForGetterA field resolver for a getter accessor. | 
| static class  | FieldProxy.Binder.FieldResolver.ForGetterSetterPairA field resolver for an accessor that both gets and sets a field value. | 
| static class  | FieldProxy.Binder.FieldResolver.ForSetterA field resolver for a setter accessor. | 
| protected static class  | FieldProxy.Binder.FieldSetterImplementation for a setter method. | 
| protected class  | FieldProxy.Binder.FieldSetter.AppenderA byte code appender for a setter method. | 
| protected static class  | FieldProxy.Binder.InstanceFieldConstructorRepresents an implementation for implementing a proxy type constructor when a non-static field is accessed. | 
| protected static class  | FieldProxy.Binder.InstanceFieldConstructor.AppenderAn appender for implementing an
  FieldProxy.Binder.InstanceFieldConstructor. | 
| static class  | Morph.BinderA binder for the  Morphannotation. | 
| static class  | Morph.Binder.DefaultMethodLocator.ExplicitAn explicit default method locator attempts to look up a default method in the specified interface type. | 
| protected static class  | Morph.Binder.RedirectionProxyA proxy that implements the installed interface in order to allow for a morphed super method invocation. | 
| protected static class  | Morph.Binder.RedirectionProxy.InstanceFieldConstructorCreates an instance of the proxy when instrumenting an instance method. | 
| protected static class  | Morph.Binder.RedirectionProxy.InstanceFieldConstructor.AppenderThe byte code appender that implements the constructor. | 
| protected static class  | Morph.Binder.RedirectionProxy.MethodCallImplements a the method call of the morphing method. | 
| protected class  | Morph.Binder.RedirectionProxy.MethodCall.AppenderThe byte code appender to implement the method. | 
| static class  | Pipe.BinderA  TargetMethodAnnotationDrivenBinder.ParameterBinderfor binding thePipeannotation. | 
| protected static class  | Pipe.Binder.RedirectionAn auxiliary type for performing the redirection of a method invocation as requested by the
  Pipeannotation. | 
| protected static class  | Pipe.Binder.Redirection.MethodCallThe implementation to implement a
  Pipe.Binder.Redirection's
 forwarding method. | 
| static class  | Super.Binder.TypeLocator.ForTypeA type locator that returns a given type. | 
| protected static class  | SuperMethod.Binder.DelegationMethodLoads the delegation method constant onto the stack. | 
| class  | TargetMethodAnnotationDrivenBinderThis  MethodDelegationBinderbinds
 method by analyzing annotations found on the target method that is subject to a method binding. | 
| protected static class  | TargetMethodAnnotationDrivenBinder.DelegationProcessorA delegation processor is a helper class for a
  TargetMethodAnnotationDrivenBinderfor performing its actual logic. | 
| static class  | TargetMethodAnnotationDrivenBinder.DelegationProcessor.Handler.Bound<T extends Annotation>A bound handler represents an unambiguous parameter binder that was located for a given array of
 annotations. | 
| static class  | TargetMethodAnnotationDrivenBinder.DelegationProcessor.Handler.UnboundAn unbound handler is a fallback for returning an illegal binding for parameters for which no parameter
 binder could be located. | 
| static class  | TargetMethodAnnotationDrivenBinder.ParameterBinder.ForFixedValue.OfConstant<U extends Annotation>
 A parameter binder that binds a fixed value to a parameter annotation when using a  MethodDelegation. | 
| protected static class  | TargetMethodAnnotationDrivenBinder.RecordA compiled record of a target method annotation-driven binder. | 
| Modifier and Type | Class and Description | 
|---|---|
| static class  | ByteCodeAppender.CompoundA compound appender that combines a given number of other byte code appenders. | 
| static class  | ByteCodeAppender.SimpleA simple byte code appender that only represents a given array of
  StackManipulations. | 
| static class  | ByteCodeAppender.SizeAn immutable description of both the operand stack size and the size of the local variable array that is
 required to run the code generated by this  ByteCodeAppender. | 
| static class  | StackManipulation.CompoundAn immutable stack manipulation that aggregates a sequence of other stack manipulations. | 
| static class  | StackManipulation.SimpleAn implementation of  StackManipulationthat simplifies functional invocations via lambda expressions. | 
| static class  | StackManipulation.SizeA description of the size change that is imposed by some
  StackManipulation. | 
| class  | TypeCreationA stack manipulation for creating an undefined type on which a constructor is to be called. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | InstanceCheckImplements an  instanceofcheck. | 
| class  | TypeCastingA stack manipulation for a type down casting. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | PrimitiveTypeAwareAssignerThis assigner is able to handle non- void, primitive types. | 
| protected static class  | PrimitiveUnboxingDelegate.ImplicitlyTypedUnboxingResponsibleAn unboxing responsible for an implicitly typed value. | 
| protected static class  | PrimitiveWideningDelegate.WideningStackManipulationA stack manipulation that widens a primitive type into a more general primitive type. | 
| class  | VoidAwareAssignerThis assigner is able to handle the  voidtype. | 
| Modifier and Type | Class and Description | 
|---|---|
| protected static class  | GenericTypeAwareAssigner.IsAssignableToVisitorA visitor for generic types that determines assignability of such types. | 
| protected static class  | GenericTypeAwareAssigner.IsAssignableToVisitor.OfManifestTypeAn implementation of a assignability visitor that is applicable for any non-wildcard type. | 
| protected static class  | GenericTypeAwareAssigner.IsAssignableToVisitor.OfWildcardA visitor to determine the assignability of a wildcard type. | 
| Modifier and Type | Class and Description | 
|---|---|
| protected class  | ArrayAccess.LoaderA stack manipulation for loading an array's value. | 
| protected class  | ArrayAccess.PutterA stack manipulation for storing an array's value. | 
| class  | ArrayFactoryA  CollectionFactorythat is capable of
 creating an array of a given type with any number of given values. | 
| static class  | ArrayFactory.ArrayCreator.ForReferenceTypeAn array creator implementation for reference types. | 
| protected class  | ArrayFactory.ArrayStackManipulationA stack manipulation for creating an array as defined by the enclosing array factory. | 
| Modifier and Type | Class and Description | 
|---|---|
| protected static class  | ClassConstant.ForReferenceTypeA class constant for a non-primitive  Class. | 
| protected static class  | DoubleConstant.ConstantPoolA stack manipulation for loading a  doublevalue from a class's constant pool onto the operand stack. | 
| protected static class  | FloatConstant.ConstantPoolA stack manipulation for loading a  floatvalue from a class's constant pool onto the operand stack. | 
| protected static class  | IntegerConstant.ConstantPoolA stack manipulation that loads a JVM-integer value from a constant pool value onto the operand stack. | 
| protected static class  | IntegerConstant.SingleBytePushA stack manipulation that loads a JVM-integer value by a  BIPUSHoperation which is
 legal for single byte integer values. | 
| protected static class  | IntegerConstant.TwoBytePushA stack manipulation that loads a JVM-integer value by a  SIPUSHoperation which is
 legal for up to two byte integer values. | 
| class  | JavaConstantValueA constant representing a  JavaConstant. | 
| protected static class  | LongConstant.ConstantPoolA stack manipulation for loading a  longvalue from a class's constant pool onto the operand stack. | 
| class  | SerializedConstantA constant that represents a value in its serialized form. | 
| class  | TextConstantRepresents a  Stringvalue that is stored in a type's constant pool. | 
| Modifier and Type | Class and Description | 
|---|---|
| protected class  | FieldAccess.AccessDispatcherA dispatcher for implementing a non-generic read or write access on a field. | 
| protected class  | FieldAccess.AccessDispatcher.FieldGetInstructionA reading field access operation. | 
| protected class  | FieldAccess.AccessDispatcher.FieldPutInstructionA writing field access operation. | 
| protected static class  | FieldAccess.OfGenericFieldA dispatcher for implementing a generic read or write access on a field. | 
| class  | HandleInvocationAn exact invocation of a method handle with a polymorphic signature. | 
| protected class  | MethodInvocation.DynamicInvocationPerforms a dynamic method invocation of the given method. | 
| protected static class  | MethodInvocation.HandleInvocationPerforms a method invocation on a method handle with a polymorphic type signature. | 
| protected class  | MethodInvocation.InvocationAn implementation of a method invoking stack manipulation. | 
| protected static class  | MethodInvocation.OfGenericMethodA method invocation of a generically resolved method. | 
| static class  | MethodVariableAccess.MethodLoadingA stack manipulation that loads all parameters of a given method onto the operand stack. | 
| static class  | MethodVariableAccess.MethodLoading.TypeCastingHandler.ForBridgeTargetA type casting handler that casts all parameters of a method to the parameter types of a compatible method
 with covariant parameter types. | 
| protected static class  | MethodVariableAccess.OffsetIncrementingA stack manipulation that increments an integer variable. | 
| protected class  | MethodVariableAccess.OffsetLoadingA stack manipulation for loading a variable of a method's local variable array onto the operand stack. | 
| protected class  | MethodVariableAccess.OffsetWritingA stack manipulation for storing a variable into a method's local variable array. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | AccessibilityMatcher<T extends ByteCodeElement>An element matcher that validates that a given byte code element is accessible to a given type. | 
| class  | AnnotationTargetMatcher<T extends AnnotationDescription>A matcher for annotations that target a given element type. | 
| class  | AnnotationTypeMatcher<T extends AnnotationDescription>An element matcher that matches the type of an annotation description. | 
| class  | ArrayTypeMatcher<T extends TypeDefinition>Matches an enumeration type. | 
| class  | BooleanMatcher<T>An element matcher that returns a fixed result. | 
| class  | CachingMatcher<T>A matcher that remembers the results of previously matching an equal target. | 
| class  | ClassLoaderHierarchyMatcher<T extends ClassLoader>An element matcher that matches all  ClassLoaders in the matched class loaders hierarchy
 against a given matcher. | 
| class  | ClassLoaderParentMatcher<T extends ClassLoader>An element matcher that matches a class loader for being a parent of the given class loader. | 
| class  | CollectionElementMatcher<T>A matcher that matches a given element of a collection. | 
| class  | CollectionErasureMatcher<T extends Iterable<? extends TypeDefinition>>An element matcher that matches a collection of types by their erasures. | 
| class  | CollectionItemMatcher<T>A list item matcher matches any element of a collection to a given matcher and assures that at least one
 element matches the supplied iterable condition. | 
| class  | CollectionOneToOneMatcher<T>An element matcher that matches a given iterable collection to a list of matchers on a per-element basis. | 
| class  | CollectionSizeMatcher<T extends Iterable<?>>An element matcher that matches a collection by its size. | 
| class  | DeclaringAnnotationMatcher<T extends AnnotationSource>An element matcher that matches the list of annotations that are provided by an annotated element. | 
| class  | DeclaringFieldMatcher<T extends TypeDefinition>An element matcher that checks if a type description declares fields of a given property. | 
| class  | DeclaringMethodMatcher<T extends TypeDefinition>An element matcher that checks if a type description declares methods of a given property. | 
| class  | DeclaringTypeMatcher<T extends DeclaredByType>An element matcher that matches the declaring type of another element, only if this element is actually declared
 in a type. | 
| class  | DefinedShapeMatcher<T extends ByteCodeElement.TypeDependant<S,?>,S extends ByteCodeElement.TypeDependant<?,?>>An element matcher that matches a byte code's element's token against a matcher for such a token. | 
| class  | DescriptorMatcher<T extends NamedElement.WithDescriptor>An element matcher that matches a Java descriptor. | 
| static class  | ElementMatcher.Junction.Conjunction<W>A conjunction matcher which only matches an element if both represented matchers constitute a match. | 
| static class  | ElementMatcher.Junction.Disjunction<W>A disjunction matcher which only matches an element if both represented matchers constitute a match. | 
| class  | EqualityMatcher<T>An element matcher that checks an object's equality to another object. | 
| class  | ErasureMatcher<T extends TypeDefinition>An element matcher that matches its argument's  TypeDescription.Genericraw type against the
 given matcher for aTypeDescription. | 
| class  | FailSafeMatcher<T>A fail-safe matcher catches exceptions that are thrown by a delegate matcher and returns an alternative value. | 
| class  | FieldTypeMatcher<T extends FieldDescription>An element matcher that matches a field's type. | 
| class  | HasSuperClassMatcher<T extends TypeDescription>An element matcher that matches a super class. | 
| class  | HasSuperTypeMatcher<T extends TypeDescription>An element matcher that matches a super type. | 
| class  | InheritedAnnotationMatcher<T extends TypeDescription>An element matcher that matches the list of inherited annotations of a type description. | 
| class  | InstanceTypeMatcher<T>An element matcher that matches an object's type. | 
| class  | IsNamedMatcher<T extends NamedElement.WithOptionalName>An element matcher that matches a named element only if is explicitly named. | 
| static class  | LatentMatcher.Conjunction<S>A matcher that computes the conjunction of all supplied latent matchers. | 
| static class  | LatentMatcher.Disjunction<S>A matcher that computes the disjunction of all supplied latent matchers. | 
| static class  | LatentMatcher.ForFieldTokenA latent matcher where the field token is being attached to the supplied type description before matching. | 
| protected static class  | LatentMatcher.ForFieldToken.ResolvedMatcherA resolved matcher of a latent field matcher for a field token. | 
| static class  | LatentMatcher.ForMethodTokenA latent matcher where the method token is being attached to the supplied type description before matching. | 
| protected static class  | LatentMatcher.ForMethodToken.ResolvedMatcherA resolved matcher of a latent method matcher for a method token. | 
| static class  | LatentMatcher.ForRecordComponentTokenA latent matcher for a record component token. | 
| static class  | LatentMatcher.Resolved<S>A latent matcher representing an already resolved  ElementMatcher. | 
| class  | MethodExceptionTypeMatcher<T extends MethodDescription>An element matcher that matches the exceptions that are declared by a method. | 
| class  | MethodOverrideMatcher<T extends MethodDescription>A matcher that checks if any super type of a type declares a method with the same shape of a matched method. | 
| class  | MethodParametersMatcher<T extends MethodDescription>An element matcher that matches a method's parameters. | 
| class  | MethodParameterTypeMatcher<T extends ParameterDescription>An element matcher that matches a method's parameter's type. | 
| class  | MethodParameterTypesMatcher<T extends ParameterList<?>>An element matcher that matches a method's parameter types. | 
| class  | MethodReturnTypeMatcher<T extends MethodDescription>An element matcher that matches its argument's return type against a given type matcher. | 
| class  | MethodSortMatcher<T extends MethodDescription>Matches a method description by its general characteristics which are represented as a
  MethodSortMatcher.Sort. | 
| class  | ModifierMatcher<T extends ModifierReviewable>An element matcher that matches a byte code element by its modifiers. | 
| 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 dollar signs 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  | NegatingMatcher<T>An element matcher that reverses the matching result of another matcher. | 
| class  | NullMatcher<T>An element matcher that matches the  nullvalue. | 
| class  | PrimitiveTypeMatcher<T extends TypeDefinition>Matches a primitive type. | 
| class  | RecordMatcher<T extends TypeDefinition>Matches a record. | 
| class  | SignatureTokenMatcher<T extends MethodDescription>Matches a method description's signature token against another matcher. | 
| class  | StringMatcherAn element matcher that compares two strings by a given pattern which is characterized by a
  StringMatcher.Mode. | 
| class  | StringSetMatcherAn element matcher which checks if a string is in a set of strings. | 
| class  | SubTypeMatcher<T extends TypeDescription>An element matcher that matches its argument for being another type's subtype. | 
| class  | SuperTypeMatcher<T extends TypeDescription>An element matcher that matches its argument for being another type's super type. | 
| class  | TypeSortMatcher<T extends TypeDefinition>An element matcher that validates that a given generic type description represents a type of a given name. | 
| 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 | Class and Description | 
|---|---|
| static class  | TypePool.AbstractBaseA base implementation of a  TypePoolthat is managing a cache provider and
 that handles the description of array and primitive types. | 
| protected static class  | TypePool.AbstractBase.ArrayTypeResolutionA resolution for a type that, if resolved, represents an array type. | 
| static class  | TypePool.AbstractBase.HierarchicalImplements a hierarchical view of type pools, similarly to class loader hierarchies. | 
| static class  | TypePool.ClassLoadingA type pool that attempts to load a class. | 
| static class  | TypePool.Default
 A default implementation of a  TypePoolthat models binary data in the Java byte code format
 into aTypeDescription. | 
| static class  | TypePool.Default.ComponentTypeLocator.ForAnnotationPropertyA component type locator that lazily analyses an annotation for resolving an annotation property's
 array value's component type. | 
| protected class  | TypePool.Default.ComponentTypeLocator.ForAnnotationProperty.BoundA bound representation of a
  TypePool.Default.ComponentTypeLocator.ForAnnotationProperty. | 
| static class  | TypePool.Default.ComponentTypeLocator.ForArrayTypeA component type locator that locates an array type by a method's return value from its method descriptor. | 
| protected class  | TypePool.Default.GenericTypeExtractor.ForSignature.OfMethod.ExceptionTypeRegistrantA registrant for an exception type. | 
| protected class  | TypePool.Default.GenericTypeExtractor.ForSignature.OfMethod.ParameterTypeRegistrantA registrant for a parameter type. | 
| protected class  | TypePool.Default.GenericTypeExtractor.ForSignature.OfMethod.ReturnTypeTypeRegistrantA registrant for a return type. | 
| protected class  | TypePool.Default.GenericTypeExtractor.ForSignature.OfType.InterfaceTypeRegistrantA registrant for the interface types. | 
| protected class  | TypePool.Default.GenericTypeExtractor.ForSignature.OfType.SuperClassRegistrantA registrant for the super type. | 
| static class  | TypePool.Default.GenericTypeExtractor.IncompleteToken.ForInnerClassAn incomplete generic type token representing a type with an outer type. | 
| static class  | TypePool.Default.GenericTypeExtractor.IncompleteToken.ForTopLevelTypeAn incomplete token representing a generic type without an outer type. | 
| protected static class  | TypePool.Default.LazyTypeDescription.AnnotationTokenA token for representing collected data on an annotation. | 
| static class  | TypePool.Default.LazyTypeDescription.AnnotationToken.Resolution.IllegalAn illegal resolution. | 
| static class  | TypePool.Default.LazyTypeDescription.AnnotationToken.Resolution.SimpleA simple resolved annotation. | 
| protected static class  | TypePool.Default.LazyTypeDescription.FieldTokenA token for representing collected data on a field. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.ForGenericArrayA generic type token that represents a generic array. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.ForLowerBoundWildcardA generic type token for a wildcard that is bound below. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.ForParameterizedTypeA generic type token that represents a parameterized type. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.ForParameterizedType.NestedA generic type token to describe a parameterized type description with a generic owner type. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.ForRawTypeA generic type token that represents a non-generic type. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.ForTypeVariableA generic type token that represents a type variable. | 
| protected static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.ForTypeVariable.FormalA generic type token that represent a formal type variable, i.e. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.ForUpperBoundWildcardA generic type token for a wildcard that is bound above. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.Resolution.ForField.TokenizedAn implementation of a tokenized resolution of the generic type of a  FieldDescription. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.Resolution.ForMethod.TokenizedAn implementation of a tokenized resolution of generic types of a  MethodDescription. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.Resolution.ForRecordComponent.TokenizedAn implementation of a tokenized resolution of the generic type of a  RecordComponentDescription. | 
| static class  | TypePool.Default.LazyTypeDescription.GenericTypeToken.Resolution.ForType.TokenizedAn implementation of a tokenized resolution of generic types of a  TypeDescription. | 
| protected static class  | TypePool.Default.LazyTypeDescription.MethodTokenA token for representing collected data on a method. | 
| protected static class  | TypePool.Default.LazyTypeDescription.MethodToken.ParameterTokenA token representing a method's parameter. | 
| protected static class  | TypePool.Default.LazyTypeDescription.RecordComponentTokenA token representing a record component. | 
| static class  | TypePool.Default.LazyTypeDescription.TypeContainment.WithinMethodDescribes a type that is contained within a method or constructor. | 
| static class  | TypePool.Default.LazyTypeDescription.TypeContainment.WithinTypeDescribes a type that is contained within another type. | 
| protected class  | TypePool.Default.WithLazyResolution.LazyResolutionA lazy resolution of a type that the enclosing type pool attempts to resolve. | 
| static class  | TypePool.ExplicitA type pool that supplies explicitly known type descriptions. | 
| static class  | TypePool.LazyFacadeA lazy facade of a type pool that delegates any lookups to another type pool only if another value than the type's name is looked up. | 
| protected static class  | TypePool.LazyFacade.LazyResolutionThe lazy resolution for a lazy facade for a type pool. | 
| static class  | TypePool.Resolution.IllegalA canonical representation of a non-successful resolution of a  TypePool. | 
| static class  | TypePool.Resolution.SimpleA simple resolution that represents a given  TypeDescription. | 
| Modifier and Type | Class and Description | 
|---|---|
| protected static class  | FileSystem.ForLegacyVmA file system representation for a VM that does not support NIO2. | 
| protected static class  | FileSystem.ForNio2CapableVmA file system representation for a VM that does support NIO2. | 
| class  | StreamDrainerA utility for draining the contents of an  InputStreaminto abytearray. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | JavaDispatcher<T>
 A dispatcher for creating a proxy that invokes methods of a type that is possibly unknown on the current VM. | 
| static class  | JavaDispatcher.Dispatcher.ForConstructorA dispatcher for invoking a constructor. | 
| static class  | JavaDispatcher.Dispatcher.ForContainerCreationA dispatcher that creates an array. | 
| protected static class  | JavaDispatcher.Dispatcher.ForDefaultValue.OfNonPrimitiveArrayA dispatcher for a non-primitive array type. | 
| static class  | JavaDispatcher.Dispatcher.ForInstanceCheckA dispatcher that performs an instance check. | 
| static class  | JavaDispatcher.Dispatcher.ForNonStaticMethodA dispatcher for invoking a non-static proxied method. | 
| static class  | JavaDispatcher.Dispatcher.ForStaticMethodA dispatcher for invoking a static proxied method. | 
| static class  | JavaDispatcher.Dispatcher.ForUnresolvedMethodA dispatcher for an unresolved method. | 
| protected static class  | JavaDispatcher.ProxiedInvocationHandlerAn invocation handler that invokes given dispatchers. | 
| Modifier and Type | Class and Description | 
|---|---|
| class  | GetMethodActionResolves a public method for a given type or returns  nullif the type or method are not available or
 if a resolution is not possible. | 
| class  | GetSystemPropertyActionAn action for reading a system property as a privileged action. | 
| class  | SetAccessibleAction<T extends AccessibleObject>An action for making an  AccessibleObjectaccessible. | 
Copyright © 2014–2021. All rights reserved.