Safe Haskell | None |
---|---|
Language | Haskell98 |
- data HsType name
- = HsForAllTy HsExplicitFlag (LHsTyVarBndrs name) (LHsContext name) (LHsType name)
- | HsTyVar name
- | HsAppTy (LHsType name) (LHsType name)
- | HsFunTy (LHsType name) (LHsType name)
- | HsListTy (LHsType name)
- | HsPArrTy (LHsType name)
- | HsTupleTy HsTupleSort [LHsType name]
- | HsOpTy (LHsType name) (LHsTyOp name) (LHsType name)
- | HsParTy (LHsType name)
- | HsIParamTy HsIPName (LHsType name)
- | HsEqTy (LHsType name) (LHsType name)
- | HsKindSig (LHsType name) (LHsKind name)
- | HsQuasiQuoteTy (HsQuasiQuote name)
- | HsSpliceTy (HsSplice name) PostTcKind
- | HsDocTy (LHsType name) LHsDocString
- | HsBangTy HsBang (LHsType name)
- | HsRecTy [ConDeclField name]
- | HsCoreTy Type
- | HsExplicitListTy PostTcKind [LHsType name]
- | HsExplicitTupleTy [PostTcKind] [LHsType name]
- | HsTyLit HsTyLit
- | HsWrapTy HsTyWrapper (HsType name)
- type LHsType name = Located (HsType name)
- type HsKind name = HsType name
- type LHsKind name = Located (HsKind name)
- data HsTyVarBndr name
- = UserTyVar name
- | KindedTyVar name (LHsKind name)
- type LHsTyVarBndr name = Located (HsTyVarBndr name)
- data LHsTyVarBndrs name = HsQTvs {
- hsq_kvs :: [Name]
- hsq_tvs :: [LHsTyVarBndr name]
- data HsWithBndrs thing = HsWB {}
- data HsTupleSort
- data HsExplicitFlag
- type HsContext name = [LHsType name]
- type LHsContext name = Located (HsContext name)
- data HsQuasiQuote id = HsQuasiQuote id SrcSpan FastString
- data HsTyWrapper = WpKiApps [Kind]
- data HsTyLit
- newtype HsIPName = HsIPName FastString
- hsIPNameFS :: HsIPName -> FastString
- type LBangType name = Located (BangType name)
- type BangType name = HsType name
- data HsBang
- getBangType :: LHsType a -> LHsType a
- getBangStrictness :: LHsType a -> HsBang
- data ConDeclField name = ConDeclField {
- cd_fld_name :: Located name
- cd_fld_type :: LBangType name
- cd_fld_doc :: Maybe LHsDocString
- pprConDeclFields :: OutputableBndr name => [ConDeclField name] -> SDoc
- mkHsQTvs :: [LHsTyVarBndr RdrName] -> LHsTyVarBndrs RdrName
- hsQTvBndrs :: LHsTyVarBndrs name -> [LHsTyVarBndr name]
- mkExplicitHsForAllTy :: [LHsTyVarBndr RdrName] -> LHsContext RdrName -> LHsType RdrName -> HsType RdrName
- mkImplicitHsForAllTy :: LHsContext RdrName -> LHsType RdrName -> HsType RdrName
- hsExplicitTvs :: LHsType Name -> [Name]
- hsTyVarName :: HsTyVarBndr name -> name
- mkHsWithBndrs :: thing -> HsWithBndrs thing
- hsLKiTyVarNames :: LHsTyVarBndrs Name -> [Name]
- hsLTyVarName :: LHsTyVarBndr name -> name
- hsLTyVarNames :: LHsTyVarBndrs name -> [name]
- hsLTyVarLocName :: LHsTyVarBndr name -> Located name
- hsLTyVarLocNames :: LHsTyVarBndrs name -> [Located name]
- splitLHsInstDeclTy_maybe :: LHsType name -> Maybe (LHsTyVarBndrs name, HsContext name, Located name, [LHsType name])
- splitHsClassTy_maybe :: HsType name -> Maybe (name, [LHsType name])
- splitLHsClassTy_maybe :: LHsType name -> Maybe (Located name, [LHsType name])
- splitHsFunType :: LHsType name -> ([LHsType name], LHsType name)
- splitHsAppTys :: LHsType n -> [LHsType n] -> (LHsType n, [LHsType n])
- hsTyGetAppHead_maybe :: LHsType n -> Maybe (n, [LHsType n])
- mkHsAppTys :: OutputableBndr n => LHsType n -> [LHsType n] -> HsType n
- mkHsOpTy :: LHsType name -> Located name -> LHsType name -> HsType name
- pprParendHsType :: OutputableBndr name => HsType name -> SDoc
- pprHsForAll :: OutputableBndr name => HsExplicitFlag -> LHsTyVarBndrs name -> LHsContext name -> SDoc
- pprHsContext :: OutputableBndr name => HsContext name -> SDoc
- pprHsContextNoArrow :: OutputableBndr name => HsContext name -> SDoc
- ppr_hs_context :: OutputableBndr name => HsContext name -> SDoc
Documentation
HsForAllTy HsExplicitFlag (LHsTyVarBndrs name) (LHsContext name) (LHsType name) | |
HsTyVar name | |
HsAppTy (LHsType name) (LHsType name) | |
HsFunTy (LHsType name) (LHsType name) | |
HsListTy (LHsType name) | |
HsPArrTy (LHsType name) | |
HsTupleTy HsTupleSort [LHsType name] | |
HsOpTy (LHsType name) (LHsTyOp name) (LHsType name) | |
HsParTy (LHsType name) | |
HsIParamTy HsIPName (LHsType name) | |
HsEqTy (LHsType name) (LHsType name) | |
HsKindSig (LHsType name) (LHsKind name) | |
HsQuasiQuoteTy (HsQuasiQuote name) | |
HsSpliceTy (HsSplice name) PostTcKind | |
HsDocTy (LHsType name) LHsDocString | |
HsBangTy HsBang (LHsType name) | |
HsRecTy [ConDeclField name] | |
HsCoreTy Type | |
HsExplicitListTy PostTcKind [LHsType name] | |
HsExplicitTupleTy [PostTcKind] [LHsType name] | |
HsTyLit HsTyLit | |
HsWrapTy HsTyWrapper (HsType name) |
Data name => Data (HsType name) | |
OutputableBndr name => Outputable (HsType name) | |
Typeable (* -> *) HsType |
data HsTyVarBndr name Source
UserTyVar name | |
KindedTyVar name (LHsKind name) |
Data name => Data (HsTyVarBndr name) | |
OutputableBndr name => Outputable (HsTyVarBndr name) | |
Typeable (* -> *) HsTyVarBndr |
type LHsTyVarBndr name = Located (HsTyVarBndr name) Source
data LHsTyVarBndrs name Source
HsQTvs | |
|
Data name => Data (LHsTyVarBndrs name) | |
OutputableBndr name => Outputable (LHsTyVarBndrs name) | |
Typeable (* -> *) LHsTyVarBndrs |
data HsWithBndrs thing Source
Data thing => Data (HsWithBndrs thing) | |
Outputable thing => Outputable (HsWithBndrs thing) | |
Typeable (* -> *) HsWithBndrs |
data HsTupleSort Source
type LHsContext name = Located (HsContext name) Source
data HsQuasiQuote id Source
Data id => Data (HsQuasiQuote id) | |
OutputableBndr id => Outputable (HsQuasiQuote id) | |
Typeable (* -> *) HsQuasiQuote |
These names are used eary on to store the names of implicit parameters. They completely disappear after type-checking.
hsIPNameFS :: HsIPName -> FastString Source
getBangType :: LHsType a -> LHsType a Source
getBangStrictness :: LHsType a -> HsBang Source
data ConDeclField name Source
ConDeclField | |
|
Data name => Data (ConDeclField name) | |
Typeable (* -> *) ConDeclField |
pprConDeclFields :: OutputableBndr name => [ConDeclField name] -> SDoc Source
hsQTvBndrs :: LHsTyVarBndrs name -> [LHsTyVarBndr name] Source
mkExplicitHsForAllTy :: [LHsTyVarBndr RdrName] -> LHsContext RdrName -> LHsType RdrName -> HsType RdrName Source
hsExplicitTvs :: LHsType Name -> [Name] Source
hsTyVarName :: HsTyVarBndr name -> name Source
mkHsWithBndrs :: thing -> HsWithBndrs thing Source
hsLKiTyVarNames :: LHsTyVarBndrs Name -> [Name] Source
hsLTyVarName :: LHsTyVarBndr name -> name Source
hsLTyVarNames :: LHsTyVarBndrs name -> [name] Source
hsLTyVarLocName :: LHsTyVarBndr name -> Located name Source
hsLTyVarLocNames :: LHsTyVarBndrs name -> [Located name] Source
splitLHsInstDeclTy_maybe :: LHsType name -> Maybe (LHsTyVarBndrs name, HsContext name, Located name, [LHsType name]) Source
splitHsClassTy_maybe :: HsType name -> Maybe (name, [LHsType name]) Source
splitHsFunType :: LHsType name -> ([LHsType name], LHsType name) Source
hsTyGetAppHead_maybe :: LHsType n -> Maybe (n, [LHsType n]) Source
mkHsAppTys :: OutputableBndr n => LHsType n -> [LHsType n] -> HsType n Source
pprParendHsType :: OutputableBndr name => HsType name -> SDoc Source
pprHsForAll :: OutputableBndr name => HsExplicitFlag -> LHsTyVarBndrs name -> LHsContext name -> SDoc Source
pprHsContext :: OutputableBndr name => HsContext name -> SDoc Source
pprHsContextNoArrow :: OutputableBndr name => HsContext name -> SDoc Source
ppr_hs_context :: OutputableBndr name => HsContext name -> SDoc Source