1
- {-# LANGUAGE BangPatterns #-}
2
- {-# LANGUAGE CPP #-}
3
- {-# LANGUAGE DerivingVia #-}
4
- {-# LANGUAGE ExistentialQuantification #-}
5
- {-# LANGUAGE FlexibleInstances #-}
6
- {-# LANGUAGE GADTSyntax #-}
7
- {-# LANGUAGE MultiParamTypeClasses #-}
8
- {-# LANGUAGE NamedFieldPuns #-}
9
- {-# LANGUAGE RankNTypes #-}
10
- {-# LANGUAGE ScopedTypeVariables #-}
11
- {-# LANGUAGE TypeFamilies #-}
1
+ {-# LANGUAGE BangPatterns #-}
2
+ {-# LANGUAGE CPP #-}
3
+ {-# LANGUAGE DerivingVia #-}
4
+ {-# LANGUAGE ExistentialQuantification #-}
5
+ {-# LANGUAGE FlexibleInstances #-}
6
+ {-# LANGUAGE GADTSyntax #-}
7
+ {-# LANGUAGE MultiParamTypeClasses #-}
8
+ {-# LANGUAGE NamedFieldPuns #-}
9
+ {-# LANGUAGE RankNTypes #-}
10
+ {-# LANGUAGE ScopedTypeVariables #-}
11
+ {-# LANGUAGE TypeFamilies #-}
12
12
13
13
{-# OPTIONS_GHC -Wno-orphans #-}
14
14
-- incomplete uni patterns in 'schedule' (when interpreting 'StmTxCommitted')
@@ -49,9 +49,7 @@ module Control.Monad.IOSim.Internal
49
49
import Prelude hiding (read )
50
50
51
51
import Data.Dynamic
52
- import Data.Foldable (toList , traverse_ , foldlM )
53
- import Deque.Strict (Deque )
54
- import qualified Deque.Strict as Deque
52
+ import Data.Foldable (foldlM , toList , traverse_ )
55
53
import qualified Data.List as List
56
54
import qualified Data.List.Trace as Trace
57
55
import Data.Map.Strict (Map )
@@ -62,12 +60,14 @@ import qualified Data.OrdPSQ as PSQ
62
60
import Data.Set (Set )
63
61
import qualified Data.Set as Set
64
62
import Data.Time (UTCTime (.. ), fromGregorian )
63
+ import Deque.Strict (Deque )
64
+ import qualified Deque.Strict as Deque
65
65
66
66
import GHC.Exts (fromList )
67
67
import GHC.Conc (ThreadStatus (.. ), BlockReason (.. ))
68
68
69
- import Control.Exception
70
- ( NonTermination ( .. ), assert , throw , AsyncException ( .. ) )
69
+ import Control.Exception ( AsyncException ( .. ), NonTermination ( .. ),
70
+ assert , throw )
71
71
import Control.Monad (join , when )
72
72
import Control.Monad.ST.Lazy
73
73
import Control.Monad.ST.Lazy.Unsafe (unsafeIOToST , unsafeInterleaveST )
0 commit comments