Пример #1
0
size_t RecordHashFunction::operator()(const Record& r) const {
  size_t n = 0;
  const Record::FieldVector& fields = r.getFields();
  for(Record::FieldVector::const_iterator i = fields.begin(),
      i_end = fields.end(); i != i_end; ++i) {
    n = (n << 3) ^ TypeHashFunction()((*i).second);
  }
  return n;
}
Пример #2
0
size_t EmptySetHashFunction::operator()(const EmptySet& es) const {
  return TypeHashFunction()(es.getType());
}
Пример #3
0
size_t ArrayStoreAllHashFunction::operator()(const ArrayStoreAll& asa) const {
  return TypeHashFunction()(asa.getType()) * ExprHashFunction()(asa.getExpr());
}