Safe Haskell | None |
---|---|
Language | Haskell98 |
Data.Ix.Shapable
Documentation
class Shapable i where Source #
We need this type class to distinguish between different tuples of Ix. There are Shapable instances for homogenous Int tuples, but may Haddock doesn't see them.
Instances
Shapable Int Source # | |
Shapable (Int, Int) Source # | |
Shapable (Int, Int, Int) Source # | |
Shapable (Int, Int, Int, Int) Source # | |
Shapable (Int, Int, Int, Int, Int) Source # | |
Shapable (Int, Int, Int, Int, Int, Int) Source # | |
Shapable (Int, Int, Int, Int, Int, Int, Int) Source # | |
Defined in Data.Ix.Shapable | |
Shapable (Int, Int, Int, Int, Int, Int, Int, Int) Source # | |
Defined in Data.Ix.Shapable | |
Shapable (Int, Int, Int, Int, Int, Int, Int, Int, Int) Source # | |
Defined in Data.Ix.Shapable Methods sRank :: (Int, Int, Int, Int, Int, Int, Int, Int, Int) -> Int Source # sShape :: (Int, Int, Int, Int, Int, Int, Int, Int, Int) -> (Int, Int, Int, Int, Int, Int, Int, Int, Int) -> [Int] Source # sBounds :: [Int] -> ((Int, Int, Int, Int, Int, Int, Int, Int, Int), (Int, Int, Int, Int, Int, Int, Int, Int, Int)) Source # |
shape :: (Shapable i, Ix i, IArray a e) => a i e -> [Int] Source #
Canonical representation of the shape. The following properties hold: 'length . shape = rank' 'product . shape = size'
shapeToStride :: [Int] -> [Int] Source #
How much the offset changes when you move one element in the given direction. Since arrays are in row-major order, 'last . shapeToStride = const 1'