From 9feca56426e0e785a4c1825faeb736dca01c9964 Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Thu, 3 Dec 2015 23:02:51 -0500 Subject: get types of all Reader env tuple elements --- midi-dump.hs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/midi-dump.hs b/midi-dump.hs index c4e319a..034c8f8 100644 --- a/midi-dump.hs +++ b/midi-dump.hs @@ -20,9 +20,15 @@ import Data.Int import Data.ByteString.Char8 (pack) import Control.Concurrent.Chan -import Prelude hiding ((.)) +import Prelude hiding ((.), id) import BasePrelude hiding (loop) +import qualified Sound.ALSA.Sequencer.Address +import qualified Sound.ALSA.Sequencer.Port +import qualified Sound.ALSA.Sequencer.Queue +import qualified Sound.ALSA.Sequencer + + verbose = False main = main' `AlsaExc.catch` handler @@ -63,7 +69,10 @@ main' = withAlsaInit $ \h public private q publicAddr privateAddr -> do execute_ sqlite "CREATE TABLE IF NOT EXISTS chunks (id INTEGER PRIMARY KEY, sec INTEGER, nsec INTEGER, midi BLOB)" saver <- startSaver sqlite - (_, ()) <- execRWST loop (saver, sqlite, startTime, startTimeReal, h, public, private, q, publicAddr, privateAddr) (emptyLoopState startTime) + let env = (saver, sqlite, startTime, startTimeReal, h, public, private, q, publicAddr, privateAddr) + env :: (Chan (Int64, Int64, [EVENT]), Connection, TimeSpec, TimeSpec, Sound.ALSA.Sequencer.T Sound.ALSA.Sequencer.DuplexMode, Sound.ALSA.Sequencer.Port.T, Sound.ALSA.Sequencer.Port.T, Sound.ALSA.Sequencer.Queue.T, Sound.ALSA.Sequencer.Address.T, Sound.ALSA.Sequencer.Address.T) + + (_, ()) <- execRWST loop env (emptyLoopState startTime) return () loop = do -- cgit v1.2.3