@@ -24,6 +24,7 @@ module Idris.Core.Evaluate(normalise, normaliseTrace, normaliseC,
2424 lookupNames, lookupTyName, lookupTyNameExact, lookupTy, lookupTyExact,
2525 lookupP, lookupP_all, lookupDef, lookupNameDef, lookupDefExact, lookupDefAcc, lookupDefAccExact, lookupVal,
2626 mapDefCtxt, tcReducible,
27+ lookupTotalAccessibility,
2728 lookupTotal, lookupTotalExact, lookupInjectiveExact,
2829 lookupRigCount, lookupRigCountExact,
2930 lookupNameTotal, lookupMetaInformation, lookupTyEnv, isTCDict,
@@ -1167,6 +1168,12 @@ lookupDefAcc n mkpublic ctxt
11671168 where mkp (d, _, inj, a, _, _) = if mkpublic && (not (n == sUN "io_bind" || n == sUN "io_pure"))
11681169 then (d, Public) else (d, a)
11691170
1171+lookupTotalAccessibility :: Name -> Context -> [(Totality,Accessibility)]
1172+lookupTotalAccessibility n ctxt = fmap unpack $ lookupCtxt n (definitions ctxt)
1173+
1174+ where
1175+ unpack ((_,_,_,a,t,_)) = (t,a)
1176+
11701177lookupDefAccExact :: Name -> Bool -> Context ->
11711178 Maybe (Def, Accessibility)
11721179lookupDefAccExact n mkpublic ctxt