Skip to content

Commit e383cd8

Browse files
andrewthadtreeowl
authored andcommitted
Rename unsafe traversals (#137)
Rename unsafe traversals
1 parent 707209c commit e383cd8

File tree

2 files changed

+13
-13
lines changed

2 files changed

+13
-13
lines changed

Data/Primitive/Array.hs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ module Data.Primitive.Array (
2424
sizeofArray, sizeofMutableArray,
2525
fromListN, fromList,
2626
mapArray',
27-
unsafeTraverseArray
27+
traverseArrayP
2828
) where
2929

3030
import Control.Monad.Primitive
@@ -521,9 +521,9 @@ traverseArray f = \ !ary ->
521521

522522
{-# RULES
523523
"traverse/ST" forall (f :: a -> ST s b). traverseArray f =
524-
unsafeTraverseArray f
524+
traverseArrayP f
525525
"traverse/IO" forall (f :: a -> IO b). traverseArray f =
526-
unsafeTraverseArray f
526+
traverseArrayP f
527527
#-}
528528
#if MIN_VERSION_base(4,8,0)
529529
{-# RULES
@@ -538,12 +538,12 @@ traverseArray f = \ !ary ->
538538
-- "affine" 'PrimMonad' instance. In particular, it must only produce
539539
-- *one* result array. 'Control.Monad.Trans.List.ListT'-transformed
540540
-- monads, for example, will not work right at all.
541-
unsafeTraverseArray
541+
traverseArrayP
542542
:: PrimMonad m
543543
=> (a -> m b)
544544
-> Array a
545545
-> m (Array b)
546-
unsafeTraverseArray f = \ !ary ->
546+
traverseArrayP f = \ !ary ->
547547
let
548548
!sz = sizeofArray ary
549549
go !i !mary
@@ -558,7 +558,7 @@ unsafeTraverseArray f = \ !ary ->
558558
in do
559559
mary <- newArray sz badTraverseValue
560560
go 0 mary
561-
{-# INLINE unsafeTraverseArray #-}
561+
{-# INLINE traverseArrayP #-}
562562

563563
-- | Strict map over the elements of the array.
564564
mapArray' :: (a -> b) -> Array a -> Array b

Data/Primitive/SmallArray.hs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ module Data.Primitive.SmallArray
5858
, smallArrayFromList
5959
, smallArrayFromListN
6060
, mapSmallArray'
61-
, unsafeTraverseSmallArray
61+
, traverseSmallArrayP
6262
) where
6363

6464

@@ -411,13 +411,13 @@ sizeofSmallMutableArray (SmallMutableArray ma) = sizeofMutableArray ma
411411
-- "affine" 'PrimMonad' instance. In particular, it must only produce
412412
-- *one* result array. 'Control.Monad.Trans.List.ListT'-transformed
413413
-- monads, for example, will not work right at all.
414-
unsafeTraverseSmallArray
414+
traverseSmallArrayP
415415
:: PrimMonad m
416416
=> (a -> m b)
417417
-> SmallArray a
418418
-> m (SmallArray b)
419419
#if HAVE_SMALL_ARRAY
420-
unsafeTraverseSmallArray f = \ !ary ->
420+
traverseSmallArrayP f = \ !ary ->
421421
let
422422
!sz = sizeofSmallArray ary
423423
go !i !mary
@@ -433,9 +433,9 @@ unsafeTraverseSmallArray f = \ !ary ->
433433
mary <- newSmallArray sz badTraverseValue
434434
go 0 mary
435435
#else
436-
unsafeTraverseSmallArray f (SmallArray ar) = SmallArray `liftM` unsafeTraverseArray f ar
436+
traverseSmallArrayP f (SmallArray ar) = SmallArray `liftM` traverseArrayP f ar
437437
#endif
438-
{-# INLINE unsafeTraverseSmallArray #-}
438+
{-# INLINE traverseSmallArrayP #-}
439439

440440
-- | Strict map over the elements of the array.
441441
mapSmallArray' :: (a -> b) -> SmallArray a -> SmallArray b
@@ -698,8 +698,8 @@ traverseSmallArray f = \ !ary ->
698698
{-# INLINE [1] traverseSmallArray #-}
699699

700700
{-# RULES
701-
"traverse/ST" forall (f :: a -> ST s b). traverseSmallArray f = unsafeTraverseSmallArray f
702-
"traverse/IO" forall (f :: a -> IO b). traverseSmallArray f = unsafeTraverseSmallArray f
701+
"traverse/ST" forall (f :: a -> ST s b). traverseSmallArray f = traverseSmallArrayP f
702+
"traverse/IO" forall (f :: a -> IO b). traverseSmallArray f = traverseSmallArrayP f
703703
"traverse/Id" forall (f :: a -> Identity b). traverseSmallArray f =
704704
(coerce :: (SmallArray a -> SmallArray (Identity b))
705705
-> SmallArray a -> Identity (SmallArray b)) (fmap f)

0 commit comments

Comments
 (0)