#include <cstring>
#include <string>
-#include <msp/core/hash.h>
#include <msp/core/maputils.h>
#include <msp/strings/format.h>
#include <msp/strings/lexicalcast.h>
uint64_t Protocol::get_hash() const
{
- string description;
+ uint64_t result = hash<64>(packet_id_defs.size());
for(auto &kvp: packet_id_defs)
- description += format("%d:%s\n", kvp.first, kvp.second->describe());
- return hash<64>(description);
+ {
+ hash_update<64>(result, kvp.first);
+ hash_update<64>(result, kvp.second->get_hash());
+ }
+ return result;
}