| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
GHC.Tc.Types.BasicTypes
Contents
Synopsis
- type TcBinderStack = [TcBinder]
- type TcId = Id
- data TcBinder
- type TcSigFun = Name -> Maybe TcSigInfo
- data TcIdSigInfo
- = CompleteSig { }
- | PartialSig { }
- data TcSigInfo
- data TcPatSynInfo = TPSI {}
- data TcIdSigInst = TISI {
- sig_inst_sig :: TcIdSigInfo
- 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
- 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] #
Constructors
| TcIdBndr TcId TopLevelFlag | |
| TcIdBndr_ExpType Name ExpType TopLevelFlag | |
| TcTvBndr Name TyVar |
Instances
| HasOccName TcBinder # | |
Defined in GHC.Tc.Types.BasicTypes | |
| Outputable TcBinder # | |
Defined in GHC.Tc.Types.BasicTypes | |
Signatures
data TcIdSigInfo #
Constructors
| CompleteSig | |
| PartialSig | |
Fields
| |
Instances
| Outputable TcIdSigInfo # | |
Defined in GHC.Tc.Types.BasicTypes Methods ppr :: TcIdSigInfo -> SDoc # | |
Constructors
| TcIdSig TcIdSigInfo | |
| TcPatSynSig TcPatSynInfo |
Instances
| Outputable TcSigInfo # | |
Defined in GHC.Tc.Types.BasicTypes | |
data TcPatSynInfo #
Constructors
| TPSI | |
Fields | |
Instances
| Outputable TcPatSynInfo # | |
Defined in GHC.Tc.Types.BasicTypes Methods ppr :: TcPatSynInfo -> SDoc # | |
data TcIdSigInst #
Constructors
| TISI | |
Fields
| |
Instances
| Outputable TcIdSigInst # | |
Defined in GHC.Tc.Types.BasicTypes Methods ppr :: TcIdSigInst -> SDoc # | |
isPartialSig :: TcIdSigInst -> Bool #
hasCompleteSig :: TcSigFun -> Name -> Bool #
No signature or a partial signature
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
| Outputable TcTyThing # | |
Defined in GHC.Tc.Types.BasicTypes | |
data IdBindingInfo #
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 # | |
Defined in GHC.Tc.Types.BasicTypes Methods ppr :: IdBindingInfo -> SDoc # | |
data IsGroupClosed #
IsGroupClosed describes a group of mutually-recursive bindings
Constructors
| IsGroupClosed (NameEnv RhsNames) ClosedTypeId |
type ClosedTypeId = Bool #
tcTyThingCategory :: TcTyThing -> String #
pprTcTyThingCategory :: TcTyThing -> SDoc #