Copyright | [2016..2020] The Accelerate Team |
---|---|
License | BSD3 |
Maintainer | Trevor L. McDonell <trevor.mcdonell@gmail.com> |
Stability | experimental |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
Synopsis
- type family IxShapeRepr e where ...
- fromIArray :: (HasCallStack, IxShapeRepr (EltR ix) ~ EltR sh, IArray a e, Ix ix, Shape sh, Elt ix, Elt e) => a ix e -> Array sh e
- toIArray :: forall ix sh a e. (HasCallStack, IxShapeRepr (EltR ix) ~ EltR sh, IArray a e, Ix ix, Shape sh, Elt e, Elt ix) => Maybe ix -> Array sh e -> a ix e
Documentation
type family IxShapeRepr e where ... Source #
IxShapeRepr () = () | |
IxShapeRepr Int = ((), Int) | |
IxShapeRepr (t, h) = (IxShapeRepr t, h) |
fromIArray :: (HasCallStack, IxShapeRepr (EltR ix) ~ EltR sh, IArray a e, Ix ix, Shape sh, Elt ix, Elt e) => a ix e -> Array sh e Source #
:: (HasCallStack, IxShapeRepr (EltR ix) ~ EltR sh, IArray a e, Ix ix, Shape sh, Elt e, Elt ix) | |
=> Maybe ix | if |
-> Array sh e | |
-> a ix e |
O(n). Convert an Accelerate Array
to an IArray
.
See fromIArray
for a discussion on the expected shape types.