@@ -74,8 +74,7 @@ import Data.Tree (Forest, Tree (..), drawForest)
7474import Data.FastWeakBag (FastWeakBag)
7575import qualified Data.FastWeakBag as FastWeakBag
7676import Data.Reflection
77−import Data.Some (Some)
78−import qualified Data.Some as Some
77+import Data.Some (Some(Some))
7978import Data.Type.Coercion
8079import Data.WeakBag (WeakBag, WeakBagTicket, _weakBag_children)
8180import qualified Data.WeakBag as WeakBag
@@ -582,7 +581,7 @@ eventSubscribedFan !subscribed = EventSubscribed
582581 { eventSubscribedHeightRef = eventSubscribedHeightRef $ _eventSubscription_subscribed $ fanSubscribedParent subscribed
583582 , eventSubscribedRetained = toAny subscribed
584583#ifdef DEBUG_CYCLES
585− , eventSubscribedGetParents = return [Some.This $ _eventSubscription_subscribed $ fanSubscribedParent subscribed]
584+ , eventSubscribedGetParents = return [Some $ _eventSubscription_subscribed $ fanSubscribedParent subscribed]
586585 , eventSubscribedHasOwnHeightRef = False
587586 , eventSubscribedWhoCreated = whoCreatedIORef $ fanSubscribedCachedSubscribed subscribed
588587#endif
@@ -595,7 +594,7 @@ eventSubscribedSwitch !subscribed = EventSubscribed
595594#ifdef DEBUG_CYCLES
596595 , eventSubscribedGetParents = do
597596 s <- readIORef $ switchSubscribedCurrentParent subscribed
598− return [Some.This $ _eventSubscription_subscribed s]
597+ return [Some $ _eventSubscription_subscribed s]
599598 , eventSubscribedHasOwnHeightRef = True
600599 , eventSubscribedWhoCreated = whoCreatedIORef $ switchSubscribedCachedSubscribed subscribed
601600#endif
@@ -608,8 +607,8 @@ eventSubscribedCoincidence !subscribed = EventSubscribed
608607#ifdef DEBUG_CYCLES
609608 , eventSubscribedGetParents = do
610609 innerSubscription <- readIORef $ coincidenceSubscribedInnerParent subscribed
611− let outerParent = Some.This $ _eventSubscription_subscribed $ coincidenceSubscribedOuterParent subscribed
612− innerParents = maybeToList $ fmap Some.This innerSubscription
610+ let outerParent = Some $ _eventSubscription_subscribed $ coincidenceSubscribedOuterParent subscribed
611+ innerParents = maybeToList $ fmap Some innerSubscription
613612 return $ outerParent : innerParents
614613 , eventSubscribedHasOwnHeightRef = True
615614 , eventSubscribedWhoCreated = whoCreatedIORef $ coincidenceSubscribedCachedSubscribed subscribed
@@ -625,13 +624,13 @@ whoCreatedEventSubscribed = eventSubscribedWhoCreated
625624
626625walkInvalidHeightParents :: EventSubscribed x -> IO [Some (EventSubscribed x)]
627626walkInvalidHeightParents s0 = do
628− subscribers <- flip execStateT mempty $ ($ Some.This s0) $ fix $ \loop (Some.This s) -> do
627+ subscribers <- flip execStateT mempty $ ($ Some s0) $ fix $ \loop (Some s) -> do
629628 h <- liftIO $ readIORef $ eventSubscribedHeightRef s
630629 when (h == invalidHeight) $ do
631630 when (eventSubscribedHasOwnHeightRef s) $ liftIO $ writeIORef (eventSubscribedHeightRef s) $! invalidHeightBeingTraversed
632− modify (Some.This s :)
631+ modify (Some s :)
633632 mapM_ loop =<< liftIO (eventSubscribedGetParents s)
634− forM_ subscribers $ \(Some.This s) -> writeIORef (eventSubscribedHeightRef s) $! invalidHeight
633+ forM_ subscribers $ \(Some s) -> writeIORef (eventSubscribedHeightRef s) $! invalidHeight
635634 return subscribers
636635#endif
637636
@@ -659,7 +658,7 @@ behaviorPull !p = Behavior $ do
659658 val <- liftIO $ readIORef $ pullValue p
660659 case val of
661660 Just subscribed -> do
662− askParentsRef >>= mapM_ (\r -> liftIO $ modifyIORef' r (SomeBehaviorSubscribed (Some.This (BehaviorSubscribedPull subscribed)) :))
661+ askParentsRef >>= mapM_ (\r -> liftIO $ modifyIORef' r (SomeBehaviorSubscribed (Some (BehaviorSubscribedPull subscribed)) :))
663662 askInvalidator >>= mapM_ (\wi -> liftIO $ modifyIORef' (pullSubscribedInvalidators subscribed) (wi:))
664663 liftIO $ touch $ pullSubscribedOwnInvalidator subscribed
665664 return $ pullSubscribedValue subscribed
@@ -678,7 +677,7 @@ behaviorPull !p = Behavior $ do
678677 , pullSubscribedParents = parents
679678 }
680679 liftIO $ writeIORef (pullValue p) $ Just subscribed
681− askParentsRef >>= mapM_ (\r -> liftIO $ modifyIORef' r (SomeBehaviorSubscribed (Some.This (BehaviorSubscribedPull subscribed)) :))
680+ askParentsRef >>= mapM_ (\r -> liftIO $ modifyIORef' r (SomeBehaviorSubscribed (Some (BehaviorSubscribedPull subscribed)) :))
682681 return a
683682
684683behaviorDyn :: Patch p => Dyn x p -> Behavior x (PatchTarget p)
@@ -689,7 +688,7 @@ readHoldTracked :: Hold x p -> BehaviorM x (PatchTarget p)
689688readHoldTracked h = do
690689 result <- liftIO $ readIORef $ holdValue h
691690 askInvalidator >>= mapM_ (\wi -> liftIO $ modifyIORef' (holdInvalidators h) (wi:))
692− askParentsRef >>= mapM_ (\r -> liftIO $ modifyIORef' r (SomeBehaviorSubscribed (Some.This (BehaviorSubscribedHold h)) :))
691+ askParentsRef >>= mapM_ (\r -> liftIO $ modifyIORef' r (SomeBehaviorSubscribed (Some (BehaviorSubscribedHold h)) :))
693692 liftIO $ touch h -- Otherwise, if this gets inlined enough, the hold's parent reference may get collected
694693 return result
695694
@@ -862,7 +861,7 @@ instance HasSpiderTimeline x => Defer (Some Clear) (EventM x) where
862861
863862{-# INLINE scheduleClear #-}
864863scheduleClear :: Defer (Some Clear) m => IORef (Maybe a) -> m ()
865−scheduleClear r = defer $ Some.This $ Clear r
864+scheduleClear r = defer $ Some $ Clear r
866865
867866instance HasSpiderTimeline x => Defer (Some IntClear) (EventM x) where
868867 {-# INLINE getDeferralQueue #-}
@@ -870,7 +869,7 @@ instance HasSpiderTimeline x => Defer (Some IntClear) (EventM x) where
870869
871870{-# INLINE scheduleIntClear #-}
872871scheduleIntClear :: Defer (Some IntClear) m => IORef (IntMap a) -> m ()
873−scheduleIntClear r = defer $ Some.This $ IntClear r
872+scheduleIntClear r = defer $ Some $ IntClear r
874873
875874instance HasSpiderTimeline x => Defer (Some RootClear) (EventM x) where
876875 {-# INLINE getDeferralQueue #-}
@@ -878,7 +877,7 @@ instance HasSpiderTimeline x => Defer (Some RootClear) (EventM x) where
878877
879878{-# INLINE scheduleRootClear #-}
880879scheduleRootClear :: Defer (Some RootClear) m => IORef (DMap k Identity) -> m ()
881−scheduleRootClear r = defer $ Some.This $ RootClear r
880+scheduleRootClear r = defer $ Some $ RootClear r
882881
883882instance HasSpiderTimeline x => Defer (SomeResetCoincidence x) (EventM x) where
884883 {-# INLINE getDeferralQueue #-}
@@ -1853,7 +1852,7 @@ mergeSubscriber m getKey = Subscriber
18531852 else liftIO $ do
18541853#ifdef DEBUG_CYCLES
18551854 nodesInvolvedInCycle <- walkInvalidHeightParents $ eventSubscribedMerge subscribed
1856− stacks <- forM nodesInvolvedInCycle $ \(Some.This es) -> whoCreatedEventSubscribed es
1855+ stacks <- forM nodesInvolvedInCycle $ \(Some es) -> whoCreatedEventSubscribed es
18571856 let cycleInfo = ":\n" <> drawForest (listsToForest stacks)
18581857#else
18591858 let cycleInfo = ""
@@ -2096,11 +2095,11 @@ runFrame a = SpiderHost $ do
20962095 return result
20972096 result <- runEventM go
20982097 toClear <- readIORef $ eventEnvClears env
2099− forM_ toClear $ \(Some.This (Clear ref)) -> {-# SCC "clear" #-} writeIORef ref Nothing
2098+ forM_ toClear $ \(Some (Clear ref)) -> {-# SCC "clear" #-} writeIORef ref Nothing
21002099 toClearInt <- readIORef $ eventEnvIntClears env
2101− forM_ toClearInt $ \(Some.This (IntClear ref)) -> {-# SCC "intClear" #-} writeIORef ref $! IntMap.empty
2100+ forM_ toClearInt $ \(Some (IntClear ref)) -> {-# SCC "intClear" #-} writeIORef ref $! IntMap.empty
21022101 toClearRoot <- readIORef $ eventEnvRootClears env
2103− forM_ toClearRoot $ \(Some.This (RootClear ref)) -> {-# SCC "rootClear" #-} writeIORef ref $! DMap.empty
2102+ forM_ toClearRoot $ \(Some (RootClear ref)) -> {-# SCC "rootClear" #-} writeIORef ref $! DMap.empty
21042103 toAssign <- readIORef $ eventEnvAssignments env
21052104 toReconnectRef <- newIORef []
21062105 coincidenceInfos <- readIORef $ eventEnvResetCoincidences env
@@ -2460,7 +2459,7 @@ unsafeNewSpiderTimelineEnv = do
24602459
24612460-- | Create a new SpiderTimelineEnv
24622461newSpiderTimeline :: IO (Some SpiderTimelineEnv)
2463−newSpiderTimeline = withSpiderTimeline (pure . Some.This)
2462+newSpiderTimeline = withSpiderTimeline (pure . Some)
24642463
24652464data LocalSpiderTimeline x s
24662465