Annotation Type Immutable


@Documented
@Inclubating
@Retention(RUNTIME)
@Target(TYPE)
public @interface Immutable
Annotate immutable object.
Since:
1.0.0
Author:
Ardika Rommy Sanjaya
  • Optional Element Summary

    Optional Elements 
    Modifier and Type Optional Element Description
    boolean blocking
    Blocking when changing specify field.
    String[] except
    Mark un-immutable fields.
    String[] volatiles
    Mark field(s) as volatile.
  • Element Details

    • volatiles

      String[] volatiles
      Mark field(s) as volatile.
      Returns:
      returns array of volatile field on specified class.
      Since:
      1.0.0
      Default:
      {}
    • except

      String[] except
      Mark un-immutable fields.
      Returns:
      returns array of un-immutable field on specified class.
      Since:
      1.0.0
      Default:
      {}
    • blocking

      boolean blocking
      Blocking when changing specify field.
      Returns:
      returns true if blocking, false otherwise.
      Since:
      1.0.0
      Default:
      false