@@ -96,14 +96,22 @@ addAutoImport fp = do i <- getIState
96 put (i { idris_options = opts { opt_autoImport =
96 put (i { idris_options = opts { opt_autoImport =
97 fp : opt_autoImport opts } } )
97 fp : opt_autoImport opts } } )
99+addDefinedName :: Name -> Idris ()
100+addDefinedName n = do ist <- getIState
101+ putIState $ ist { idris_inmodule = S.insert n (idris_inmodule ist) }
103+getDefinedNames :: Idris [Name]
104+getDefinedNames = do ist <- getIState
105+ return (S.toList (idris_inmodule ist))
99addTT :: Term -> Idris (Maybe Term)
107addTT :: Term -> Idris (Maybe Term)
100−addTT t = do ist <- get
108+addTT t = do ist <- getIState
101 case M.lookup t (idris_ttstats ist) of
109 case M.lookup t (idris_ttstats ist) of
102 Nothing -> do let tt' = M.insert t (1, t) (idris_ttstats ist)
110 Nothing -> do let tt' = M.insert t (1, t) (idris_ttstats ist)
103− put $ ist { idris_ttstats = tt' }
111+ putIState $ ist { idris_ttstats = tt' }
104 return Nothing
112 return Nothing
105 Just (i, t') -> do let tt' = M.insert t' (i + 1, t') (idris_ttstats ist)
113 Just (i, t') -> do let tt' = M.insert t' (i + 1, t') (idris_ttstats ist)
106− put $ ist { idris_ttstats = tt' }
114+ putIState $ ist { idris_ttstats = tt' }
107 return (Just t')
115 return (Just t')
109dumpTT :: Idris ()
117dumpTT :: Idris ()
@@ -461,7 +469,8 @@ addIBC ibc@(IBCDef n)
461addIBC ibc = do i <- getIState; putIState $ i { ibc_write = ibc : ibc_write i }
469addIBC ibc = do i <- getIState; putIState $ i { ibc_write = ibc : ibc_write i }
463clearIBC :: Idris ()
471clearIBC :: Idris ()
464−clearIBC = do i <- getIState; putIState $ i { ibc_write = [] }
472+clearIBC = do i <- getIState; putIState $ i { ibc_write = [],
473+ idris_inmodule = S.empty }
466resetNameIdx :: Idris ()
475resetNameIdx :: Idris ()
467resetNameIdx = do i <- getIState
476resetNameIdx = do i <- getIState