@Documented
@Retention(value=RUNTIME)
@Target(value={METHOD,CONSTRUCTOR})
public @interface Pure
Pure is a method annotation that means both SideEffectFree and Deterministic. The more important of these, when performing pluggable type-checking, is usually
SideEffectFree.