Safe Haskell | None |
---|---|

Language | Haskell2010 |

Operations to fill primitive arrays. Arrays are combined just like
indices using `Z`

and '(:.)'. This allows filling an unlimited number of
tables. `ExtShape`

provides the `rangeStream`

function with generates
a stream of indices in (generally) the right order.

- unsafeRunFillTables :: (Index sh, IndexStream sh, WriteCell m (tail :. (MutArr m (arr sh elm), t)) sh, MPrimArrayOps arr sh elm, Monad m, PrimMonad m) => (tail :. (MutArr m (arr sh elm), t)) -> m ()
- class Monad m => WriteCell m c sh where

# High-level table filling system.

unsafeRunFillTables :: (Index sh, IndexStream sh, WriteCell m (tail :. (MutArr m (arr sh elm), t)) sh, MPrimArrayOps arr sh elm, Monad m, PrimMonad m) => (tail :. (MutArr m (arr sh elm), t)) -> m () Source #

Run the forward phase of algorithms. Is *really* unsafe for now if tables have different sizes, as in its broken.

TODO Need to run min/max on the bounds for all tables, not just the last
table. Otherwise we don't really need the distinction between save and
unsafe. This will have to be in `runFillTables`

.