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 nameSource
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 nameSource
HsQTvs | |
|
Data name => Data (LHsTyVarBndrs name) | |
OutputableBndr name => Outputable (LHsTyVarBndrs name) | |
Typeable (* -> *) LHsTyVarBndrs |
data HsWithBndrs thingSource
Data thing => Data (HsWithBndrs thing) | |
Outputable thing => Outputable (HsWithBndrs thing) | |
Typeable (* -> *) HsWithBndrs |
data HsTupleSortSource
type LHsContext name = Located (HsContext name)Source
data HsQuasiQuote idSource
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.
getBangType :: LHsType a -> LHsType aSource
getBangStrictness :: LHsType a -> HsBangSource
data ConDeclField nameSource
ConDeclField | |
|
Data name => Data (ConDeclField name) | |
Typeable (* -> *) ConDeclField |
pprConDeclFields :: OutputableBndr name => [ConDeclField name] -> SDocSource
hsQTvBndrs :: LHsTyVarBndrs name -> [LHsTyVarBndr name]Source
mkExplicitHsForAllTy :: [LHsTyVarBndr RdrName] -> LHsContext RdrName -> LHsType RdrName -> HsType RdrNameSource
hsExplicitTvs :: LHsType Name -> [Name]Source
hsTyVarName :: HsTyVarBndr name -> nameSource
mkHsWithBndrs :: thing -> HsWithBndrs thingSource
hsLKiTyVarNames :: LHsTyVarBndrs Name -> [Name]Source
hsLTyVarName :: LHsTyVarBndr name -> nameSource
hsLTyVarNames :: LHsTyVarBndrs name -> [name]Source
hsLTyVarLocName :: LHsTyVarBndr name -> Located nameSource
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 nSource
pprParendHsType :: OutputableBndr name => HsType name -> SDocSource
pprHsForAll :: OutputableBndr name => HsExplicitFlag -> LHsTyVarBndrs name -> LHsContext name -> SDocSource
pprHsContext :: OutputableBndr name => HsContext name -> SDocSource
pprHsContextNoArrow :: OutputableBndr name => HsContext name -> SDocSource
ppr_hs_context :: OutputableBndr name => HsContext name -> SDocSource