@@ -1,6 +1,7 @@
1{-# LANGUAGE CPP #-}
1{-# LANGUAGE CPP #-}
2{-# LANGUAGE RankNTypes #-}
2{-# LANGUAGE RankNTypes #-}
3{-# LANGUAGE DeriveDataTypeable #-}
3{-# LANGUAGE DeriveDataTypeable #-}
4+{-# LANGUAGE DeriveFunctor #-}
4{-# LANGUAGE ScopedTypeVariables #-}
5{-# LANGUAGE ScopedTypeVariables #-}
5{-# LANGUAGE ExistentialQuantification #-}
6{-# LANGUAGE ExistentialQuantification #-}
6{-# LANGUAGE BangPatterns #-}
7{-# LANGUAGE BangPatterns #-}
@@ -374,6 +375,7 @@ mergePortsRR = \ps -> do
375-- | Opaque type used in 'receiveWait' and 'receiveTimeout'
376-- | Opaque type used in 'receiveWait' and 'receiveTimeout'
376newtype Match b = Match { unMatch :: MatchOn Message (Process b) }
377newtype Match b = Match { unMatch :: MatchOn Message (Process b) }
378-- | Test the matches in order against each message in the queue
380-- | Test the matches in order against each message in the queue
379receiveWait :: [Match b] -> Process b
381receiveWait :: [Match b] -> Process b