| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
GHC.Tc.Types.BasicTypes
Contents
Synopsis
- type TcBinderStack = [TcBinder]
- type TcId = Id
- data TcBinder
- type TcSigFun = Name -> Maybe TcSigInfo
- data TcSigInfo
- data TcIdSig
- data TcCompleteSig = CSig {}
- data TcPartialSig = PSig {}
- data TcPatSynSig = PatSig {}
- data TcIdSigInst = TISI {
- sig_inst_sig :: TcIdSig
- sig_inst_skols :: [(Name, InvisTVBinder)]
- sig_inst_theta :: TcThetaType
- sig_inst_tau :: TcSigmaType
- sig_inst_wcs :: [(Name, TcTyVar)]
- sig_inst_wcx :: Maybe TcType
- isPartialSig :: TcIdSigInst -> Bool
- hasCompleteSig :: TcSigFun -> Name -> Bool
- tcSigInfoName :: TcSigInfo -> Name
- tcIdSigLoc :: TcIdSig -> SrcSpan
- completeSigPolyId_maybe :: TcSigInfo -> Maybe TcId
- data TcTyThing
- = AGlobal TyThing
- | ATcId {
- tct_id :: Id
- tct_info :: IdBindingInfo
- | ATyVar Name TcTyVar
- | ATcTyCon TyCon
- | APromotionErr PromotionErr
- data IdBindingInfo
- data IsGroupClosed = IsGroupClosed (NameEnv RhsNames) ClosedTypeId
- type RhsNames = NameSet
- type ClosedTypeId = Bool
- tcTyThingCategory :: TcTyThing -> String
- tcTyThingTyCon_maybe :: TcTyThing -> Maybe TyCon
- pprTcTyThingCategory :: TcTyThing -> SDoc
TcBinder
type TcBinderStack = [TcBinder] Source #
Constructors
| TcIdBndr TcId TopLevelFlag | |
| TcIdBndr_ExpType Name ExpType TopLevelFlag | |
| TcTvBndr Name TyVar |
Instances
Signatures
Constructors
| TcIdSig TcIdSig | |
| TcPatSynSig TcPatSynSig |
Instances
Constructors
| TcCompleteSig TcCompleteSig | |
| TcPartialSig TcPartialSig |
Instances
data TcCompleteSig Source #
Instances
| Outputable TcCompleteSig Source # | |
Defined in GHC.Tc.Types.BasicTypes Methods ppr :: TcCompleteSig -> SDoc Source # | |
data TcPartialSig Source #
Constructors
| PSig | |
Fields
| |
Instances
| Outputable TcPartialSig Source # | |
Defined in GHC.Tc.Types.BasicTypes Methods ppr :: TcPartialSig -> SDoc Source # | |
data TcPatSynSig Source #
Constructors
| PatSig | |
Fields | |
Instances
| Outputable TcPatSynSig Source # | |
Defined in GHC.Tc.Types.BasicTypes Methods ppr :: TcPatSynSig -> SDoc Source # | |
data TcIdSigInst Source #
Constructors
| TISI | |
Fields
| |
Instances
| Outputable TcIdSigInst Source # | |
Defined in GHC.Tc.Types.BasicTypes Methods ppr :: TcIdSigInst -> SDoc Source # | |
isPartialSig :: TcIdSigInst -> Bool Source #
tcSigInfoName :: TcSigInfo -> Name Source #
tcIdSigLoc :: TcIdSig -> SrcSpan Source #
TcTyThing
A typecheckable thing available in a local context. Could be
AGlobal TyThing, but also lexically scoped variables, etc.
See GHC.Tc.Utils.Env for how to retrieve a TyThing given a Name.
Constructors
| AGlobal TyThing | |
| ATcId | |
Fields
| |
| ATyVar Name TcTyVar | |
| ATcTyCon TyCon | |
| APromotionErr PromotionErr | |
Instances
data IdBindingInfo Source #
IdBindingInfo describes how an Id is bound.
It is used for the following purposes:
a) for static forms in checkClosedInStaticForm and
b) to figure out when a nested binding can be generalised,
in decideGeneralisationPlan.
Constructors
| NotLetBound | |
| ClosedLet | |
| NonClosedLet RhsNames ClosedTypeId |
Instances
| Outputable IdBindingInfo Source # | |
Defined in GHC.Tc.Types.BasicTypes Methods ppr :: IdBindingInfo -> SDoc Source # | |
data IsGroupClosed Source #
IsGroupClosed describes a group of mutually-recursive bindings
Constructors
| IsGroupClosed (NameEnv RhsNames) ClosedTypeId |
type ClosedTypeId = Bool Source #
tcTyThingCategory :: TcTyThing -> String Source #
pprTcTyThingCategory :: TcTyThing -> SDoc Source #