@@ -110,19 +110,19 @@ inspect $ hasNoTypeClasses 'readChunksOnException
112-- | Send the file contents to /dev/null with exception handling
112-- | Send the file contents to /dev/null with exception handling
113−readChunksBracket :: Handle -> Handle -> IO ()
113+readChunksBracket_ :: Handle -> Handle -> IO ()
114−readChunksBracket inh devNull =
114+readChunksBracket_ inh devNull =
115− let readEx = IUF.bracket return (\_ -> hClose inh) FH.readChunks
115+ let readEx = IUF.bracket_ return (\_ -> hClose inh) FH.readChunks
116 in IUF.fold readEx (IFH.writeChunks devNull) inh
116 in IUF.fold readEx (IFH.writeChunks devNull) inh
118#ifdef INSPECTION
118#ifdef INSPECTION
119−inspect $ hasNoTypeClasses 'readChunksBracket
119+inspect $ hasNoTypeClasses 'readChunksBracket_
120-- inspect $ 'readChunksBracket `hasNoType` ''Step
120-- inspect $ 'readChunksBracket `hasNoType` ''Step
123−readChunksBracketIO :: Handle -> Handle -> IO ()
123+readChunksBracket :: Handle -> Handle -> IO ()
124−readChunksBracketIO inh devNull =
124+readChunksBracket inh devNull =
125− let readEx = IUF.bracketIO return (\_ -> hClose inh) FH.readChunks
125+ let readEx = IUF.bracket return (\_ -> hClose inh) FH.readChunks
126 in IUF.fold readEx (IFH.writeChunks devNull) inh
126 in IUF.fold readEx (IFH.writeChunks devNull) inh
128o_1_space_copy_exceptions_readChunks :: BenchEnv -> [Benchmark]
128o_1_space_copy_exceptions_readChunks :: BenchEnv -> [Benchmark]
@@ -130,10 +130,10 @@ o_1_space_copy_exceptions_readChunks env =
130 [ bgroup "copy/readChunks/exceptions"
130 [ bgroup "copy/readChunks/exceptions"
131 [ mkBench "UF.onException" env $ \inH _ ->
131 [ mkBench "UF.onException" env $ \inH _ ->
132 readChunksOnException inH (nullH env)
132 readChunksOnException inH (nullH env)
133+ , mkBench "UF.bracket_" env $ \inH _ ->
134+ readChunksBracket_ inH (nullH env)
133 , mkBench "UF.bracket" env $ \inH _ ->
135 , mkBench "UF.bracket" env $ \inH _ ->
134 readChunksBracket inH (nullH env)
136 readChunksBracket inH (nullH env)
135− , mkBench "UF.bracketIO" env $ \inH _ ->
136− readChunksBracketIO inH (nullH env)
@@ -142,22 +142,22 @@ o_1_space_copy_exceptions_readChunks env =
142-------------------------------------------------------------------------------
142-------------------------------------------------------------------------------
144-- | Send the file contents to /dev/null with exception handling
144-- | Send the file contents to /dev/null with exception handling
145−toChunksBracket :: Handle -> Handle -> IO ()
145+toChunksBracket_ :: Handle -> Handle -> IO ()
146−toChunksBracket inh devNull =
146+toChunksBracket_ inh devNull =
147− let readEx = S.bracket
147+ let readEx = IP.bracket_
148 (return ())
148 (return ())
149 (\_ -> hClose inh)
149 (\_ -> hClose inh)
150 (\_ -> IFH.toChunks inh)
150 (\_ -> IFH.toChunks inh)
151 in S.fold (IFH.writeChunks devNull) $ readEx
151 in S.fold (IFH.writeChunks devNull) $ readEx
153#ifdef INSPECTION
153#ifdef INSPECTION
154−inspect $ hasNoTypeClasses 'toChunksBracket
154+inspect $ hasNoTypeClasses 'toChunksBracket_
155-- inspect $ 'toChunksBracket `hasNoType` ''Step
155-- inspect $ 'toChunksBracket `hasNoType` ''Step
158−toChunksBracketIO :: Handle -> Handle -> IO ()
158+toChunksBracket :: Handle -> Handle -> IO ()
159−toChunksBracketIO inh devNull =
159+toChunksBracket inh devNull =
160− let readEx = IP.bracketIO
160+ let readEx = S.bracket
161 (return ())
161 (return ())
162 (\_ -> hClose inh)
162 (\_ -> hClose inh)
163 (\_ -> IFH.toChunks inh)
163 (\_ -> IFH.toChunks inh)
@@ -166,10 +166,10 @@ toChunksBracketIO inh devNull =
166o_1_space_copy_exceptions_toChunks :: BenchEnv -> [Benchmark]
166o_1_space_copy_exceptions_toChunks :: BenchEnv -> [Benchmark]
167o_1_space_copy_exceptions_toChunks env =
167o_1_space_copy_exceptions_toChunks env =
168 [ bgroup "copy/toChunks/exceptions"
168 [ bgroup "copy/toChunks/exceptions"
169+ [ mkBench "S.bracket_" env $ \inH _ ->
170+ toChunksBracket_ inH (nullH env)
169− [ mkBench "S.bracket" env $ \inH _ ->
171+ , mkBench "S.bracket" env $ \inH _ ->
170 toChunksBracket inH (nullH env)
172 toChunksBracket inH (nullH env)
171− , mkBench "S.bracketIO" env $ \inH _ ->
172− toChunksBracketIO inH (nullH env)
@@ -308,35 +308,35 @@ inspect $ hasNoTypeClasses 'readWriteHandleExceptionUnfold
310-- | Send the file contents to /dev/null with exception handling
310-- | Send the file contents to /dev/null with exception handling
311−readWriteFinallyUnfold :: Handle -> Handle -> IO ()
311+readWriteFinally_Unfold :: Handle -> Handle -> IO ()
312−readWriteFinallyUnfold inh devNull =
312+readWriteFinally_Unfold inh devNull =
313− let readEx = IUF.finally (\_ -> hClose inh) FH.read
313+ let readEx = IUF.finally_ (\_ -> hClose inh) FH.read
314 in S.fold (FH.write devNull) $ S.unfold readEx inh
314 in S.fold (FH.write devNull) $ S.unfold readEx inh
316#ifdef INSPECTION
316#ifdef INSPECTION
317−inspect $ hasNoTypeClasses 'readWriteFinallyUnfold
317+inspect $ hasNoTypeClasses 'readWriteFinally_Unfold
318-- inspect $ 'readWriteFinallyUnfold `hasNoType` ''Step
318-- inspect $ 'readWriteFinallyUnfold `hasNoType` ''Step
321−readWriteFinallyIOUnfold :: Handle -> Handle -> IO ()
321+readWriteFinallyUnfold :: Handle -> Handle -> IO ()
322−readWriteFinallyIOUnfold inh devNull =
322+readWriteFinallyUnfold inh devNull =
323− let readEx = IUF.finallyIO (\_ -> hClose inh) FH.read
323+ let readEx = IUF.finally (\_ -> hClose inh) FH.read
324 in S.fold (FH.write devNull) $ S.unfold readEx inh
324 in S.fold (FH.write devNull) $ S.unfold readEx inh
326-- | Send the file contents to /dev/null with exception handling
326-- | Send the file contents to /dev/null with exception handling
327−readWriteBracketUnfold :: Handle -> Handle -> IO ()
327+readWriteBracket_Unfold :: Handle -> Handle -> IO ()
328−readWriteBracketUnfold inh devNull =
328+readWriteBracket_Unfold inh devNull =
329− let readEx = IUF.bracket return (\_ -> hClose inh) FH.read
329+ let readEx = IUF.bracket_ return (\_ -> hClose inh) FH.read
330 in S.fold (FH.write devNull) $ S.unfold readEx inh
330 in S.fold (FH.write devNull) $ S.unfold readEx inh
332#ifdef INSPECTION
332#ifdef INSPECTION
333−inspect $ hasNoTypeClasses 'readWriteBracketUnfold
333+inspect $ hasNoTypeClasses 'readWriteBracket_Unfold
334-- inspect $ 'readWriteBracketUnfold `hasNoType` ''Step
334-- inspect $ 'readWriteBracketUnfold `hasNoType` ''Step
337−readWriteBracketIOUnfold :: Handle -> Handle -> IO ()
337+readWriteBracketUnfold :: Handle -> Handle -> IO ()
338−readWriteBracketIOUnfold inh devNull =
338+readWriteBracketUnfold inh devNull =
339− let readEx = IUF.bracketIO return (\_ -> hClose inh) FH.read
339+ let readEx = IUF.bracket return (\_ -> hClose inh) FH.read
340 in S.fold (FH.write devNull) $ S.unfold readEx inh
340 in S.fold (FH.write devNull) $ S.unfold readEx inh
342o_1_space_copy_read_exceptions :: BenchEnv -> [Benchmark]
342o_1_space_copy_read_exceptions :: BenchEnv -> [Benchmark]
@@ -346,14 +346,14 @@ o_1_space_copy_read_exceptions env =
346 readWriteOnExceptionUnfold inh (nullH env)
346 readWriteOnExceptionUnfold inh (nullH env)
347 , mkBenchSmall "UF.handle" env $ \inh _ ->
347 , mkBenchSmall "UF.handle" env $ \inh _ ->
348 readWriteHandleExceptionUnfold inh (nullH env)
348 readWriteHandleExceptionUnfold inh (nullH env)
349+ , mkBenchSmall "UF.finally_" env $ \inh _ ->
350+ readWriteFinally_Unfold inh (nullH env)
349 , mkBenchSmall "UF.finally" env $ \inh _ ->
351 , mkBenchSmall "UF.finally" env $ \inh _ ->
350 readWriteFinallyUnfold inh (nullH env)
352 readWriteFinallyUnfold inh (nullH env)
351− , mkBenchSmall "UF.finallyIO" env $ \inh _ ->
353+ , mkBenchSmall "UF.bracket_" env $ \inh _ ->
352− readWriteFinallyIOUnfold inh (nullH env)
354+ readWriteBracket_Unfold inh (nullH env)
353 , mkBenchSmall "UF.bracket" env $ \inh _ ->
355 , mkBenchSmall "UF.bracket" env $ \inh _ ->
354 readWriteBracketUnfold inh (nullH env)
356 readWriteBracketUnfold inh (nullH env)
355− , mkBenchSmall "UF.bracketIO" env $ \inh _ ->
356− readWriteBracketIOUnfold inh (nullH env)
@@ -375,31 +375,31 @@ readWriteHandleExceptionStream inh devNull =
375 in S.fold (FH.write devNull) $ readEx
375 in S.fold (FH.write devNull) $ readEx
377-- | Send the file contents to /dev/null with exception handling
377-- | Send the file contents to /dev/null with exception handling
378+readWriteFinally_Stream :: Handle -> Handle -> IO ()
379+readWriteFinally_Stream inh devNull =
380+ let readEx = IP.finally_ (hClose inh) (S.unfold FH.read inh)
381+ in S.fold (FH.write devNull) readEx
378readWriteFinallyStream :: Handle -> Handle -> IO ()
383readWriteFinallyStream :: Handle -> Handle -> IO ()
379readWriteFinallyStream inh devNull =
384readWriteFinallyStream inh devNull =
380 let readEx = S.finally (hClose inh) (S.unfold FH.read inh)
385 let readEx = S.finally (hClose inh) (S.unfold FH.read inh)
381 in S.fold (FH.write devNull) readEx
386 in S.fold (FH.write devNull) readEx
383−readWriteFinallyIOStream :: Handle -> Handle -> IO ()
384−readWriteFinallyIOStream inh devNull =
385− let readEx = IP.finallyIO (hClose inh) (S.unfold FH.read inh)
386− in S.fold (FH.write devNull) readEx
388-- | Send the file contents to /dev/null with exception handling
388-- | Send the file contents to /dev/null with exception handling
389−fromToBytesBracketStream :: Handle -> Handle -> IO ()
389+fromToBytesBracket_Stream :: Handle -> Handle -> IO ()
390−fromToBytesBracketStream inh devNull =
390+fromToBytesBracket_Stream inh devNull =
391− let readEx = S.bracket (return ()) (\_ -> hClose inh)
391+ let readEx = IP.bracket_ (return ()) (\_ -> hClose inh)
392 (\_ -> IFH.toBytes inh)
392 (\_ -> IFH.toBytes inh)
393 in IFH.fromBytes devNull $ readEx
393 in IFH.fromBytes devNull $ readEx
395#ifdef INSPECTION
395#ifdef INSPECTION
396−inspect $ hasNoTypeClasses 'fromToBytesBracketStream
396+inspect $ hasNoTypeClasses 'fromToBytesBracket_Stream
397-- inspect $ 'fromToBytesBracketStream `hasNoType` ''Step
397-- inspect $ 'fromToBytesBracketStream `hasNoType` ''Step
400−fromToBytesBracketIOStream :: Handle -> Handle -> IO ()
400+fromToBytesBracketStream :: Handle -> Handle -> IO ()
401−fromToBytesBracketIOStream inh devNull =
401+fromToBytesBracketStream inh devNull =
402− let readEx = IP.bracketIO (return ()) (\_ -> hClose inh)
402+ let readEx = S.bracket (return ()) (\_ -> hClose inh)
403 (\_ -> IFH.toBytes inh)
403 (\_ -> IFH.toBytes inh)
404 in IFH.fromBytes devNull $ readEx
404 in IFH.fromBytes devNull $ readEx
@@ -410,16 +410,16 @@ o_1_space_copy_stream_exceptions env =
410 readWriteOnExceptionStream inh (nullH env)
410 readWriteOnExceptionStream inh (nullH env)
411 , mkBenchSmall "S.handle" env $ \inh _ ->
411 , mkBenchSmall "S.handle" env $ \inh _ ->
412 readWriteHandleExceptionStream inh (nullH env)
412 readWriteHandleExceptionStream inh (nullH env)
413+ , mkBenchSmall "S.finally_" env $ \inh _ ->
414+ readWriteFinally_Stream inh (nullH env)
413 , mkBenchSmall "S.finally" env $ \inh _ ->
415 , mkBenchSmall "S.finally" env $ \inh _ ->
414 readWriteFinallyStream inh (nullH env)
416 readWriteFinallyStream inh (nullH env)
415− , mkBenchSmall "S.finallyIO" env $ \inh _ ->
416− readWriteFinallyIOStream inh (nullH env)
418 , bgroup "copy/fromToBytes/exceptions"
418 , bgroup "copy/fromToBytes/exceptions"
419+ [ mkBenchSmall "S.bracket_" env $ \inh _ ->
420+ fromToBytesBracket_Stream inh (nullH env)
419− [ mkBenchSmall "S.bracket" env $ \inh _ ->
421+ , mkBenchSmall "S.bracket" env $ \inh _ ->
420 fromToBytesBracketStream inh (nullH env)
422 fromToBytesBracketStream inh (nullH env)
421− , mkBenchSmall "S.bracketIO" env $ \inh _ ->
422− fromToBytesBracketIOStream inh (nullH env)