Package net.bytebuddy.build
Class ToStringPlugin
- java.lang.Object
-
- net.bytebuddy.build.ToStringPlugin
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,Plugin,Plugin.Factory,ElementMatcher<TypeDescription>
@Enhance public class ToStringPlugin extends java.lang.Object implements Plugin, Plugin.Factory
A build tool plugin that adds aObject.toString()and method to a class if theToStringPlugin.Enhanceannotation is present and no explicit method declaration was added. This plugin does not need to be closed.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceToStringPlugin.EnhanceInstructs theToStringPluginto generate aObject.toString()method for the annotated class unless this method is already declared explicitly.static interfaceToStringPlugin.ExcludeDetermines that the annotated field is excluded from a string representation of theToStringPlugin.-
Nested classes/interfaces inherited from interface net.bytebuddy.matcher.ElementMatcher
ElementMatcher.Junction<S>
-
Nested classes/interfaces inherited from interface net.bytebuddy.build.Plugin
Plugin.Engine, Plugin.Factory, Plugin.ForElementMatcher, Plugin.NoOp, Plugin.WithInitialization, Plugin.WithPreprocessor
-
Nested classes/interfaces inherited from interface net.bytebuddy.build.Plugin.Factory
Plugin.Factory.Simple, Plugin.Factory.UsingReflection
-
-
Field Summary
Fields Modifier and Type Field Description private static MethodDescription.InDefinedShapeENHANCE_INCLUDE_SYNTHETIC_FIELDSA description of theToStringPlugin.Enhance.includeSyntheticFields()method.private static MethodDescription.InDefinedShapeENHANCE_PREFIXA description of theToStringPlugin.Enhance.prefix()method.
-
Constructor Summary
Constructors Constructor Description ToStringPlugin()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DynamicType.Builder<?>apply(DynamicType.Builder<?> builder, TypeDescription typeDescription, ClassFileLocator classFileLocator)Applies this plugin.voidclose()Pluginmake()Returns a plugin that can be used for a transformation and which is subsequently closed.booleanmatches(TypeDescription target)Matches a target against this element matcher.
-
-
-
Field Detail
-
ENHANCE_PREFIX
private static final MethodDescription.InDefinedShape ENHANCE_PREFIX
A description of theToStringPlugin.Enhance.prefix()method.
-
ENHANCE_INCLUDE_SYNTHETIC_FIELDS
private static final MethodDescription.InDefinedShape ENHANCE_INCLUDE_SYNTHETIC_FIELDS
A description of theToStringPlugin.Enhance.includeSyntheticFields()method.
-
-
Method Detail
-
make
public Plugin make()
Returns a plugin that can be used for a transformation and which is subsequently closed.- Specified by:
makein interfacePlugin.Factory- Returns:
- The plugin to use for type transformations.
-
matches
public boolean matches(@MaybeNull TypeDescription target)
Matches a target against this element matcher.- Specified by:
matchesin interfaceElementMatcher<TypeDescription>- Parameters:
target- The instance to be matched ornull.- Returns:
trueif the given element is matched by this matcher orfalseotherwise.
-
apply
public DynamicType.Builder<?> apply(DynamicType.Builder<?> builder, TypeDescription typeDescription, ClassFileLocator classFileLocator)
Applies this plugin.- Specified by:
applyin interfacePlugin- Parameters:
builder- The builder to use as a basis for the applied transformation.typeDescription- The type being transformed.classFileLocator- A class file locator that can locate other types in the scope of the project.- Returns:
- The supplied builder with additional transformations registered.
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable
-
-