@HashCodeAndEqualsPlugin.Enhance public class HashCodeAndEqualsPlugin extends Object implements Plugin, Plugin.Factory
Object.hashCode() and Object.equals(Object) methods to a class if the
 HashCodeAndEqualsPlugin.Enhance annotation is present and no explicit method declaration was added. This plugin does not need to be closed.| Modifier and Type | Class and Description | 
|---|---|
| protected static class  | HashCodeAndEqualsPlugin.AnnotationOrderComparatorA comparator that arranges fields in the order of  HashCodeAndEqualsPlugin.Sorted. | 
| static interface  | HashCodeAndEqualsPlugin.EnhanceInstructs the  HashCodeAndEqualsPluginto generateObject.hashCode()andObject.equals(Object)for the annotated
 class unless these methods are already declared explicitly. | 
| static interface  | HashCodeAndEqualsPlugin.SortedDetermines the sort order of fields for the equality check when implementing the  Object.equals(Object)method. | 
| static interface  | HashCodeAndEqualsPlugin.ValueHandlingDetermines how a field should be used within generated hash code and equality methods. | 
| 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. | 
Plugin.Compound, Plugin.Engine, Plugin.Factory, Plugin.ForElementMatcher, Plugin.NoOpElementMatcher.Junction<S>Plugin.Factory.Simple, Plugin.Factory.UsingReflection| Constructor and Description | 
|---|
| HashCodeAndEqualsPlugin() | 
| Modifier and Type | Method and Description | 
|---|---|
| DynamicType.Builder<?> | apply(DynamicType.Builder<?> builder,
     TypeDescription typeDescription,
     ClassFileLocator classFileLocator)Applies this plugin. | 
| void | close() | 
| Plugin | make()Returns a plugin that can be used for a transformation and which is subsequently closed. | 
| boolean | matches(TypeDescription target)Matches a target against this element matcher. | 
| protected ElementMatcher<FieldDescription> | nonNullable(ElementMatcher<FieldDescription> matcher)Resolves the matcher to identify non-nullable fields. | 
public Plugin make()
make in interface Plugin.Factorypublic boolean matches(TypeDescription target)
matches in interface ElementMatcher<TypeDescription>target - The instance to be matched.true if the given element is matched by this matcher or false otherwise.public DynamicType.Builder<?> apply(DynamicType.Builder<?> builder, TypeDescription typeDescription, ClassFileLocator classFileLocator)
apply in interface Pluginbuilder - 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.protected ElementMatcher<FieldDescription> nonNullable(ElementMatcher<FieldDescription> matcher)
matcher - The matcher that identifies fields that are either nullable or non-nullable.public void close()
close in interface Closeableclose in interface AutoCloseableCopyright © 2014–2019. All rights reserved.