Package groovy.transform
Annotation Type ImmutableOptions
Class annotation used to assist in the creation of immutable classes.
Defines any known immutable properties (or fields) or known immutable classes.
- Since:
- 2.5.0
- See Also:
-
Immutable
ImmutablePropertyHandler
-
Element Details
-
knownImmutableClasses
Class[] knownImmutableClassesAllows you to provide@Immutable
with a list of classes which are deemed immutable. By supplying a class in this list, you are vouching for its immutability and@Immutable
will do no further checks. Example:import groovy.transform.*
@Immutable
(knownImmutableClasses = [Address]) class Person { String first, last Address address }@TupleConstructor
class Address { final String street }- Default:
- {}
-
knownImmutables
String[] knownImmutablesAllows you to provide@Immutable
with a list of property names which are deemed immutable. By supplying a property's name in this list, you are vouching for its immutability and@Immutable
will do no further checks. Example:@groovy.transform.Immutable
(knownImmutables = ['address']) class Person { String first, last Address address } ...- Default:
- {}
-