Make the fields used in hashcode and equals generation configurable #530
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Added
excludedFromEqualsAndHashCode
option for specifying which properties should be excluded fromequals()
andhashCode()
methods. It can be used both as an object-level array containing excluded property names or as a property-level boolean switch.Example:
notExcluded
andnotExcludedByProperty
will be used while generatinghashCode()
andequals()
, whileexcludedByProperty
andexcludedByArray
won't.I felt that excluding properties from the methods would be more fitting than listing the included ones (as discussed in issue #309), because that way the default behavior, which is including all properties in the methods, is modified rather than redefined.