data MaybeErr a b
type MethodInstInfo = (Id, [UniType], InstTemplate)
data TypecheckedPat
+data SpecEnv
data SpecInfo
data SplitUniqSupply
data TyCon
lookupClassInstAtSimpleType :: Class -> UniType -> Labda Id
lookupInst :: SplitUniqSupply -> Inst -> Labda (Expr Id TypecheckedPat, [Inst])
lookupNoBindInst :: SplitUniqSupply -> Inst -> Labda [Inst]
+mkInstSpecEnv :: Class -> UniType -> [TyVarTemplate] -> [(Class, UniType)] -> SpecEnv
nullMEnv :: [(a, b)]