[ADT] Simplify hash_combine (NFC) (#159938)
We just started using a C++17 fold expression inside combine
(#159901). We still carry the style that was suitable for recursive
calls of combine_data. Specifically, we keep passing several state
variables as parameters of combine_data.
Now that we no longer use recursion, this patch simplifies
hash_combine_recursive_helper by making buffer_ptr, buffer_end, and
length member variables while dropping the return value from
hash_combine. This patch also names hash_combine_recursive_helper to
hash_combine_helper.
I will follow up to update comments that still mention "recursion".