- | ATcId TcId -- Ids defined in this module; may not be fully zonked
- ThLevel
- Bool -- True <=> apply the type refinement to me
+ | ATcId { -- Ids defined in this module; may not be fully zonked
+ tct_id :: TcId,
+ tct_co :: Maybe HsWrapper, -- Nothing <=> Do not apply a GADT type refinement
+ -- I am wobbly, or have no free
+ -- type variables
+ -- Just co <=> Apply any type refinement to me,
+ -- and record it in the coercion
+ tct_type :: TcType, -- Type of (coercion applied to id)
+ tct_level :: ThLevel }