Safe Haskell | None |
---|---|
Language | Haskell2010 |
Converting back and forth between PrimExp
s.
Synopsis
- primExpToExp :: MonadBinder m => (v -> m (Exp (Lore m))) -> PrimExp v -> m (Exp (Lore m))
- primExpFromExp :: (MonadFail m, Annotations lore) => (VName -> m (PrimExp v)) -> Exp lore -> m (PrimExp v)
- primExpFromSubExp :: PrimType -> SubExp -> PrimExp VName
- primExpFromSubExpM :: MonadFail m => (VName -> m (PrimExp v)) -> SubExp -> m (PrimExp v)
- replaceInPrimExp :: (v -> PrimType -> PrimExp v) -> PrimExp v -> PrimExp v
- substituteInPrimExp :: Ord v => Map v (PrimExp v) -> PrimExp v -> PrimExp v
- module Futhark.Analysis.PrimExp
Documentation
primExpToExp :: MonadBinder m => (v -> m (Exp (Lore m))) -> PrimExp v -> m (Exp (Lore m)) Source #
Convert a PrimExp
to a Futhark expression. The provided
function converts the leaves.
primExpFromExp :: (MonadFail m, Annotations lore) => (VName -> m (PrimExp v)) -> Exp lore -> m (PrimExp v) Source #
replaceInPrimExp :: (v -> PrimType -> PrimExp v) -> PrimExp v -> PrimExp v Source #
Applying a transformation to the leaves in a PrimExp
.
substituteInPrimExp :: Ord v => Map v (PrimExp v) -> PrimExp v -> PrimExp v Source #
Substituting names in a PrimExp with other PrimExps
Module reexport
module Futhark.Analysis.PrimExp