@@ -39,6 +39,7 @@ import Streamly.Benchmark.Common.Handle
3939#ifdef INSPECTION
4040import Foreign.Storable (Storable)
4141import Streamly.Internal.Data.Stream.StreamD.Type (Step(..))
42+import qualified Streamly.Internal.Data.Fold.Types as Fold
4243import qualified Streamly.Internal.Data.Tuple.Strict as Strict
4344import qualified Streamly.Internal.Data.Array.Foreign.Type as AT
4445import qualified Streamly.Internal.Data.Array.Foreign.Mut.Type as MA
@@ -50,6 +51,7 @@ moduleName :: String
5051moduleName = "Unicode.Stream"
5152
5253-- | Copy file
54+{-# NOINLINE copyCodecUtf8ArraysLenient #-}
5355copyCodecUtf8ArraysLenient :: Handle -> Handle -> IO ()
5456copyCodecUtf8ArraysLenient inh outh =
5557 S.fold (FH.write outh)
@@ -75,6 +77,7 @@ o_1_space_decode_encode_chunked env =
7577-- copy with group/ungroup transformations
7678-------------------------------------------------------------------------------
7779
80+{-# NOINLINE linesUnlinesCopy #-}
7881linesUnlinesCopy :: Handle -> Handle -> IO ()
7982linesUnlinesCopy inh outh =
8083 S.fold (FH.write outh)
@@ -84,6 +87,7 @@ linesUnlinesCopy inh outh =
8487 $ SS.decodeLatin1
8588 $ S.unfold FH.read inh
8689
90+{-# NOINLINE linesUnlinesArrayWord8Copy #-}
8791linesUnlinesArrayWord8Copy :: Handle -> Handle -> IO ()
8892linesUnlinesArrayWord8Copy inh outh =
8993 S.fold (FH.write outh)
@@ -93,6 +97,7 @@ linesUnlinesArrayWord8Copy inh outh =
9397
9498-- XXX splitSuffixOn requires -funfolding-use-threshold=150 for better fusion
9599-- | Lines and unlines
100+{-# NOINLINE linesUnlinesArrayCharCopy #-}
96101linesUnlinesArrayCharCopy :: Handle -> Handle -> IO ()
97102linesUnlinesArrayCharCopy inh outh =
98103 S.fold (FH.write outh)
@@ -122,6 +127,7 @@ linesUnlinesArrayUtf8Copy inh outh =
122127-}
123128
124129-- | Word, unwords and copy
130+{-# NOINLINE wordsUnwordsCopyWord8 #-}
125131wordsUnwordsCopyWord8 :: Handle -> Handle -> IO ()
126132wordsUnwordsCopyWord8 inh outh =
127133 S.fold (FH.write outh)
@@ -135,6 +141,7 @@ inspect $ hasNoTypeClasses 'wordsUnwordsCopyWord8
135141#endif
136142
137143-- | Word, unwords and copy
144+{-# NOINLINE wordsUnwordsCopy #-}
138145wordsUnwordsCopy :: Handle -> Handle -> IO ()
139146wordsUnwordsCopy inh outh =
140147 S.fold (FH.write outh)
@@ -157,6 +164,7 @@ wordsUnwordsCopy inh outh =
157164-- inspect $ 'wordsUnwordsCopy `hasNoType` ''Step
158165#endif
159166
167+{-# NOINLINE wordsUnwordsCharArrayCopy #-}
160168wordsUnwordsCharArrayCopy :: Handle -> Handle -> IO ()
161169wordsUnwordsCharArrayCopy inh outh =
162170 S.fold (FH.write outh)
@@ -190,6 +198,7 @@ o_1_space_copy_read_group_ungroup env =
190198-------------------------------------------------------------------------------
191199
192200-- | Copy file (encodeLatin1')
201+{-# NOINLINE copyStreamLatin1' #-}
193202copyStreamLatin1' :: Handle -> Handle -> IO ()
194203copyStreamLatin1' inh outh =
195204 S.fold (FH.write outh)
@@ -202,11 +211,14 @@ inspect $ hasNoTypeClasses 'copyStreamLatin1'
202211inspect $ 'copyStreamLatin1' `hasNoType` ''Step
203212inspect $ 'copyStreamLatin1' `hasNoType` ''IUF.ConcatState -- FH.read/UF.concat
204213inspect $ 'copyStreamLatin1' `hasNoType` ''MA.ReadUState -- FH.read/A.read
214+
215+inspect $ 'copyStreamLatin1' `hasNoType` ''Fold.Step
205216inspect $ 'copyStreamLatin1' `hasNoType` ''AT.ArrayUnsafe -- FH.write/writeNUnsafe
206217inspect $ 'copyStreamLatin1' `hasNoType` ''Strict.Tuple3' -- FH.write/chunksOf
207218#endif
208219
209220-- | Copy file (encodeLatin1)
221+{-# NOINLINE copyStreamLatin1 #-}
210222copyStreamLatin1 :: Handle -> Handle -> IO ()
211223copyStreamLatin1 inh outh =
212224 S.fold (FH.write outh)
@@ -219,6 +231,8 @@ inspect $ hasNoTypeClasses 'copyStreamLatin1
219231inspect $ 'copyStreamLatin1 `hasNoType` ''Step
220232inspect $ 'copyStreamLatin1 `hasNoType` ''IUF.ConcatState -- FH.read/UF.concat
221233inspect $ 'copyStreamLatin1 `hasNoType` ''MA.ReadUState -- FH.read/A.read
234+
235+inspect $ 'copyStreamLatin1 `hasNoType` ''Fold.Step
222236inspect $ 'copyStreamLatin1 `hasNoType` ''AT.ArrayUnsafe -- FH.write/writeNUnsafe
223237inspect $ 'copyStreamLatin1 `hasNoType` ''Strict.Tuple3' -- FH.write/chunksOf
224238#endif
@@ -239,6 +253,7 @@ inspect $ hasNoTypeClasses '_copyStreamUtf8'
239253#endif
240254
241255-- | Copy file
256+{-# NOINLINE copyStreamUtf8 #-}
242257copyStreamUtf8 :: Handle -> Handle -> IO ()
243258copyStreamUtf8 inh outh =
244259 S.fold (FH.write outh)