Modulevector-0.13.2.0
Data.Vector.Fusion.Stream.Monadic
Synopsis
- value !!
- value !?
- value ++
- value and
- value catMaybes
- value cmpBy
- value concatMap
- value concatMapM
- value cons
- value drop
- value dropWhile
- value dropWhileM
- value elem
- value empty
- value enumFromStepN
- value enumFromThenTo
- value enumFromTo
- value eqBy
- value filter
- value filterM
- value find
- value findIndex
- value findIndexM
- value findM
- value flatten
- value fold1M
- value fold1M'
- value foldM
- value foldM'
- value foldl
- value foldl'
- value foldl1
- value foldl1'
- value foldl1M
- value foldl1M'
- value foldlM
- value foldlM'
- value foldr
- value foldr1
- value foldr1M
- value foldrM
- value fromList
- value fromListN
- value generate
- value generateM
- value head
- value indexed
- value indexedR
- value init
- value iterateN
- value iterateNM
- value last
- value length
- value liftBox
- value map
- value mapM
- value mapM_
- value mapMaybe
- value mapMaybeM
- value notElem
- value null
- value or
- value postscanl
- value postscanl'
- value postscanlM
- value postscanlM'
- value prescanl
- value prescanl'
- value prescanlM
- value prescanlM'
- value replicate
- value replicateM
- value scanl
- value scanl'
- value scanl1
- value scanl1'
- value scanl1M
- value scanl1M'
- value scanlM
- value scanlM'
- value singleton
- value slice
- value snoc
- value tail
- value take
- value takeWhile
- value takeWhileM
- value toList
- value trans
- value unbox
- value unfoldr
- value unfoldrExactN
- value unfoldrExactNM
- value unfoldrM
- value unfoldrN
- value unfoldrNM
- value uniq
- value zip
- value zip3
- value zip4
- value zip5
- value zip6
- value zipWith
- value zipWith3
- value zipWith3M
- value zipWith4
- value zipWith4M
- value zipWith5
- value zipWith5M
- value zipWith6
- value zipWith6M
- value zipWithM
- value zipWithM_
- data SPEC
- data Box
- data Step
- data Stream
- Packagevector-0.13.2.0
- Exports117
- LicenceBSD-3-Clause
- SourceTypes.hs
SPEC is used by GHC in the SpecConstr pass in order to inform
the compiler when to be particularly aggressive. In particular, it
tells GHC to specialize regardless of size or the number of
specializations. However, not all loops fall into this category.
Libraries can specify this by using SPEC data type to inform which loops should be aggressively specialized. For example, instead of
loop x where loop arg = ...write
loop SPEC x where loop !_ arg = ...There is no semantic difference between SPEC and SPEC2,
we just need a type with two constructors lest it is optimised away
before SpecConstr.
This type is reexported from GHC.Exts since GHC 9.0 and base-4.15.
For compatibility with earlier releases import it from GHC.Internal.Types
in ghc-internal package.