@@ -9,8 +9,8 @@ import qualified Control.Monad.State as T
9import Test.Tasty
9import Test.Tasty
10import Test.Tasty.QuickCheck
10import Test.Tasty.QuickCheck
12−ethereal "RTag" "rTag"
12+data RTag
13−ethereal "STag" "sTag"
13+data STag
15testMTL :: (T.MonadReader Int m, T.MonadState Int m) => m Int
15testMTL :: (T.MonadReader Int m, T.MonadState Int m) => m Int
16testMTL = do
16testMTL = do
@@ -22,21 +22,21 @@ testMTL = do
23 :: Ether '[STag --> Int, STag <-> Int, RTag --> Int] m
23 :: Ether '[STag --> Int, STag <-> Int, RTag --> Int] m
24 => m (Int, Int, Int)
24 => m (Int, Int, Int)
25−testEther = local rTag (*2) $ do
25+testEther = local [tag|RTag|] (*2) $ do
26− a_mul_b <- tagAttach sTag testMTL
26+ a_mul_b <- tagAttach [tag|STag|] testMTL
27− a_add_b <- get sTag
27+ a_add_b <- get [tag|STag|]
28− modify sTag negate
28+ modify [tag|STag|] negate
29− c <- ask rTag
29+ c <- ask [tag|RTag|]
30 return (a_mul_b, a_add_b, c)
30 return (a_mul_b, a_add_b, c)
32runner1 s r
32runner1 s r
33− = flip (runReader rTag) (negate r)
33+ = flip (runReader [tag|RTag|]) (negate r)
34− . flip (runReaderT sTag) r
34+ . flip (runReaderT [tag|STag|]) r
35− . flip (runStateT sTag) s
35+ . flip (runStateT [tag|STag|]) s
36runner2 s r
36runner2 s r
37− = flip (runReader rTag) (negate r)
37+ = flip (runReader [tag|RTag|]) (negate r)
38− . flip (runStateT sTag) s
38+ . flip (runStateT [tag|STag|]) s
39− . flip (runReaderT sTag) r
39+ . flip (runReaderT [tag|STag|]) r
41test3 :: TestTree
41test3 :: TestTree
42test3 = testGroup "T3: Tag attachement"
42test3 = testGroup "T3: Tag attachement"