@@ -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
@@ -868,14 +868,19 @@ lookupNames n ctxt
868 = let ns = lookupCtxtName n (definitions ctxt) in
868 = let ns = lookupCtxtName n (definitions ctxt) in
869 map fst ns
869 map fst ns
871−lookupTy :: Name -> Context -> [Type]
871+lookupTyName :: Name -> Context -> [(Name, Type)]
872−lookupTy n ctxt
872+lookupTyName n ctxt = do
873− = do def <- lookupCtxt n (definitions ctxt)
873+ (name, def) <- lookupCtxtName n (definitions ctxt)
874− case tfst def of
874+ ty <- case tfst def of
875 (Function ty _) -> return ty
875 (Function ty _) -> return ty
876 (TyDecl _ ty) -> return ty
876 (TyDecl _ ty) -> return ty
877 (Operator ty _ _) -> return ty
877 (Operator ty _ _) -> return ty
878 (CaseOp _ ty _ _ _ _) -> return ty
878 (CaseOp _ ty _ _ _ _) -> return ty
882+lookupTy :: Name -> Context -> [Type]
883+lookupTy n ctxt = map snd (lookupTyName n ctxt)
880isConName :: Name -> Context -> Bool
885isConName :: Name -> Context -> Bool
881isConName n ctxt = isTConName n ctxt || isDConName n ctxt
886isConName n ctxt = isTConName n ctxt || isDConName n ctxt