feldspar-compiler-0.4.0.2: Compiler for the Feldspar language

Feldspar.Transformation.Framework

Documentation

class Convert a b whereSource

Methods

convert :: a -> bSource

Instances

Default b => Convert a b 

data Transformation t => Result t s Source

Constructors

Result 

Fields

result :: s (To t)
 
state :: State t
 
up :: Up t
 

Instances

(Transformation t, Show (s (To t)), Show (State t), Show (Up t)) => Show (Result t s) 

data Transformation t => Result1 t s a Source

Constructors

Result1 

Fields

result1 :: s (a (To t))
 
state1 :: State t
 
up1 :: Up t
 

Instances

(Transformation t, Show (s (b (To t))), Show (State t), Show (Up t)) => Show (Result1 t s b) 

class Transformation t => Transformable t s whereSource

Methods

transform :: t -> State t -> Down t -> s (From t) -> Result t sSource

Instances

DefaultTransformable t s => Transformable t s 
Transformable ConstantFolding Expression 
Transformable Precompilation Variable 
Transformable Precompilation Definition 
Transformable VariableRoleAssigner Variable 
Transformable VariableRoleAssigner Definition 
Transformable AllocationEliminator Expression 
Transformable AllocationEliminator Definition 
Transformable Unroll_2 Variable 
Transformable Unroll_2 Expression 
Transformable Unroll_2 Program 
Transformable Unroll_1 Program 
Transformable BlockProgramHandler Program 
Transformable BlockProgramHandler Block 
Transformable TypeCorrector Variable 
Transformable TypeCorrector Definition 
Transformable TypeCheck Variable 
Transformable TypeCheck Declaration 
Transformable TypeCheck Program 
Transformable TypeCheck Block 
Transformable TypeCheck Definition 
Transformable GlobalCollector Variable 
Transformable GlobalCollector Definition 
Transformable TypeDefinitionGenerator Variable 
Transformable TypeDefinitionGenerator Module 
Transformable DebugToC Variable 
Transformable DebugToC Constant 
Transformable DebugToC Expression 
Transformable DebugToC Declaration 
Transformable DebugToC ActualParameter 
Transformable DebugToC SwitchCase 
Transformable DebugToC Program 
Transformable DebugToC Block 
Transformable DebugToC UnionMember 
Transformable DebugToC StructMember 
Transformable DebugToC Definition 
Transformable DebugToC Module 
Transformable GetPrgSwitch Program 
Transformable GetPrgBranch Program 
Transformable GetPrgAssign Program 
Transformable GetPrgParLoop Program 
Transformable HandlePrimitives Expression 
Transformable HandlePrimitives Declaration 
Transformable HandlePrimitives Program 
Transformable HandlePrimitives Block 
Transformable HandleTraceFunctions Expression 
Transformable HandleTraceFunctions Definition 

class Transformation t => DefaultTransformable t s whereSource

Methods

defaultTransform :: t -> State t -> Down t -> s (From t) -> Result t sSource

Instances

(Conversion t Variable, Default (Up t)) => DefaultTransformable t Variable 
(Transformable t Constant, Transformable1 t [] Constant, Conversion t Constant, Conversion t IntConst, Conversion t FloatConst, Conversion t BoolConst, Conversion t ArrayConst, Conversion t ComplexConst, Default (Up t)) => DefaultTransformable t Constant 
(Transformable t Expression, Transformable t Variable, Transformable t Constant, Transformable1 t [] Expression, Conversion t Expression, Conversion t FunctionCall, Conversion t ArrayElem, Conversion t StructField, Conversion t UnionField, Conversion t SizeOf, Conversion t Cast, Default (Up t)) => DefaultTransformable t Expression 
(Transformable t Variable, Transformable1 t Maybe Expression, Conversion t Declaration) => DefaultTransformable t Declaration 
(Transformable t Expression, Conversion t ActualParameter) => DefaultTransformable t ActualParameter 
(Transformable t Constant, Transformable t Block, Conversion t SwitchCase) => DefaultTransformable t SwitchCase 
(Transformable1 t [] Program, Transformable t Expression, Transformable1 t [] ActualParameter, Transformable t Block, Transformable t Variable, Transformable1 t [] SwitchCase, Conversion t Program, Conversion t Empty, Conversion t Comment, Conversion t Assign, Conversion t ProcedureCall, Conversion t Sequence, Conversion t Branch, Conversion t Switch, Conversion t SeqLoop, Conversion t ParLoop, Default (Up t)) => DefaultTransformable t Program 
(Transformable1 t [] Declaration, Transformable t Program, Conversion t Block) => DefaultTransformable t Block 
(Conversion t UnionMember, Default (Up t)) => DefaultTransformable t UnionMember 
(Conversion t StructMember, Default (Up t)) => DefaultTransformable t StructMember 
(Transformable1 t [] StructMember, Transformable1 t [] UnionMember, Transformable1 t [] Variable, Transformable t Block, Transformable t Declaration, Conversion t Definition, Conversion t Struct, Conversion t Union, Conversion t Procedure, Conversion t Prototype, Conversion t GlobalVar) => DefaultTransformable t Definition 
(Transformable1 t [] Definition, Conversion t Module) => DefaultTransformable t Module 

class Transformation t => DefaultTransformable1 t s a whereSource

Methods

defaultTransform1 :: t -> State t -> Down t -> s (a (From t)) -> Result1 t s aSource