Safe Haskell | None |
---|---|
Language | Haskell2010 |
This module exports facilities for transforming array accesses in
a list of Stm
s (intended to be the bindings in a body). The
idea is that you can state that some variable x
is in fact an
array indexing v[i0,i1,...]
.
Synopsis
- substituteIndices :: (MonadFreshNames m, BuilderOps rep, Buildable rep, Aliased rep, LParamInfo rep ~ Type) => IndexSubstitutions -> Stms rep -> m (IndexSubstitutions, Stms rep)
- type IndexSubstitution = (Certs, VName, Type, Slice SubExp)
- type IndexSubstitutions = [(VName, IndexSubstitution)]
Documentation
substituteIndices :: (MonadFreshNames m, BuilderOps rep, Buildable rep, Aliased rep, LParamInfo rep ~ Type) => IndexSubstitutions -> Stms rep -> m (IndexSubstitutions, Stms rep) Source #
Perform the substitution.
type IndexSubstitutions = [(VName, IndexSubstitution)] Source #