Documentation
convertMaybeList :: Maybe [a] -> [a]Source
convertMaybe :: Maybe a -> [a]Source
type Walker t construction = TransformationPhase t => t -> Downwards t -> construction (From t) -> (construction (To t), Upwards t)Source
class TransformationPhase t => Plugin t whereSource
type ExternalInfo t Source
executePlugin :: t -> ExternalInfo t -> Procedure (From t) -> Procedure (To t)Source
class (SemanticInfo (From t), SemanticInfo (To t), ConvertAllInfos (From t) (To t), Combine (Upwards t), Default (Upwards t)) => TransformationPhase t whereSource
executeTransformationPhase :: Walker t ProcedureSource
downwardsProcedure :: t -> Downwards t -> Procedure (From t) -> Downwards tSource
transformProcedure :: t -> Downwards t -> Procedure (From t) -> InfoFromProcedureParts t -> Procedure (To t)Source
upwardsProcedure :: t -> Downwards t -> Procedure (From t) -> InfoFromProcedureParts t -> Procedure (To t) -> Upwards tSource
downwardsBlock :: t -> Downwards t -> Block (From t) -> Downwards tSource
transformBlock :: t -> Downwards t -> Block (From t) -> InfoFromBlockParts t -> Block (To t)Source
upwardsBlock :: t -> Downwards t -> Block (From t) -> InfoFromBlockParts t -> Block (To t) -> Upwards tSource
downwardsProgram :: t -> Downwards t -> Program (From t) -> Downwards tSource
transformProgram :: t -> Downwards t -> Program (From t) -> InfoFromProgramParts t -> Program (To t)Source
upwardsProgram :: t -> Downwards t -> Program (From t) -> InfoFromProgramParts t -> Program (To t) -> Upwards tSource
transformEmptyProgramInProgram :: t -> Downwards t -> Empty (From t) -> ProgramConstruction (To t)Source
upwardsEmptyProgramInProgram :: t -> Downwards t -> Empty (From t) -> ProgramConstruction (To t) -> Upwards tSource
downwardsPrimitiveProgramInProgram :: t -> Downwards t -> Primitive (From t) -> Downwards tSource
transformPrimitiveProgramInProgram :: t -> Downwards t -> Primitive (From t) -> InfoFromPrimitiveParts t -> ProgramConstruction (To t)Source
upwardsPrimitiveProgramInProgram :: t -> Downwards t -> Primitive (From t) -> InfoFromPrimitiveParts t -> ProgramConstruction (To t) -> Upwards tSource
downwardsSequenceProgramInProgram :: t -> Downwards t -> Sequence (From t) -> Downwards tSource
transformSequenceProgramInProgram :: t -> Downwards t -> Sequence (From t) -> InfoFromSequenceParts t -> ProgramConstruction (To t)Source
upwardsSequenceProgramInProgram :: t -> Downwards t -> Sequence (From t) -> InfoFromSequenceParts t -> ProgramConstruction (To t) -> Upwards tSource
downwardsBranchProgramInProgram :: t -> Downwards t -> Branch (From t) -> Downwards tSource
transformBranchProgramInProgram :: t -> Downwards t -> Branch (From t) -> InfoFromBranchParts t -> ProgramConstruction (To t)Source
upwardsBranchProgramInProgram :: t -> Downwards t -> Branch (From t) -> InfoFromBranchParts t -> ProgramConstruction (To t) -> Upwards tSource
downwardsSequentialLoopProgramInProgram :: t -> Downwards t -> SequentialLoop (From t) -> Downwards tSource
transformSequentialLoopProgramInProgram :: t -> Downwards t -> SequentialLoop (From t) -> InfoFromSequentialLoopParts t -> ProgramConstruction (To t)Source
upwardsSequentialLoopProgramInProgram :: t -> Downwards t -> SequentialLoop (From t) -> InfoFromSequentialLoopParts t -> ProgramConstruction (To t) -> Upwards tSource
downwardsParallelLoopProgramInProgram :: t -> Downwards t -> ParallelLoop (From t) -> Downwards tSource
transformParallelLoopProgramInProgram :: t -> Downwards t -> ParallelLoop (From t) -> InfoFromParallelLoopParts t -> ProgramConstruction (To t)Source
upwardsParallelLoopProgramInProgram :: t -> Downwards t -> ParallelLoop (From t) -> InfoFromParallelLoopParts t -> ProgramConstruction (To t) -> Upwards tSource
downwardsFormalParameter :: t -> Downwards t -> FormalParameter (From t) -> Downwards tSource
transformFormalParameter :: t -> Downwards t -> FormalParameter (From t) -> InfoFromFormalParameterParts t -> FormalParameter (To t)Source
upwardsFormalParameter :: t -> Downwards t -> FormalParameter (From t) -> InfoFromFormalParameterParts t -> FormalParameter (To t) -> Upwards tSource
downwardsLocalDeclaration :: t -> Downwards t -> LocalDeclaration (From t) -> Downwards tSource
transformLocalDeclaration :: t -> Downwards t -> LocalDeclaration (From t) -> InfoFromLocalDeclarationParts t -> LocalDeclaration (To t)Source
upwardsLocalDeclaration :: t -> Downwards t -> LocalDeclaration (From t) -> InfoFromLocalDeclarationParts t -> LocalDeclaration (To t) -> Upwards tSource
downwardsExpression :: t -> Downwards t -> Expression (From t) -> Downwards tSource
transformExpression :: t -> Downwards t -> Expression (From t) -> InfoFromExpressionParts t -> Expression (To t)Source
upwardsExpression :: t -> Downwards t -> Expression (From t) -> InfoFromExpressionParts t -> Expression (To t) -> Upwards tSource
downwardsLeftValueExpressionInExpression :: t -> Downwards t -> LeftValue (From t) -> Downwards tSource
transformLeftValueExpressionInExpression :: t -> Downwards t -> LeftValue (From t) -> InfoFromLeftValueParts t -> ExpressionData (To t)Source
upwardsLeftValueExpressionInExpression :: t -> Downwards t -> LeftValue (From t) -> InfoFromLeftValueParts t -> ExpressionData (To t) -> Upwards tSource
downwardsConstantExpressionInExpression :: t -> Downwards t -> Constant (From t) -> Downwards tSource
transformConstantExpressionInExpression :: t -> Downwards t -> Constant (From t) -> InfoFromConstantParts t -> ExpressionData (To t)Source
upwardsConstantExpressionInExpression :: t -> Downwards t -> Constant (From t) -> InfoFromConstantParts t -> ExpressionData (To t) -> Upwards tSource
downwardsFunctionCallExpressionInExpression :: t -> Downwards t -> FunctionCall (From t) -> Downwards tSource
transformFunctionCallExpressionInExpression :: t -> Downwards t -> FunctionCall (From t) -> InfoFromFunctionCallParts t -> ExpressionData (To t)Source
upwardsFunctionCallExpressionInExpression :: t -> Downwards t -> FunctionCall (From t) -> InfoFromFunctionCallParts t -> ExpressionData (To t) -> Upwards tSource
downwardsConstant :: t -> Downwards t -> Constant (From t) -> Downwards tSource
transformConstant :: t -> Downwards t -> Constant (From t) -> InfoFromConstantParts t -> Constant (To t)Source
upwardsConstant :: t -> Downwards t -> Constant (From t) -> InfoFromConstantParts t -> Constant (To t) -> Upwards tSource
transformIntConstantInConstant :: t -> Downwards t -> IntConstantType (From t) -> ConstantData (To t)Source
upwardsIntConstantInConstant :: t -> Downwards t -> IntConstantType (From t) -> ConstantData (To t) -> Upwards tSource
transformFloatConstantInConstant :: t -> Downwards t -> FloatConstantType (From t) -> ConstantData (To t)Source
upwardsFloatConstantInConstant :: t -> Downwards t -> FloatConstantType (From t) -> ConstantData (To t) -> Upwards tSource
transformBoolConstantInConstant :: t -> Downwards t -> BoolConstantType (From t) -> ConstantData (To t)Source
upwardsBoolConstantInConstant :: t -> Downwards t -> BoolConstantType (From t) -> ConstantData (To t) -> Upwards tSource
downwardsArrayConstantInConstant :: t -> Downwards t -> ArrayConstantType (From t) -> Downwards tSource
transformArrayConstantInConstant :: t -> Downwards t -> ArrayConstantType (From t) -> InfoFromArrayConstantParts t -> ConstantData (To t)Source
upwardsArrayConstantInConstant :: t -> Downwards t -> ArrayConstantType (From t) -> InfoFromArrayConstantParts t -> ConstantData (To t) -> Upwards tSource
downwardsLeftValue :: t -> Downwards t -> LeftValue (From t) -> Downwards tSource
transformLeftValue :: t -> Downwards t -> LeftValue (From t) -> InfoFromLeftValueParts t -> LeftValue (To t)Source
upwardsLeftValue :: t -> Downwards t -> LeftValue (From t) -> InfoFromLeftValueParts t -> LeftValue (To t) -> Upwards tSource
transformVariableLeftValueInLeftValue :: t -> Downwards t -> Variable (From t) -> LeftValueData (To t)Source
upwardsVariableLeftValueInLeftValue :: t -> Downwards t -> Variable (From t) -> LeftValueData (To t) -> Upwards tSource
downwardsArrayElemReferenceLeftValueInLeftValue :: t -> Downwards t -> ArrayElemReference (From t) -> Downwards tSource
transformArrayElemReferenceLeftValueInLeftValue :: t -> Downwards t -> ArrayElemReference (From t) -> InfoFromArrayElemReferenceParts t -> LeftValueData (To t)Source
upwardsArrayElemReferenceLeftValueInLeftValue :: t -> Downwards t -> ArrayElemReference (From t) -> InfoFromArrayElemReferenceParts t -> LeftValueData (To t) -> Upwards tSource
downwardsInstruction :: t -> Downwards t -> Instruction (From t) -> Downwards tSource
transformInstruction :: t -> Downwards t -> Instruction (From t) -> InfoFromInstructionParts t -> Instruction (To t)Source
upwardsInstruction :: t -> Downwards t -> Instruction (From t) -> InfoFromInstructionParts t -> Instruction (To t) -> Upwards tSource
downwardsAssignmentInstructionInInstruction :: t -> Downwards t -> Assignment (From t) -> Downwards tSource
transformAssignmentInstructionInInstruction :: t -> Downwards t -> Assignment (From t) -> InfoFromAssignmentParts t -> InstructionData (To t)Source
upwardsAssignmentInstructionInInstruction :: t -> Downwards t -> Assignment (From t) -> InfoFromAssignmentParts t -> InstructionData (To t) -> Upwards tSource
downwardsProcedureCallInstructionInInstruction :: t -> Downwards t -> ProcedureCall (From t) -> Downwards tSource
transformProcedureCallInstructionInInstruction :: t -> Downwards t -> ProcedureCall (From t) -> InfoFromProcedureCallParts t -> InstructionData (To t)Source
upwardsProcedureCallInstructionInInstruction :: t -> Downwards t -> ProcedureCall (From t) -> InfoFromProcedureCallParts t -> InstructionData (To t) -> Upwards tSource
downwardsActualParameter :: t -> Downwards t -> ActualParameter (From t) -> Downwards tSource
transformActualParameter :: t -> Downwards t -> ActualParameter (From t) -> InfoFromActualParameterParts t -> ActualParameter (To t)Source
upwardsActualParameter :: t -> Downwards t -> ActualParameter (From t) -> InfoFromActualParameterParts t -> ActualParameter (To t) -> Upwards tSource
downwardsInputActualParameterInActualParameter :: t -> Downwards t -> Expression (From t) -> Downwards tSource
transformInputActualParameterInActualParameter :: t -> Downwards t -> Expression (From t) -> InfoFromExpressionParts t -> ActualParameterData (To t)Source
upwardsInputActualParameterInActualParameter :: t -> Downwards t -> Expression (From t) -> InfoFromExpressionParts t -> ActualParameterData (To t) -> Upwards tSource
downwardsOutputActualParameterInActualParameter :: t -> Downwards t -> LeftValue (From t) -> Downwards tSource
transformOutputActualParameterInActualParameter :: t -> Downwards t -> LeftValue (From t) -> InfoFromLeftValueParts t -> ActualParameterData (To t)Source
upwardsOutputActualParameterInActualParameter :: t -> Downwards t -> LeftValue (From t) -> InfoFromLeftValueParts t -> ActualParameterData (To t) -> Upwards tSource
transformIntConstant :: t -> Downwards t -> IntConstantType (From t) -> IntConstantType (To t)Source
upwardsIntConstant :: t -> Downwards t -> IntConstantType (From t) -> IntConstantType (To t) -> Upwards tSource
transformFloatConstant :: t -> Downwards t -> FloatConstantType (From t) -> FloatConstantType (To t)Source
upwardsFloatConstant :: t -> Downwards t -> FloatConstantType (From t) -> FloatConstantType (To t) -> Upwards tSource
transformBoolConstant :: t -> Downwards t -> BoolConstantType (From t) -> BoolConstantType (To t)Source
upwardsBoolConstant :: t -> Downwards t -> BoolConstantType (From t) -> BoolConstantType (To t) -> Upwards tSource
transformVariable :: t -> Downwards t -> Variable (From t) -> Variable (To t)Source
upwardsVariable :: t -> Downwards t -> Variable (From t) -> Variable (To t) -> Upwards tSource
walkProcedure :: Walker t ProcedureSource
walkBlock :: Walker t BlockSource
walkProgram :: Walker t ProgramSource
walkEmptyProgramInProgram :: TransformationPhase t => t -> Downwards t -> Empty (From t) -> (ProgramConstruction (To t), Upwards t)Source
walkPrimitiveProgramInProgram :: TransformationPhase t => t -> Downwards t -> Primitive (From t) -> (ProgramConstruction (To t), Upwards t)Source
walkSequenceProgramInProgram :: TransformationPhase t => t -> Downwards t -> Sequence (From t) -> (ProgramConstruction (To t), Upwards t)Source
walkBranchProgramInProgram :: TransformationPhase t => t -> Downwards t -> Branch (From t) -> (ProgramConstruction (To t), Upwards t)Source
walkSequentialLoopProgramInProgram :: TransformationPhase t => t -> Downwards t -> SequentialLoop (From t) -> (ProgramConstruction (To t), Upwards t)Source
walkParallelLoopProgramInProgram :: TransformationPhase t => t -> Downwards t -> ParallelLoop (From t) -> (ProgramConstruction (To t), Upwards t)Source
walkFormalParameter :: Walker t FormalParameterSource
walkLocalDeclaration :: Walker t LocalDeclarationSource
walkExpression :: Walker t ExpressionSource
walkLeftValueExpressionInExpression :: TransformationPhase t => t -> Downwards t -> LeftValue (From t) -> (ExpressionData (To t), Upwards t)Source
walkConstantExpressionInExpression :: TransformationPhase t => t -> Downwards t -> Constant (From t) -> (ExpressionData (To t), Upwards t)Source
walkFunctionCallExpressionInExpression :: TransformationPhase t => t -> Downwards t -> FunctionCall (From t) -> (ExpressionData (To t), Upwards t)Source
walkConstant :: Walker t ConstantSource
walkIntConstantInConstant :: TransformationPhase t => t -> Downwards t -> IntConstantType (From t) -> (ConstantData (To t), Upwards t)Source
walkFloatConstantInConstant :: TransformationPhase t => t -> Downwards t -> FloatConstantType (From t) -> (ConstantData (To t), Upwards t)Source
walkBoolConstantInConstant :: TransformationPhase t => t -> Downwards t -> BoolConstantType (From t) -> (ConstantData (To t), Upwards t)Source
walkArrayConstantInConstant :: TransformationPhase t => t -> Downwards t -> ArrayConstantType (From t) -> (ConstantData (To t), Upwards t)Source
walkLeftValue :: Walker t LeftValueSource
walkVariableLeftValueInLeftValue :: TransformationPhase t => t -> Downwards t -> Variable (From t) -> (LeftValueData (To t), Upwards t)Source
walkArrayElemReferenceLeftValueInLeftValue :: TransformationPhase t => t -> Downwards t -> ArrayElemReference (From t) -> (LeftValueData (To t), Upwards t)Source
walkInstruction :: Walker t InstructionSource
walkAssignmentInstructionInInstruction :: TransformationPhase t => t -> Downwards t -> Assignment (From t) -> (InstructionData (To t), Upwards t)Source
walkProcedureCallInstructionInInstruction :: TransformationPhase t => t -> Downwards t -> ProcedureCall (From t) -> (InstructionData (To t), Upwards t)Source
walkActualParameter :: Walker t ActualParameterSource
walkInputActualParameterInActualParameter :: TransformationPhase t => t -> Downwards t -> Expression (From t) -> (ActualParameterData (To t), Upwards t)Source
walkOutputActualParameterInActualParameter :: TransformationPhase t => t -> Downwards t -> LeftValue (From t) -> (ActualParameterData (To t), Upwards t)Source
TransformationPhase PropagationTransform | |
TransformationPhase BackwardPropagationCollect | |
TransformationPhase BackwardPropagation | |
TransformationPhase Precompilation | |
TransformationPhase PrettyPrint | |
TransformationPhase Unroll_2 | |
TransformationPhase Unroll_1 | |
TransformationPhase UnrollPlugin | |
TransformationPhase ForwardPropagationTransform | |
TransformationPhase ForwardPropagationCollect | |
TransformationPhase ForwardPropagation | |
TransformationPhase HandlePrimitives | |
TransformationPhase HandleTraceFunctions |
data TransformationPhase t => InfoFromProcedureParts t Source
data TransformationPhase t => InfoFromBlockParts t Source
data TransformationPhase t => InfoFromProgramParts t Source
data TransformationPhase t => InfoFromPrimitiveParts t Source
data TransformationPhase t => InfoFromSequenceParts t Source
data TransformationPhase t => InfoFromSequentialLoopParts t Source
data TransformationPhase t => InfoFromParallelLoopParts t Source
data TransformationPhase t => InfoFromFormalParameterParts t Source
data TransformationPhase t => InfoFromLocalDeclarationParts t Source
data TransformationPhase t => InfoFromExpressionParts t Source
data TransformationPhase t => InfoFromConstantParts t Source
data TransformationPhase t => InfoFromFunctionCallParts t Source
data TransformationPhase t => InfoFromLeftValueParts t Source
data TransformationPhase t => InfoFromArrayElemReferenceParts t Source
data TransformationPhase t => InfoFromInstructionParts t Source
data TransformationPhase t => InfoFromAssignmentParts t Source
data TransformationPhase t => InfoFromProcedureCallParts t Source
data TransformationPhase t => InfoFromActualParameterParts t Source
data TransformationPhase t => InfoFromArrayConstantParts t Source