on develop help sign in
change MapWithMove2 to be MapWithMove.New
fa23898E Cardenas
reflex.cabal+1−1
@@ -117,7 +117,7 @@ library
117 Reflex.Patch.IntMap,
117 Reflex.Patch.IntMap,
118 Reflex.Patch.Map,
118 Reflex.Patch.Map,
119 Reflex.Patch.MapWithMove,
119 Reflex.Patch.MapWithMove,
120− Reflex.Patch.MapWithMove2,
120+ Reflex.Patch.MapWithMove.New,
121 Reflex.PerformEvent.Base,
121 Reflex.PerformEvent.Base,
122 Reflex.PerformEvent.Class,
122 Reflex.PerformEvent.Class,
123 Reflex.PostBuild.Base,
123 Reflex.PostBuild.Base,
src/Reflex/Patch.hs+1−1
@@ -21,7 +21,7 @@ import Reflex.Patch.Map as X
21import Reflex.Patch.MapWithMove as X (PatchMapWithMove, patchMapWithMoveNewElements,
21import Reflex.Patch.MapWithMove as X (PatchMapWithMove, patchMapWithMoveNewElements,
22 patchMapWithMoveNewElementsMap, unPatchMapWithMove,
22 patchMapWithMoveNewElementsMap, unPatchMapWithMove,
23 unsafePatchMapWithMove)
23 unsafePatchMapWithMove)
24−import Reflex.Patch.MapWithMove2 as X (PatchMapWithMove2, patchMapWithMove2NewElements,
24+import Reflex.Patch.MapWithMove.New as X (PatchMapWithMove2, patchMapWithMove2NewElements,
25 patchMapWithMove2NewElementsMap, unPatchMapWithMove2,
25 patchMapWithMove2NewElementsMap, unPatchMapWithMove2,
26 unsafePatchMapWithMove2)
26 unsafePatchMapWithMove2)
27
27
src/Reflex/Patch/MapWithMove2.hs → src/Reflex/Patch/MapWithMove/New.hsrenamed+6−6
@@ -7,7 +7,7 @@
7{-# LANGUAGE UndecidableInstances #-}
7{-# LANGUAGE UndecidableInstances #-}
8-- | 'Patch'es on 'Map' that can insert, delete, and move values from one key to
8-- | 'Patch'es on 'Map' that can insert, delete, and move values from one key to
9-- another
9-- another
10−module Reflex.Patch.MapWithMove2 where
10+module Reflex.Patch.MapWithMove.New where
11
11
12import Reflex.Patch.Class
12import Reflex.Patch.Class
13
13
@@ -25,7 +25,7 @@ import Data.These
25import Data.Tuple
25import Data.Tuple
26
26
27-- | Patch a DMap with additions, deletions, and moves. Invariant: If key @k1@
27-- | Patch a DMap with additions, deletions, and moves. Invariant: If key @k1@
28−-- is coming from @From_Move k2@, then key @k2@ should be going to @Just k1@,
28+-- is coming from @From_Move k@, then key @k2@ should be going to @Just k1@,
29-- and vice versa. There should never be any unpaired From/To keys.
29-- and vice versa. There should never be any unpaired From/To keys.
30newtype PatchMapWithMove2 k p = PatchMapWithMove2 (Map k (NodeInfo k p))
30newtype PatchMapWithMove2 k p = PatchMapWithMove2 (Map k (NodeInfo k p))
31deriving instance (Show k, Show p, Show (PatchTarget p)) => Show (PatchMapWithMove2 k p)
31deriving instance (Show k, Show p, Show (PatchTarget p)) => Show (PatchMapWithMove2 k p)
@@ -47,8 +47,8 @@ deriving instance (Eq k, Eq p, Eq (PatchTarget p)) => Eq (NodeInfo k p)
47deriving instance (Ord k, Ord p, Ord (PatchTarget p)) => Ord (NodeInfo k p)
47deriving instance (Ord k, Ord p, Ord (PatchTarget p)) => Ord (NodeInfo k p)
48
48
49-- | Create a 'PatchMapWithMove2', validating it
49-- | Create a 'PatchMapWithMove2', validating it
50−patchMapWithMove2 :: Ord k => Map k (NodeInfo k p) -> Maybe (PatchMapWithMove2 k p)
50+patchMapWithMove :: Ord k => Map k (NodeInfo k p) -> Maybe (PatchMapWithMove2 k p)
51−patchMapWithMove2 m = if valid then Just $ PatchMapWithMove2 m else Nothing
51+patchMapWithMove m = if valid then Just $ PatchMapWithMove2 m else Nothing
52 where valid = forwardLinks == backwardLinks
52 where valid = forwardLinks == backwardLinks
53 forwardLinks = Map.mapMaybe _nodeInfo_to m
53 forwardLinks = Map.mapMaybe _nodeInfo_to m
54 backwardLinks = Map.fromList $ catMaybes $ flip fmap (Map.toList m) $ \(to, p) ->
54 backwardLinks = Map.fromList $ catMaybes $ flip fmap (Map.toList m) $ \(to, p) ->
@@ -57,8 +57,8 @@ patchMapWithMove2 m = if valid then Just $ PatchMapWithMove2 m else Nothing
57 _ -> Nothing
57 _ -> Nothing
58
58
59-- | Create a 'PatchMapWithMove2' that inserts everything in the given 'Map'
59-- | Create a 'PatchMapWithMove2' that inserts everything in the given 'Map'
60−patchMapWithMove2InsertAll :: Map k (PatchTarget p) -> PatchMapWithMove2 k p
60+patchMapWithMoveInsertAll :: Map k (PatchTarget p) -> PatchMapWithMove2 k p
61−patchMapWithMove2InsertAll m = PatchMapWithMove2 $ flip fmap m $ \v -> NodeInfo
61+patchMapWithMoveInsertAll m = PatchMapWithMove2 $ flip fmap m $ \v -> NodeInfo
62 { _nodeInfo_from = From_Insert v
62 { _nodeInfo_from = From_Insert v
63 , _nodeInfo_to = Nothing
63 , _nodeInfo_to = Nothing
64 }
64 }