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 5: | Line 5: | ||
== Case == | == Case == | ||
− | The case statement | + | The '''case''' statement responds to conditions at run time by executing one set of statements rather than another:<br> |
*You can test a criterion value. The following example invokes <code>mySecondFunction</code>: | *You can test a criterion value. The following example invokes <code>mySecondFunction</code>: | ||
Line 44: | Line 44: | ||
end | end | ||
end | end | ||
− | </source> | + | </source> |
+ | |||
+ | As shown, no more than one clause executes. Control does not “fall through” from one clause to the next: <br> |
Revision as of 12:12, 13 February 2012
EGL provides general statements, as well as statements that are used for interacting with an external data source.
General statements
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 executes. Control does not “fall through” from one clause to the next: