Safe Haskell | Safe-Inferred |
---|---|
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, BinderOps rep, Bindable rep, Aliased rep, LetDec rep ~ dec) => IndexSubstitutions dec -> Stms rep -> m (IndexSubstitutions dec, Stms rep)
- type IndexSubstitution dec = (Certificates, VName, dec, Slice SubExp)
- type IndexSubstitutions dec = [(VName, IndexSubstitution dec)]
Documentation
substituteIndices :: (MonadFreshNames m, BinderOps rep, Bindable rep, Aliased rep, LetDec rep ~ dec) => IndexSubstitutions dec -> Stms rep -> m (IndexSubstitutions dec, Stms rep) Source #
Perform the substitution.
type IndexSubstitution dec = (Certificates, VName, dec, Slice SubExp) Source #
type IndexSubstitutions dec = [(VName, IndexSubstitution dec)] Source #