accelerate-1.4.0.0: An embedded language for accelerated array processing
Copyright[2012..2020] The Accelerate Team
LicenseBSD3
MaintainerTrevor L. McDonell <trevor.mcdonell@gmail.com>
Stabilityexperimental
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Data.Array.Accelerate.Trafo.Var

Description

 

Documentation

data DeclareVars (s :: Type -> Type) t aenv where Source #

Constructors

DeclareVars :: forall (s :: Type -> Type) t aenv env'. LeftHandSide s t aenv env' -> (aenv :> env') -> (forall env''. (env' :> env'') -> Vars s env'' t) -> DeclareVars s t aenv 

declareVars :: forall (s :: Type -> Type) t env. TupR s t -> DeclareVars s t env Source #

type InjectAcc (acc :: Type -> Type -> Type) = forall env t. PreOpenAcc acc env t -> acc env t Source #

type ExtractAcc (acc :: Type -> Type -> Type) = forall env t. acc env t -> Maybe (PreOpenAcc acc env t) Source #

avarIn :: InjectAcc acc -> ArrayVar aenv a -> acc aenv a Source #

avarsIn :: InjectAcc acc -> ArrayVars aenv arrs -> acc aenv arrs Source #

avarsOut :: forall (acc :: Type -> Type -> Type) aenv a. ExtractAcc acc -> PreOpenAcc acc aenv a -> Maybe (ArrayVars aenv a) Source #