Safe Haskell | None |
---|
Controlling execution
- type Executor s a = TaggedT s IO a
- env :: (Applicative m, Reifies s a) => TaggedT s m a
- data Execution
- data Mip k a
- lookup :: Eq k => k -> Mip k a -> Maybe a
- insert :: Eq k => k -> a -> Mip k a -> Mip k a
- delete :: Eq k => k -> Mip k a -> Mip k a
- singleton :: k -> a -> Mip k a
- fromList :: Eq k => [(k, a)] -> Mip k a
- null :: Mip k a -> Bool
- keys :: Mip k a -> Maybe k
- elems :: Mip k a -> Maybe a
- assocs :: Mip k a -> Maybe (k, a)
- execution :: HasExecution t => Lens' t Execution
- watch :: HasExecution t => Lens' t Watcher
- user :: HasExecution t => Lens' t (TVar (Mip CUid Int))
- repos :: HasExecution t => Lens' t (TVar (Set String))
- initializeSTM :: Watcher -> IO Execution
- data Work
Documentation
type Executor s a = TaggedT s IO aSource
Convenient type alias for task-local-state-ful IO
tagged with crosstask execution environment s
env :: (Applicative m, Reifies s a) => TaggedT s m aSource
Get execution environment
Executor environment
Mip
0-to-1 key/value pairs Map
Map k a ~ [(k, a)] Mip k a ~ Maybe (k, a)
insert :: Eq k => k -> a -> Mip k a -> Mip k aSource
Insert value at key if Mip
is empty or
holds the value of the same key