obj
will be hashed using R's internal serialization logic
with a custom target which applies applying Jenkins' SpookyHash (v2) in a
streaming fashion. This avoids (ever) copying the data out of the R object
itself, providing both speed and memory constancy.
It also guarantees that the "representation" of the R object being hashed
is the same as the serialized version would be, if created.