1
1
mirror of https://github.com/github/semantic.git synced 2024-11-28 10:15:55 +03:00

🔥 withExports.

This commit is contained in:
Rob Rix 2018-05-30 14:20:23 -04:00
parent 7d67ee3905
commit 3ae5cc171a

View File

@ -2,7 +2,6 @@ module Control.Abstract.Exports
( Exports ( Exports
, getExports , getExports
, addExport , addExport
, withExports
) where ) where
import Control.Abstract.Evaluator import Control.Abstract.Evaluator
@ -20,7 +19,3 @@ modifyExports = modify'
-- | Add an export to the global export state. -- | Add an export to the global export state.
addExport :: Member (State (Exports address)) effects => Name -> Name -> Maybe address -> Evaluator address value effects () addExport :: Member (State (Exports address)) effects => Name -> Name -> Maybe address -> Evaluator address value effects ()
addExport name alias = modifyExports . insert name alias addExport name alias = modifyExports . insert name alias
-- | Sets the global export state for the lifetime of the given action.
withExports :: Member (State (Exports address)) effects => Exports address -> Evaluator address value effects a -> Evaluator address value effects a
withExports = localState . const