|
|
|
|
| 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 |