Package org.spongepowered.asm.mixin
Annotation Type Mutable
-
@Target({METHOD,FIELD}) @Retention(RUNTIME) public @interface MutableUse in conjunction withFinalorAccessorto indicate that whilst a target field is final in the target class, mutation within the mixin is intentional.Applying this annotation has the effect of removing the final modifier from the target field in order to avoid illegal access errors when a shadow visible outside the mixin class (eg. to derived or package-local mixins) is mutated. It also permits the mutation on Java runtimes which also check for mutation of private final variables (JRE 9 and later).