public @interface Pure
The annotated constructor or method causes no externally visible side-effects and
does not mutate non-local state.
In other words: if the result of a pure function or constructor is not used, it
is dead code and is supposed to be removeable without changing the behavior of the
On Inlined methods this means the compiler cannot use the resulting Java
expression as a statement.