From 4d7ecb10ada3115da14fb7baefe9cb1b510bb6ae Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Thu, 25 Feb 2016 17:56:21 +0000 Subject: delayed debugging printer --- server/src/Thermoprint/Server/Printer/Debug/Delayed.hs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 server/src/Thermoprint/Server/Printer/Debug/Delayed.hs (limited to 'server/src/Thermoprint') diff --git a/server/src/Thermoprint/Server/Printer/Debug/Delayed.hs b/server/src/Thermoprint/Server/Printer/Debug/Delayed.hs new file mode 100644 index 0000000..c002d43 --- /dev/null +++ b/server/src/Thermoprint/Server/Printer/Debug/Delayed.hs @@ -0,0 +1,16 @@ +-- | A printer which blocks for a certain time and writes to log +module Thermoprint.Server.Printer.Debug.Delayed + ( delayedDebugPrint + ) where + +import Control.Monad.IO.Class +import Control.Applicative + +import Control.Concurrent (threadDelay) + +import Thermoprint.Server.Printer +import Thermoprint.Server.Printer.Debug + +delayedDebugPrint :: Int -> PrinterMethod +-- ^ Wait the given number of microseconds before invoking 'debugPrint' +delayedDebugPrint wait = PM $ \po -> let (PM debugPrint') = debugPrint in liftIO (threadDelay wait) *> debugPrint' po -- cgit v1.2.3