on master help sign in
Merge remote-tracking branch 'origin/refactor/microlens-migration'
commit08391a64c40240b3c5ce863a9ab3fa2e6f5bead9 authorJonathan Daugherty <jtd@galois.com> dateFri 29 Apr 2016, 11:30 (10 years ago) parent5729ca650ae590
5 files changed+31−8
src/Graphics/Vty/Input.hs+1−1 src/Graphics/Vty/Input/Loop.hs+11−1 src/Graphics/Vty/PictureToSpans.hs+9−1 test/VerifyUsingMockInput.hs+1−1 vty.cabal+9−4
src/Graphics/Vty/Input.hs+1−1
@@ -137,7 +137,7 @@ import Graphics.Vty.Input.Loop
137137import Graphics.Vty.Input.Terminfo
138138
139139import Control.Concurrent.STM
140−import Control.Lens
140+import Lens.Micro
141141
142142import qualified System.Console.Terminfo as Terminfo
143143import System.Posix.Signals.Exts
src/Graphics/Vty/Input/Loop.hs+11−1
@@ -21,10 +21,14 @@ import Control.Applicative
2121import Control.Concurrent
2222import Control.Concurrent.STM
2323import Control.Exception (mask, try, SomeException)
24−import Control.Lens
24+import Data.Monoid
25+import Lens.Micro
26+import Lens.Micro.Mtl
27+import Lens.Micro.TH
2528import Control.Monad (when, mzero, forM_)
2629import Control.Monad.IO.Class (liftIO)
2730import Control.Monad.Trans.State (StateT(..), evalStateT)
31+import Control.Monad.State.Class (MonadState, modify)
2832import Control.Monad.Trans.Reader (ReaderT(..))
2933
3034import Data.Char
@@ -212,3 +216,9 @@ foreign import ccall "vty_set_term_timing" setTermTiming :: Fd -> Int -> Int ->
212216forkOSFinally :: IO a -> (Either SomeException a -> IO ()) -> IO ThreadId
213217forkOSFinally action and_then =
214218 mask $ \restore -> forkOS $ try (restore action) >>= and_then
219+
220+(<>=) :: (MonadState s m, Monoid a) => ASetter' s a -> a -> m ()
221+l <>= a = modify (l <>~ a)
222+
223+(<>~) :: Monoid a => ASetter s t a a -> a -> s -> t
224+l <>~ n = over l (`mappend` n)
src/Graphics/Vty/PictureToSpans.hs+9−1
@@ -21,7 +21,9 @@ import Graphics.Vty.Image.Internal
2121import Graphics.Vty.Picture
2222import Graphics.Vty.Span
2323
24−import Control.Lens hiding ( op )
24+import Lens.Micro
25+import Lens.Micro.Mtl
26+import Lens.Micro.TH
2527import Control.Monad.Reader
2628import Control.Monad.State.Strict hiding ( state )
2729
@@ -355,3 +357,9 @@ snocOp !op !row = do
355357 when (spanOpsEffectedColumns ops' > regionWidth theRegion)
356358 $ fail $ "row " ++ show row ++ " now exceeds region width"
357359 MVector.write theMrowOps row ops'
360+
361+(-~) :: Num a => ASetter s t a a -> a -> s -> t
362+l -~ n = over l (subtract n)
363+
364+(+~) :: Num a => ASetter s t a a -> a -> s -> t
365+l +~ n = over l (n +)
test/VerifyUsingMockInput.hs+1−1
@@ -16,7 +16,7 @@ import Control.Applicative
1616import Control.Concurrent
1717import Control.Concurrent.STM
1818import Control.Exception
19−import Control.Lens ((^.))
19+import Lens.Micro ((^.))
2020import Control.Monad
2121
2222import Data.Default
vty.cabal+9−4
@@ -57,7 +57,9 @@ library
5757 deepseq >= 1.1 && < 1.5,
5858 directory,
5959 filepath >= 1.0 && < 2.0,
60− lens >= 3.9.0.2 && < 5.0,
60+ microlens,
61+ microlens-mtl,
62+ microlens-th,
6163 -- required for nice installation with yi
6264 hashable >= 1.2,
6365 mtl >= 1.1.1.0 && < 2.3,
@@ -134,7 +136,8 @@ executable vty-demo
134136 base >= 4 && < 5,
135137 containers,
136138 data-default >= 0.5.3,
137− lens,
139+ microlens,
140+ microlens-mtl,
138141 mtl >= 1.1.1.0 && < 2.3
139142
140143test-suite verify-attribute-ops
@@ -567,7 +570,8 @@ test-suite verify-using-mock-input
567570 bytestring,
568571 containers,
569572 deepseq >= 1.1 && < 1.5,
570− lens >= 3.9.0.2 && < 5.0,
573+ microlens,
574+ microlens-mtl,
571575 mtl >= 1.1.1.0 && < 2.3,
572576 stm,
573577 terminfo >= 0.3 && < 0.5,
@@ -603,7 +607,8 @@ test-suite verify-config
603607 bytestring,
604608 containers,
605609 deepseq >= 1.1 && < 1.5,
606− lens >= 3.9.0.2 && < 5.0,
610+ microlens,
611+ microlens-mtl,
607612 mtl >= 1.1.1.0 && < 2.3,
608613 string-qq,
609614 terminfo >= 0.3 && < 0.5,