vector-0.10.9.1: Efficient Arrays

Copyright | (c) Roman Leshchinskiy 2009
License | BSD-style
Maintainer | Roman Leshchinskiy <rl@cse.unsw.edu.au>
Stability | experimental
Portability | portable
Safe Haskell | Safe-Inferred
Language | Haskell98

Data.Vector.Fusion.Util

Description

Fusion-related utility types

Synopsis

- newtype Id a = Id {
  - unId :: a
  }
- data Box a = Box {
  - unBox :: a
  }
- delay_inline :: (a -> b) -> a -> b
- delayed_min :: Int -> Int -> Int

# Documentation

newtype Id a

Identity monad

Constructors

Id |

Fields

unId :: a

Instances

Monad Id |
Functor Id |
Eq a => Eq (Stream Id a) |
Ord a => Ord (Stream Id a) |

data Box a

Box monad

Constructors

Box |

Fields

unBox :: a

Instances

Monad Box |
Functor Box |

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