Copy assignment is disabled so the cache is reset exactly once.
Declared in <coins.h>
<coins.h>
ResetGuard& operator=(ResetGuard const& other) = delete;
Never returns; this overload is deleted.