First pass at canonicalizing and reporting syntactic abilities

This commit is contained in:
Ayaz Hafiz 2022-07-18 12:39:31 -04:00
parent d118e5afbc
commit e672ce9ebd
No known key found for this signature in database
GPG key ID: 0E2A37416A25EF58
7 changed files with 307 additions and 115 deletions

View file

@ -2056,21 +2056,6 @@ impl From<&AliasVar> for OptAbleVar {
}
}
#[derive(Clone, Debug)]
pub struct Opaque {
pub region: Region,
pub type_variables: Vec<Loc<AliasVar>>,
/// lambda set variables, e.g. the one annotating the arrow in
/// a |c|-> b
pub lambda_set_variables: Vec<LambdaSet>,
pub recursion_variables: MutSet<Variable>,
pub typ: Type,
pub kind: AliasKind,
pub supports: Vec<OpaqueSupports>,
}
#[derive(Clone, Debug)]
pub enum OpaqueSupports {
Derived(Symbol),