Safe Haskell | None |
---|---|
Language | Haskell2010 |
- calcRecFlags :: SelfBootInfo -> Bool -> RoleAnnots -> [TyCon] -> RecTyInfo
- data RecTyInfo = RTI {}
- calcSynCycles :: [LTyClDecl Name] -> [SCC (LTyClDecl Name)]
- checkClassCycles :: Class -> Maybe SDoc
- type RoleAnnots = NameEnv (LRoleAnnotDecl Name)
- extractRoleAnnots :: TyClGroup Name -> RoleAnnots
- emptyRoleAnnots :: RoleAnnots
- lookupRoleAnnots :: RoleAnnots -> Name -> Maybe (LRoleAnnotDecl Name)
- tcAddImplicits :: [TyCon] -> TcM TcGblEnv
- mkDefaultMethodType :: Class -> Id -> DefMethSpec Type -> Type
- mkRecSelBinds :: [TyCon] -> HsValBinds Name
- mkOneRecordSelector :: [ConLike] -> RecSelParent -> FieldLabel -> (LSig Name, (RecFlag, LHsBinds Name))
Documentation
calcRecFlags :: SelfBootInfo -> Bool -> RoleAnnots -> [TyCon] -> RecTyInfo Source #
Roles
type RoleAnnots = NameEnv (LRoleAnnotDecl Name) Source #
lookupRoleAnnots :: RoleAnnots -> Name -> Maybe (LRoleAnnotDecl Name) Source #
Implicits
mkDefaultMethodType :: Class -> Id -> DefMethSpec Type -> Type Source #
Record selectors
mkRecSelBinds :: [TyCon] -> HsValBinds Name Source #
mkOneRecordSelector :: [ConLike] -> RecSelParent -> FieldLabel -> (LSig Name, (RecFlag, LHsBinds Name)) Source #