X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=c%CE%BBash%2FCLasH%2FTranslator%2FTranslatorTypes.hs;h=56c5c75a0324696d5f1d6b7d8aa0c934caa5295c;hb=eab16fafe7a623b5ea669023b91ddee4b1983526;hp=2591e666f0b3491b93b8f8baaced8d993b77998d;hpb=466f80bdde9511508c38e951d208a2a52c90c7da;p=matthijs%2Fmaster-project%2Fc%CE%BBash.git diff --git "a/c\316\273ash/CLasH/Translator/TranslatorTypes.hs" "b/c\316\273ash/CLasH/Translator/TranslatorTypes.hs" index 2591e66..56c5c75 100644 --- "a/c\316\273ash/CLasH/Translator/TranslatorTypes.hs" +++ "b/c\316\273ash/CLasH/Translator/TranslatorTypes.hs" @@ -9,7 +9,7 @@ module CLasH.Translator.TranslatorTypes where import qualified Control.Monad.Trans.State as State import qualified Data.Map as Map import qualified Data.Accessor.Template -import Data.Accessor +import qualified Data.Accessor.Monad.Trans.State as MonadState -- GHC API import qualified GHC @@ -109,23 +109,23 @@ type TranslatorSession = State.State TranslatorState -- module(s)? isTopLevelBinder :: CoreSyn.CoreBndr -> TranslatorSession Bool isTopLevelBinder bndr = do - bindings <- getA tsBindings + bindings <- MonadState.get tsBindings return $ Map.member bndr bindings -- Finds the value of a global binding, if available getGlobalBind :: CoreSyn.CoreBndr -> TranslatorSession (Maybe CoreSyn.CoreExpr) getGlobalBind bndr = do - bindings <- getA tsBindings + bindings <- MonadState.get tsBindings return $ Map.lookup bndr bindings -- Adds a new global binding with the given value addGlobalBind :: CoreSyn.CoreBndr -> CoreSyn.CoreExpr -> TranslatorSession () -addGlobalBind bndr expr = modA tsBindings (Map.insert bndr expr) +addGlobalBind bndr expr = MonadState.modify tsBindings (Map.insert bndr expr) -- Returns a list of all global binders getGlobalBinders :: TranslatorSession [CoreSyn.CoreBndr] getGlobalBinders = do - bindings <- getA tsBindings + bindings <- MonadState.get tsBindings return $ Map.keys bindings -- vim: set ts=8 sw=2 sts=2 expandtab: