@@ -8,7 +8,7 @@ module Idris.Core.Evaluate(normalise, normaliseTrace, normaliseC, normaliseAll,
8 Context, initContext, ctxtAlist, uconstraints, next_tvar,
8 Context, initContext, ctxtAlist, uconstraints, next_tvar,
9 addToCtxt, setAccess, setTotal, setMetaInformation, addCtxtDef, addTyDecl,
9 addToCtxt, setAccess, setTotal, setMetaInformation, addCtxtDef, addTyDecl,
10 addDatatype, addCasedef, simplifyCasedef, addOperator,
10 addDatatype, addCasedef, simplifyCasedef, addOperator,
11− lookupNames, lookupTy, lookupP, lookupDef, lookupNameDef, lookupDefExact, lookupDefAcc, lookupVal,
11+ lookupNames, lookupTyName, lookupTy, lookupP, lookupDef, lookupNameDef, lookupDefExact, lookupDefAcc, lookupVal,
12 mapDefCtxt,
12 mapDefCtxt,
13 lookupTotal, lookupNameTotal, lookupMetaInformation, lookupTyEnv, isDConName, isTConName, isConName, isFnName,
13 lookupTotal, lookupNameTotal, lookupMetaInformation, lookupTyEnv, isDConName, isTConName, isConName, isFnName,
14 Value(..), Quote(..), initEval, uniqueNameCtxt, uniqueBindersCtxt, definitions) where
14 Value(..), Quote(..), initEval, uniqueNameCtxt, uniqueBindersCtxt, definitions) where
@@ -863,14 +863,19 @@ lookupNames n ctxt
863 = let ns = lookupCtxtName n (definitions ctxt) in
863 = let ns = lookupCtxtName n (definitions ctxt) in
864 map fst ns
864 map fst ns
866−lookupTy :: Name -> Context -> [Type]
866+lookupTyName :: Name -> Context -> [(Name, Type)]
867−lookupTy n ctxt
867+lookupTyName n ctxt = do
868− = do def <- lookupCtxt n (definitions ctxt)
868+ (name, def) <- lookupCtxtName n (definitions ctxt)
869− case tfst def of
869+ ty <- case tfst def of
870 (Function ty _) -> return ty
870 (Function ty _) -> return ty
871 (TyDecl _ ty) -> return ty
871 (TyDecl _ ty) -> return ty
872 (Operator ty _ _) -> return ty
872 (Operator ty _ _) -> return ty
873 (CaseOp _ ty _ _ _ _) -> return ty
873 (CaseOp _ ty _ _ _ _) -> return ty
877+lookupTy :: Name -> Context -> [Type]
878+lookupTy n ctxt = map snd (lookupTyName n ctxt)
875isConName :: Name -> Context -> Bool
880isConName :: Name -> Context -> Bool
876isConName n ctxt = isTConName n ctxt || isDConName n ctxt
881isConName n ctxt = isTConName n ctxt || isDConName n ctxt