Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell98 |
Synopsis
- getNonPositivesTyCon :: [TyCon] -> [(TyCon, [DataCon])]
- type OccurrenceMap = HashMap TyCon [(DataCon, TyConOccurrence)]
- data TyConOccurrence = TyConOcc {}
- makeOccurrences :: [TyCon] -> OccurrenceMap
- makeOccurrence :: HashMap TyCon VarianceInfo -> [Type] -> TyConOccurrence
- findOccurrence :: OccurrenceMap -> TyCon -> TyConOccurrence
- isRecursivenewTyCon :: TyCon -> Bool
- dataConImplicitIds :: DataCon -> [Id]
- class Subable a where
- subVar :: Expr t -> Id
- substTysWith :: HashMap Var Type -> Type -> Type
- substExpr :: HashMap Var Var -> CoreExpr -> CoreExpr
- mapType :: (Type -> Type) -> Type -> Type
- stringClassArg :: Type -> Maybe Type
Documentation
getNonPositivesTyCon :: [TyCon] -> [(TyCon, [DataCon])] Source #
Positivity Checker -------------------------------------------------------
type OccurrenceMap = HashMap TyCon [(DataCon, TyConOccurrence)] Source #
data TyConOccurrence Source #
Instances
Monoid TyConOccurrence Source # | |
Defined in Language.Haskell.Liquid.GHC.Play mappend :: TyConOccurrence -> TyConOccurrence -> TyConOccurrence # mconcat :: [TyConOccurrence] -> TyConOccurrence # | |
Semigroup TyConOccurrence Source # | |
Defined in Language.Haskell.Liquid.GHC.Play (<>) :: TyConOccurrence -> TyConOccurrence -> TyConOccurrence # sconcat :: NonEmpty TyConOccurrence -> TyConOccurrence # stimes :: Integral b => b -> TyConOccurrence -> TyConOccurrence # | |
Outputable OccurrenceMap Source # | |
Defined in Language.Haskell.Liquid.GHC.Play ppr :: OccurrenceMap -> SDoc # | |
Outputable TyConOccurrence Source # | |
Defined in Language.Haskell.Liquid.GHC.Play ppr :: TyConOccurrence -> SDoc # | |
Eq TyConOccurrence Source # | |
Defined in Language.Haskell.Liquid.GHC.Play (==) :: TyConOccurrence -> TyConOccurrence -> Bool # (/=) :: TyConOccurrence -> TyConOccurrence -> Bool # |
makeOccurrences :: [TyCon] -> OccurrenceMap Source #
makeOccurrence :: HashMap TyCon VarianceInfo -> [Type] -> TyConOccurrence Source #
findOccurrence :: OccurrenceMap -> TyCon -> TyConOccurrence Source #
isRecursivenewTyCon :: TyCon -> Bool Source #
dataConImplicitIds :: DataCon -> [Id] Source #