Control Structures
Advanced Computational Language
Collaboration diagram for Control Structures:

## Functions

Element | acl::elementOperators::returnStatement ()
Element | acl::elementOperators::ifElse (Element condition, const std::vector< Element > &thenBody, const std::vector< Element > &elseBody)
Element | acl::elementOperators::select (Element e1, Element e2, Element e3)
Element | acl::elementOperators::forLoop (Element initialization, Element condition, Element increase, const std::vector< Element > &body)

## Detailed Description

## Function Documentation

## forLoop()

Element acl::elementOperators::forLoop | ( | Element | initialization,
|  | Element | condition,
|  | Element | increase,
|  | const std::vector< Element > & | body
| ) |  |

For loop

## ifElse()

Element acl::elementOperators::ifElse | ( | Element | condition,
|  | const std::vector< Element > & | thenBody,
|  | const std::vector< Element > & | elseBody
| ) |  |

If-Else conditional structure

## returnStatement()

Element acl::elementOperators::returnStatement | ( |  | ) |

Return statement (terminates the execution of a kernel)

## select()

Element acl::elementOperators::select | ( | Element | e1,
|  | Element | e2,
|  | Element | e3
| ) |  |

ternary branching operator

Examples
  testKernel.cc, testReductionFunction.cc, and testVectorOfElements.cc.