@@ -65,7 +65,8 @@ import System.Directory (getModificationTime)
6565resetIdeState :: Ide m => m ()
6666resetIdeState = do
6767 ideVar <- ideStateVar <$> ask
68- liftIO (atomically (writeTVar ideVar emptyIdeState))
68+ durableState <- getDurableState
69+ liftIO (atomically (writeTVar ideVar (emptyIdeState { ideDurableState = durableState })))
6970
7071getOutputDirectory :: Ide m => m FilePath
7172getOutputDirectory = do
@@ -145,21 +146,21 @@ setVolatileStateSTM ref vs = do
145146 x {ideVolatileState = vs}
146147 pure ()
147148
148- -- | Retrieves the ModifierState from the State.
149- getModifierState :: Ide m => m IdeModifierState
150- getModifierState = do
149+ -- | Retrieves the DurableState from the State.
150+ getDurableState :: Ide m => m IdeDurableState
151+ getDurableState = do
151152 st <- ideStateVar <$> ask
152- liftIO (atomically (getModifierStateSTM st))
153+ liftIO (atomically (getDurableStateSTM st))
153154
154- -- | STM version of getModifierState
155- getModifierStateSTM :: TVar IdeState -> STM IdeModifierState
156- getModifierStateSTM ref = ideModifierState <$> readTVar ref
155+ -- | STM version of getDurableState
156+ getDurableStateSTM :: TVar IdeState -> STM IdeDurableState
157+ getDurableStateSTM ref = ideDurableState <$> readTVar ref
157158
158- -- | Sets the ModifierState inside Ide's state
159- setModifierStateSTM :: TVar IdeState -> IdeModifierState -> STM ()
160- setModifierStateSTM ref md = do
159+ -- | Sets the DurableState inside Ide's state
160+ setDurableStateSTM :: TVar IdeState -> IdeDurableState -> STM ()
161+ setDurableStateSTM ref md = do
161162 modifyTVar ref $ \ x ->
162- x {ideModifierState = md}
163+ x {ideDurableState = md}
163164 pure ()
164165
165166-- | Checks if the given ModuleName matches the last rebuild cache and if it
@@ -474,7 +475,7 @@ resolveDataConstructorsForModule decls =
474475
475476getFocusedModules :: Ide m => m (Set P. ModuleName )
476477getFocusedModules = do
477- IdeModifierState {mdFocusedModules = focusedModules} <- getModifierState
478+ IdeDurableState {drFocusedModules = focusedModules} <- getDurableState
478479 pure focusedModules
479480
480481setFocusedModules :: Ide m => [P. ModuleName ] -> m ()
@@ -484,5 +485,4 @@ setFocusedModules modulesToFocus = do
484485
485486setFocusedModulesSTM :: TVar IdeState -> [P. ModuleName ] -> STM ()
486487setFocusedModulesSTM ref modulesToFocus = do
487- IdeModifierState {} <- getModifierStateSTM ref
488- setModifierStateSTM ref (IdeModifierState (Set. fromList modulesToFocus))
488+ setDurableStateSTM ref (IdeDurableState (Set. fromList modulesToFocus))
0 commit comments