Перенос предложения: голоса +5, -0
Автор идеи: gbalog
Перенос boost::hash_range и boost::hash_combine в стандартную библиотеку и добавление такой функции как std::hash_bytes.
Было бы неплохо, если бы была возможность хешировать последовательности байтов стандартными путями.
Сейчас для этого можно использовать std::hash<std::string_view>()(std::string_view{ptr, len});, что выглядит больше как хак.
гораздо удобнее было бы иметь что-то такое: std::hash_bytes(const std::byte * ptr, std::size_t len, std::size_t seed);.
Ну а boost::hash_range и boost::hash_combine просто за компанию, т.к. это достаточно полезные функции, когда надо реализовать хеш для своих типов.
Перенос предложения: голоса +5, -0
Автор идеи: gbalog
Перенос boost::hash_range и boost::hash_combine в стандартную библиотеку и добавление такой функции как std::hash_bytes.
Было бы неплохо, если бы была возможность хешировать последовательности байтов стандартными путями.
Сейчас для этого можно использовать
std::hash<std::string_view>()(std::string_view{ptr, len});,что выглядит больше как хак.гораздо удобнее было бы иметь что-то такое:
std::hash_bytes(const std::byte * ptr, std::size_t len, std::size_t seed);.Ну а boost::hash_range и boost::hash_combine просто за компанию, т.к. это достаточно полезные функции, когда надо реализовать хеш для своих типов.