on develop help sign in
Small cleanups
6c063e8Ryan Trinkle
src/Reflex/Class.hs+7−7
@@ -889,13 +889,13 @@ switchHoldPromptOnlyIncremental
889 -> (Incremental t (p (Event t w)) -> Event t (pt w))
889 -> (Incremental t (p (Event t w)) -> Event t (pt w))
890 -> m (Event t (pt w))
890 -> m (Event t (pt w))
891switchHoldPromptOnlyIncremental e0 ee mergePatchNewElements mergePatchIncremental = do
891switchHoldPromptOnlyIncremental e0 ee mergePatchNewElements mergePatchIncremental = do
892− let replaced :: Event t (p (Maybe w))
892+ let replaced :: Event t (ApplyElement (p (Maybe w)))
893− replaced = fmap (const Nothing) <$> ee
893+ replaced = fmapCheap (Apply . (Nothing <$)) ee
894− new :: Event t (pt (Maybe w))
894+ new :: Event t (ApplyElement (p (Maybe w)))
895− new = fmap (fmap Just) $ coincidence $ fmapCheap mergePatchNewElements ee
895+ new = fmapCheap (Append . fmap Just) $ coincidence $ fmapCheap mergePatchNewElements ee
896− held <- fmap (fmap Just) . mergePatchIncremental <$> holdIncremental e0 ee
896+ held <- fmapCheap (Append . fmap Just) . mergePatchIncremental <$> holdIncremental e0 ee
897− let e = mergeList [fmapCheap Append held, fmapCheap Apply replaced, fmapCheap Append new]
897+ let e = mergeList [held, replaced, new]
898− return $ fmap (fmapMaybe id) $ ffor e $ \chain -> foldl applyElement mempty chain
898+ return $ fmap (fmapMaybe id . foldl' applyElement mempty) e
899 where
899 where
900 applyElement :: pt (Maybe w) -> ApplyElement (p (Maybe w)) -> pt (Maybe w)
900 applyElement :: pt (Maybe w) -> ApplyElement (p (Maybe w)) -> pt (Maybe w)
901 applyElement pt = \case
901 applyElement pt = \case