public interface Memoable
Memoable copy()
The returned object may be used simply to store the state, or may be used as a similar object starting from the copied state.
void reset(Memoable other)
Implementations of this method should try to avoid or minimise memory allocation to perform the reset.
other
- an object originally copied
from an object of the same type as this instance.java.lang.ClassCastException
- if the provided object is not of the correct type.MemoableResetException
- if the other parameter is in some other way invalid.