示例#1
0
uint64_t set_hash(const ListSet<short>& val) {
    // if the val is single && integer then just return the value
    if (val.size() == 1) {
        return val.first();
    }
    ListSet<short>::iterator iter = val.begin();
    ListSet<short>::iterator end = val.end();
    std::stringstream buffer;
    for (; iter != end; ++iter) {
        buffer << *iter;
        buffer << ":";
    }
    return get_sign64(buffer.str().c_str(),  buffer.str().length() - 1);
}