Unwrap recursion var

This commit is contained in:
Ayaz Hafiz 2022-09-12 13:43:11 -04:00
parent 9c34aac6fd
commit 0c2b0b1bcc
No known key found for this signature in database
GPG key ID: 0E2A37416A25EF58

View file

@ -656,7 +656,15 @@ fn addr_to_ast<'a, M: ReplAppMemory>(
Content::Structure(FlatType::RecursiveTagUnion(rec_var, tags, _)) => {
(rec_var, tags)
}
_ => unreachable!("any other content should have a different layout, but we saw {:#?}", roc_types::subs::SubsFmtContent(content, env.subs)),
Content::RecursionVar { structure, ..} => {
match env.subs.get_content_without_compacting(*structure) {
Content::Structure(FlatType::RecursiveTagUnion(rec_var, tags, _)) => {
(rec_var, tags)
}
content => unreachable!("any other content should have a different layout, but we saw {:#?}", roc_types::subs::SubsFmtContent(content, env.subs)),
}
}
_ => unreachable!("any other content should have a different layout, but we saw {:#?}", roc_types::subs::SubsFmtContent(raw_content, env.subs)),
};
debug_assert_eq!(union_layouts.len(), tags.len());