Safe Haskell | None |
---|---|
Language | Haskell98 |
- makeClasses :: ModName -> Config -> [Var] -> (ModName, Spec (Located BareType) bndr) -> BareM [((DataCon, DataConP), [(ModName, Var, LocSpecType)])]
- makeQualifiers :: (ModName, Spec ty bndr) -> BareM [Qualifier]
- makeHints :: [Var] -> Spec ty bndr -> BareM [(Var, [Int])]
- makeLVar :: [Var] -> Spec ty bndr -> BareM [Var]
- makeLazy :: [Var] -> Spec ty bndr -> BareM [Var]
- makeAutoInsts :: [Var] -> Spec ty bndr -> BareM [(Var, Maybe Int)]
- makeDefs :: [Var] -> Spec ty bndr -> BareM [(Var, Symbol)]
- makeHMeas :: [Var] -> Spec ty bndr -> BareM [(Located Var, LocSymbol)]
- makeHInlines :: [Var] -> Spec ty bndr -> BareM [(Located Var, LocSymbol)]
- makeTExpr :: [Var] -> Spec ty bndr -> BareM [(Var, [Located Expr])]
- makeTargetVars :: ModName -> [Var] -> [String] -> BareM [Var]
- makeAssertSpec :: ModName -> Config -> [Var] -> [Var] -> (ModName, BareSpec) -> BareM [(ModName, Var, LocSpecType)]
- makeAssumeSpec :: ModName -> Config -> [Var] -> [Var] -> (ModName, BareSpec) -> BareM [(ModName, Var, LocSpecType)]
- makeDefaultMethods :: [Var] -> [(ModName, Var, Located SpecType)] -> [(ModName, Var, Located SpecType)]
- makeIAliases :: (ModName, Spec (Located BareType) bndr) -> BareM [(Located SpecType, Located SpecType)]
- makeInvariants :: (ModName, Spec (Located BareType) bndr) -> BareM [(Maybe Var, Located SpecType)]
- makeNewTypes :: (ModName, Spec (Located BareType) bndr) -> BareM [(TyCon, Located SpecType)]
- makeSpecDictionaries :: TCEmb TyCon -> [Var] -> [(a, BareSpec)] -> GhcSpec -> BareM GhcSpec
- makeBounds :: TCEmb TyCon -> ModName -> [Var] -> [CoreBind] -> [(ModName, BareSpec)] -> BareM ()
- makeHBounds :: [Var] -> Spec ty bndr -> BareM [(Var, LocSymbol)]
- lookupIds :: Bool -> [(LocSymbol, a)] -> BareM [(Var, LocSymbol, a)]
Documentation
makeClasses :: ModName -> Config -> [Var] -> (ModName, Spec (Located BareType) bndr) -> BareM [((DataCon, DataConP), [(ModName, Var, LocSpecType)])] Source #
makeTargetVars :: ModName -> [Var] -> [String] -> BareM [Var] Source #
API: Bare Refinement Types ------------------------------------------------
makeAssertSpec :: ModName -> Config -> [Var] -> [Var] -> (ModName, BareSpec) -> BareM [(ModName, Var, LocSpecType)] Source #
makeAssumeSpec :: ModName -> Config -> [Var] -> [Var] -> (ModName, BareSpec) -> BareM [(ModName, Var, LocSpecType)] Source #
makeDefaultMethods :: [Var] -> [(ModName, Var, Located SpecType)] -> [(ModName, Var, Located SpecType)] Source #
makeIAliases :: (ModName, Spec (Located BareType) bndr) -> BareM [(Located SpecType, Located SpecType)] Source #
makeInvariants :: (ModName, Spec (Located BareType) bndr) -> BareM [(Maybe Var, Located SpecType)] Source #
makeNewTypes :: (ModName, Spec (Located BareType) bndr) -> BareM [(TyCon, Located SpecType)] Source #
makeSpecDictionaries :: TCEmb TyCon -> [Var] -> [(a, BareSpec)] -> GhcSpec -> BareM GhcSpec Source #