
Andrey Semashev wrote:
https://github.com/pdimov/hash2/blob/develop/include/boost/hash2/hash_append...
Forward declarations are kind of fragile and they limit future evolution of the library. And they are tedious to add, considering that they would be needed everywhere where hashing support is needed. I would rather prefer the approach that doesn't need forward declarations.
Maybe. Something could probably be figured out, but I don't think your sketch would be it. We can't (or rather, don't want to) require from hash algorithm authors to provide the full hash_append functionality via member functions, and wrapping doesn't work that well, at least in my head. Maybe I need to pass a helper object that provides the hash_append API as member functions. Abusing the tag for that would be a bit too clever. :-)