Copyright | (c) Roman Leshchinskiy 2009 Alexey Kuleshevich 2020-2022 Aleksey Khudyakov 2020-2022 Andrew Lelechenko 2020-2022 |
---|---|
License | BSD-style |
Maintainer | Haskell Libraries Team <libraries@haskell.org> |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Data.Vector.Fusion.Util
Description
Fusion-related utility types
Synopsis
- newtype Id a = Id {
- unId :: a
- data Box a = Box {
- unBox :: a
- liftBox :: Monad m => Box a -> m a
- delay_inline :: (a -> b) -> a -> b
- delayed_min :: Int -> Int -> Int
Documentation
Identity monad
Instances
Applicative Id # | |
Functor Id # | |
Monad Id # | |
Eq1 (Bundle Id v) | |
Ord1 (Bundle Id v) | |
Defined in Data.Vector.Fusion.Bundle Methods liftCompare :: (a -> b -> Ordering) -> Bundle Id v a -> Bundle Id v b -> Ordering | |
Eq a => Eq (Bundle Id v a) | |
Ord a => Ord (Bundle Id v a) | |
Defined in Data.Vector.Fusion.Bundle |
delay_inline :: (a -> b) -> a -> b #
Delay inlining a function until late in the game (simplifier phase 0).
delayed_min :: Int -> Int -> Int #
min
inlined in phase 0