Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "EDT:Writing statements"
Line 1: | Line 1: | ||
− | EGL provides general statements, as well as statements | + | EGL provides general statements such as if and while, as well as action statements for accessing data sources and for invoking external logic. |
− | = General statements | + | = General statements = |
The general statements are case, continue, exit, for, if, move, return, throw, transfer, try, use, and while. | The general statements are case, continue, exit, for, if, move, return, throw, transfer, try, use, and while. | ||
Line 49: | Line 49: | ||
As shown, no more than one clause ever executes. Control does not “fall through” from one clause to the next.<br> | As shown, no more than one clause ever executes. Control does not “fall through” from one clause to the next.<br> | ||
− | |||
Line 77: | Line 76: | ||
Throw | Throw | ||
− | |||
Line 83: | Line 81: | ||
+ | Try | ||
+ | Use | ||
− | |||
+ | While | ||
− | |||
+ | Action statements | ||
− | |||
+ | Add | ||
+ | Close | ||
− | + | Delete | |
+ | |||
+ | Execute | ||
+ | |||
+ | ForEach | ||
+ | |||
+ | Get | ||
+ | |||
+ | Open | ||
+ | |||
+ | Prepare | ||
+ | |||
+ | Replace |
Revision as of 13:48, 13 February 2012
EGL provides general statements such as if and while, as well as action statements for accessing data sources and for invoking external logic.
General statements
The general statements are case, continue, exit, for, if, move, return, throw, transfer, try, use, and while.
Case
The case statement responds to conditions at run time by executing one set of statements rather than another:
- You can test a criterion value. The following example invokes
mySecondFunction
:
function test() x Int = 3; case (x) when (1) myFirstFunction(); when (2, 3, 4) mySecondFunction(); otherwise myDefaultFunction(); end end
- You can test a set of logical expressions. The following example displays only "x passes":
function test() x Int = 3; y Int = 5; z Int = 7; case when (x == 3) SysLib.writeStdOut("x passes"); when (y == 5) SysLib.writeStdOut("y passes"); when (z == 7) SysLib.writeStdOut("z passes"); otherwise SysLib.writeStdErr("You will not see this message."); end end end
As shown, no more than one clause ever executes. Control does not “fall through” from one clause to the next.
Continue
Exit
For
If
Move
Return
Throw
Transfer
Try
Use
While
Action statements
Add
Close
Delete
Execute
ForEach
Get
Open
Prepare
Replace