Add support for hash key of tuples

This commit is contained in:
Ayaz Hafiz 2023-03-22 10:09:57 -05:00
parent f4f9ae7a5d
commit e6cac71ca5
No known key found for this signature in database
GPG key ID: 0E2A37416A25EF58
3 changed files with 16 additions and 3 deletions

View file

@ -30,6 +30,7 @@ use crate::{synth_var, util::Env, DerivedBody};
pub(crate) fn derive_hash(env: &mut Env<'_>, key: FlatHashKey, def_symbol: Symbol) -> DerivedBody {
let (body_type, body) = match key {
FlatHashKey::Record(fields) => hash_record(env, def_symbol, fields),
FlatHashKey::Tuple(_fields) => todo!(),
FlatHashKey::TagUnion(tags) => {
if tags.len() == 1 {
hash_newtype_tag_union(env, def_symbol, tags.into_iter().next().unwrap())