|
|
|
|
Synopsis |
|
data Inst | | pprInstances :: [Instance] -> SDoc | | pprDictsTheta :: [Inst] -> SDoc | | pprDictsInFull :: [Inst] -> SDoc | | showLIE :: SDoc -> TcM () | | pprInst :: Inst -> SDoc | | pprInsts :: [Inst] -> SDoc | | pprInstInFull :: Inst -> SDoc | | tidyInsts :: [Inst] -> (TidyEnv, [Inst]) | | tidyMoreInsts :: TidyEnv -> [Inst] -> (TidyEnv, [Inst]) | | newDictBndr :: InstLoc -> TcPredType -> TcM Inst | | newDictBndrs :: InstLoc -> TcThetaType -> TcM [Inst] | | newDictBndrsO :: InstOrigin -> TcThetaType -> TcM [Inst] | | newDictOccs :: InstLoc -> TcThetaType -> TcM [Inst] | | newDictOcc :: InstLoc -> TcPredType -> TcM Inst | | instCall :: InstOrigin -> [TcType] -> TcThetaType -> TcM HsWrapper | | instStupidTheta :: InstOrigin -> TcThetaType -> TcM () | | cloneDict :: Inst -> TcM Inst | | mkOverLit :: OverLitVal -> TcM HsLit | | newIPDict :: InstOrigin -> IPName Name -> Type -> TcM (IPName Id, Inst) | | newMethod :: InstLoc -> Id -> [Type] -> TcRn Inst | | newMethodFromName :: InstOrigin -> BoxyRhoType -> Name -> TcM TcId | | newMethodWithGivenTy :: InstOrigin -> Id -> [Type] -> TcRn TcId | | tcInstClassOp :: InstLoc -> Id -> [TcType] -> TcM Inst | | tcSyntaxName :: InstOrigin -> TcType -> (Name, HsExpr Name) -> TcM (Name, HsExpr TcId) | | tyVarsOfInst :: Inst -> TyVarSet | | tyVarsOfInsts :: [Inst] -> TyVarSet | | tyVarsOfLIE :: Bag Inst -> TyVarSet | | tcTyVarsOfInst :: Inst -> TyVarSet | | tcTyVarsOfInsts :: [Inst] -> TcTyVarSet | | ipNamesOfInst :: Inst -> [Name] | | ipNamesOfInsts :: [Inst] -> [Name] | | fdPredsOfInst :: Inst -> [TcPredType] | | fdPredsOfInsts :: [Inst] -> [PredType] | | growInstsTyVars :: [Inst] -> TyVarSet -> TyVarSet | | getDictClassTys :: Inst -> (Class, [Type]) | | dictPred :: Inst -> TcPredType | | lookupSimpleInst :: Inst -> TcM LookupInstResult | | | | tcExtendLocalInstEnv :: [Instance] -> TcM a -> TcM a | | tcGetInstEnvs :: TcM (InstEnv, InstEnv) | | getOverlapFlag :: TcM OverlapFlag | | isAbstractableInst :: Inst -> Bool | | isEqInst :: Inst -> Bool | | isDict :: Inst -> Bool | | isClassDict :: Inst -> Bool | | isMethod :: Inst -> Bool | | isImplicInst :: Inst -> Bool | | isIPDict :: Inst -> Bool | | isInheritableInst :: Inst -> Bool | | isMethodOrLit :: Inst -> Bool | | isTyVarDict :: Inst -> Bool | | isMethodFor :: TcIdSet -> Inst -> Bool | | zonkInst :: Inst -> TcM Inst | | zonkInsts :: [Inst] -> TcRn [Inst] | | instToId :: Inst -> TcId | | instToVar :: Inst -> Var | | instType :: Inst -> Type | | instName :: Inst -> Name | | instToDictBind :: Inst -> LHsExpr TcId -> TcDictBinds | | addInstToDictBind :: TcDictBinds -> Inst -> LHsExpr TcId -> TcDictBinds | | | | data InstLoc | | pprInstLoc :: InstLoc -> SDoc | | mkWantedCo :: TcTyVar -> EqInstCo | | mkGivenCo :: Coercion -> EqInstCo | | isWantedCo :: EqInstCo -> Bool | | eqInstCoType :: EqInstCo -> TcType | | mkIdEqInstCo :: EqInstCo -> Type -> TcM () | | mkSymEqInstCo :: EqInstCo -> (Type, Type) -> TcM EqInstCo | | mkLeftTransEqInstCo :: EqInstCo -> Coercion -> (Type, Type) -> TcM EqInstCo | | mkRightTransEqInstCo :: EqInstCo -> Coercion -> (Type, Type) -> TcM EqInstCo | | mkAppEqInstCo :: EqInstCo -> (Type, Type) -> (Type, Type) -> TcM (EqInstCo, EqInstCo) | | mkTyConEqInstCo :: EqInstCo -> TyCon -> [(Type, Type)] -> TcM [EqInstCo] | | mkFunEqInstCo :: EqInstCo -> (Type, Type) -> (Type, Type) -> TcM (EqInstCo, EqInstCo) | | wantedEqInstIsUnsolved :: Inst -> TcM Bool | | eitherEqInst :: Inst -> (TcTyVar -> a) -> (Coercion -> a) -> a | | mkEqInst :: PredType -> EqInstCo -> TcM Inst | | mkWantedEqInst :: PredType -> TcM Inst | | wantedToLocalEqInst :: Inst -> Inst | | finalizeEqInst :: Inst -> TcM Inst | | eqInstType :: Inst -> TcType | | eqInstCoercion :: Inst -> EqInstCo | | eqInstTys :: Inst -> (TcType, TcType) |
|
|
Documentation |
|
|
Instances | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
All free type variables (not including the coercion variables of
equalities)
|
|
|
|
|
|
|
All free meta type variables *including* the coercion variables of
equalities
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Constructors | | Instances | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A wanted equality is unsolved as long as its cotv is unfilled.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Produced by Haddock version 2.6.1 |