ClassDescriptionA method is called deterministic if it returns the same value (according to
==) every time it is called with the same parameters and in the same environment.
Impureis a method annotation that means the method might have side effects and/or might be nondeterministic.
Pureis a method annotation that means both
Deterministic.The type of purity.A method is called side-effect-free if it has no visible side-effects, such as setting a field of an object that existed before the method was called.
TerminatesExecutionis a method annotation that indicates that a method terminates the execution of the program.