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.