Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "EDT:EGL Language Statements"
Line 3: | Line 3: | ||
== Statements (Table 5) == | == Statements (Table 5) == | ||
− | {| | + | {| width="800" cellspacing="1" cellpadding="1" border="1" |
|- | |- | ||
| bgcolor="#999999" align="center" | '''''Statements''''' | | bgcolor="#999999" align="center" | '''''Statements''''' | ||
Line 12: | Line 12: | ||
| bgcolor="#cccccc" | ''Variable declaration<sup>5</sup>'' | | bgcolor="#cccccc" | ''Variable declaration<sup>5</sup>'' | ||
| <br>6d | | <br>6d | ||
− | | <br> | + | | <br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''Const declaration'' | | bgcolor="#cccccc" | ''Const declaration'' | ||
| <br>done | | <br>done | ||
− | | <br> | + | | <br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''Assignment'' | | bgcolor="#cccccc" | ''Assignment'' | ||
− | | done<br> | + | | done<br> |
− | | done<br> | + | | done<br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''Move<sup>1</sup>'' | | bgcolor="#cccccc" | ''Move<sup>1</sup>'' | ||
| <br>1d | | <br>1d | ||
− | | <br> | + | | <br> |
− | | <br> | + | | 2d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''Return'' | | bgcolor="#cccccc" | ''Return'' | ||
| <br>done | | <br>done | ||
− | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352141 JS:Functions, Return]<br> | + | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352141 JS:Functions, Return]<br> |
| done<br> | | done<br> | ||
|- | |- | ||
Line 40: | Line 40: | ||
[https://bugs.eclipse.org/bugs/show_bug.cgi?id=352141 JS: Functions, Return] | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352141 JS: Functions, Return] | ||
− | Synchronous service invocation | + | Synchronous service invocation |
| | | | ||
− | REST Service invocation<br> | + | REST Service invocation<br> |
− | *XML Conversion {{bug|351892}}(3d)<br> | + | *XML Conversion {{bug|351892}}(3d)<br> |
− | *JSON Conversion {{bug|352581}}(3d)<br> | + | *JSON Conversion {{bug|352581}}(3d)<br> |
*invocation gen/rt {{bug|352588}}(10d) | *invocation gen/rt {{bug|352588}}(10d) | ||
− | SOAP Service invocation {{bug|352590}}(3d)<br><br> | + | SOAP Service invocation {{bug|352590}}(3d)<br><br> |
|- | |- | ||
Line 61: | Line 61: | ||
*invocation gen/rt {{bug|346144}}(5d)<br> | *invocation gen/rt {{bug|346144}}(5d)<br> | ||
− | SOAP Service invocation {{bug|352591}}(3d)<br>Dedicated service invocation {{bug|352592}}(3d)<br>Proxy {{bug|346145}}(5d)<br> | + | SOAP Service invocation {{bug|352591}}(3d)<br>Dedicated service invocation {{bug|352592}}(3d)<br>Proxy {{bug|346145}}(5d)<br> |
− | | <br> | + | | 5d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''Label'' | | bgcolor="#cccccc" | ''Label'' | ||
− | | 1d (remove label field from ConditionalStatement)<br> | + | | 1d (remove label field from ConditionalStatement)<br> |
− | | done<br> | + | | done<br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''Transfer'' | | bgcolor="#cccccc" | ''Transfer'' | ||
| <br>done | | <br>done | ||
− | | N/S<br> | + | | N/S<br> |
− | | <br> | + | | 1d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''Throw'' | | bgcolor="#cccccc" | ''Throw'' | ||
| <br>done | | <br>done | ||
− | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352140 JS:Throws]<br> | + | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352140 JS:Throws]<br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''Try'' | | bgcolor="#cccccc" | ''Try'' | ||
− | | done<br> | + | | done<br> |
− | | done<br> | + | | done<br> |
| done<br> | | done<br> | ||
|- | |- | ||
Line 92: | Line 92: | ||
| bgcolor="#cccccc" | ''Case'' | | bgcolor="#cccccc" | ''Case'' | ||
| <br>done | | <br>done | ||
− | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352031 JS: Case]<br> | + | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352031 JS: Case]<br> |
| (preprocessor doesn't pass case statement, it breaks into a series of IF statements) - no work needed<br> | | (preprocessor doesn't pass case statement, it breaks into a series of IF statements) - no work needed<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''If'' | | bgcolor="#cccccc" | ''If'' | ||
| <br>done | | <br>done | ||
− | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352028 JS: If ]<br> | + | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352028 JS: If ]<br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''While'' | | bgcolor="#cccccc" | ''While'' | ||
− | | done<br> | + | | done<br> |
− | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352029 JS: While]<br> | + | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352029 JS: While]<br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''For'' | | bgcolor="#cccccc" | ''For'' | ||
− | | done<br> | + | | done<br> |
− | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352030 JS:For]<br> | + | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352030 JS:For]<br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''Foreach<sup>3</sup>'' | | bgcolor="#cccccc" | ''Foreach<sup>3</sup>'' | ||
+ | | 1d<br> | ||
+ | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352030 JS: Foreach]<br> | ||
| 1d<br> | | 1d<br> | ||
− | |||
− | |||
|- | |- | ||
| bgcolor="#cccccc" | ''Exit'' | | bgcolor="#cccccc" | ''Exit'' | ||
| <br>done | | <br>done | ||
− | | done<br> | + | | done<br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''Continue'' | | bgcolor="#cccccc" | ''Continue'' | ||
| <br>done | | <br>done | ||
− | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352139 JS: Continue]<br> | + | | [https://bugs.eclipse.org/bugs/show_bug.cgi?id=352139 JS: Continue]<br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''Empty statement (a semicolon)'' | | bgcolor="#cccccc" | ''Empty statement (a semicolon)'' | ||
− | | done<br> | + | | done<br> |
− | | done<br> | + | | done<br> |
| done<br> | | done<br> | ||
|- | |- | ||
| bgcolor="#cccccc" | ''Add'' | | bgcolor="#cccccc" | ''Add'' | ||
− | | done<br> | + | | done<br> |
− | | N/S<br> | + | | N/S<br> |
− | | <br> | + | | 1d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''Close'' | | bgcolor="#cccccc" | ''Close'' | ||
− | | done<br> | + | | done<br> |
− | | N/S<br> | + | | N/S<br> |
− | | <br> | + | | 0.5d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''Delete'' | | bgcolor="#cccccc" | ''Delete'' | ||
| <br>done | | <br>done | ||
− | | N/S<br> | + | | N/S<br> |
− | | <br> | + | | 1d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''Get'' | | bgcolor="#cccccc" | ''Get'' | ||
− | | done<br> | + | | done<br> |
− | | N/S<br> | + | | N/S<br> |
− | | <br> | + | | 2d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''Replace'' | | bgcolor="#cccccc" | ''Replace'' | ||
| <br>done | | <br>done | ||
− | | N/S<br> | + | | N/S<br> |
− | | <br> | + | | 2d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''Execute<sup>4</sup>'' | | bgcolor="#cccccc" | ''Execute<sup>4</sup>'' | ||
− | | done?<br> | + | | done?<br> |
− | | N/S<br> | + | | N/S<br> |
− | | <br> | + | | 1d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''Prepare<sup>4</sup>'' | | bgcolor="#cccccc" | ''Prepare<sup>4</sup>'' | ||
− | | done?<br> | + | | done?<br> |
− | | N/S<br> | + | | N/S<br> |
− | | <br> | + | | 1d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''Open<sup>4</sup>'' | | bgcolor="#cccccc" | ''Open<sup>4</sup>'' | ||
− | | <br>done? | + | | <br>done? |
− | | N/S<br> | + | | N/S<br> |
− | | <br> | + | | 2d<br> |
|- | |- | ||
| bgcolor="#cccccc" | ''FreeSQL<sup>4</sup>'' | | bgcolor="#cccccc" | ''FreeSQL<sup>4</sup>'' | ||
− | | <br>done? | + | | <br>done? |
− | | N/S<br> | + | | N/S<br> |
− | | <br> | + | | 0.5d<br> |
|- | |- | ||
− | | bgcolor="#cccccc" | ''Goto''<br> | + | | bgcolor="#cccccc" | ''Goto''<br> |
| <br>done | | <br>done | ||
| N/S | | N/S | ||
| N/S | | N/S | ||
|- | |- | ||
− | | bgcolor="#cccccc" | ''Set''<br> | + | | bgcolor="#cccccc" | ''Set''<br> |
| <br>done | | <br>done | ||
| N/S | | N/S | ||
| N/S | | N/S | ||
|- | |- | ||
− | | bgcolor="#cccccc" | ''Converse''<br> | + | | bgcolor="#cccccc" | ''Converse''<br> |
− | | done<br> | + | | done<br> |
| N/S | | N/S | ||
| N/S | | N/S | ||
|- | |- | ||
− | | bgcolor="#cccccc" | ''Display''<br> | + | | bgcolor="#cccccc" | ''Display''<br> |
− | | done<br> | + | | done<br> |
| N/S | | N/S | ||
| N/S | | N/S | ||
|- | |- | ||
− | | bgcolor="#cccccc" | ''Print''<br> | + | | bgcolor="#cccccc" | ''Print''<br> |
− | | done<br> | + | | done<br> |
| N/S | | N/S | ||
| N/S | | N/S | ||
|- | |- | ||
− | | bgcolor="#cccccc" | ''Forward''<br> | + | | bgcolor="#cccccc" | ''Forward''<br> |
| <br>done | | <br>done | ||
| N/S | | N/S | ||
| N/S | | N/S | ||
|- | |- | ||
− | | bgcolor="#cccccc" | ''Show''<br> | + | | bgcolor="#cccccc" | ''Show''<br> |
| <br>done | | <br>done | ||
| N/S | | N/S | ||
| N/S | | N/S | ||
|- | |- | ||
− | | bgcolor="#cccccc" | ''OpenUI''<br> | + | | bgcolor="#cccccc" | ''OpenUI''<br> |
| <br>done | | <br>done | ||
| N/S | | N/S | ||
Line 216: | Line 216: | ||
|} | |} | ||
− | '''Notes on Table 5'''<br> | + | '''Notes on Table 5'''<br> |
#EDT won't support every variation of RBD's move statement. There will be support for '''move byName''', '''move for''', and '''move for all'''. A move statement without one of the additional keywords is only allowed between two references, and it results in the target being assigned a copy of the source's value. If/when we support structured records, we might not support '''move byName''' on them because of the complex (unclean) design. | #EDT won't support every variation of RBD's move statement. There will be support for '''move byName''', '''move for''', and '''move for all'''. A move statement without one of the additional keywords is only allowed between two references, and it results in the target being assigned a copy of the source's value. If/when we support structured records, we might not support '''move byName''' on them because of the complex (unclean) design. |
Revision as of 08:40, 21 July 2011
Please see the parent of this page, EDT:EGL Language.
Statements (Table 5)
Statements | Core | JavaScript | Java |
Variable declaration5 | 6d |
|
done |
Const declaration | done |
|
done |
Assignment | done |
done |
done |
Move1 | 1d |
|
2d |
Return | done |
JS:Functions, Return |
done |
Function invocation | done |
Synchronous service invocation |
REST Service invocation
SOAP Service invocation bug 352590(3d) |
Call2 | done |
REST Service invocation
SOAP Service invocation bug 352591(3d) |
5d |
Label | 1d (remove label field from ConditionalStatement) |
done |
done |
Transfer | done |
N/S |
1d |
Throw | done |
JS:Throws |
done |
Try | done |
done |
done |
Catch | done |
done | done |
Case | done |
JS: Case |
(preprocessor doesn't pass case statement, it breaks into a series of IF statements) - no work needed |
If | done |
JS: If |
done |
While | done |
JS: While |
done |
For | done |
JS:For |
done |
Foreach3 | 1d |
JS: Foreach |
1d |
Exit | done |
done |
done |
Continue | done |
JS: Continue |
done |
Empty statement (a semicolon) | done |
done |
done |
Add | done |
N/S |
1d |
Close | done |
N/S |
0.5d |
Delete | done |
N/S |
1d |
Get | done |
N/S |
2d |
Replace | done |
N/S |
2d |
Execute4 | done? |
N/S |
1d |
Prepare4 | done? |
N/S |
1d |
Open4 | done? |
N/S |
2d |
FreeSQL4 | done? |
N/S |
0.5d |
Goto |
done |
N/S | N/S |
Set |
done |
N/S | N/S |
Converse |
done |
N/S | N/S |
Display |
done |
N/S | N/S |
Print |
done |
N/S | N/S |
Forward |
done |
N/S | N/S |
Show |
done |
N/S | N/S |
OpenUI |
done |
N/S | N/S |
Notes on Table 5
- EDT won't support every variation of RBD's move statement. There will be support for move byName, move for, and move for all. A move statement without one of the additional keywords is only allowed between two references, and it results in the target being assigned a copy of the source's value. If/when we support structured records, we might not support move byName on them because of the complex (unclean) design.
- EDT doesn't have called programs, but services and native programs can be called.
- EDT's foreach statement will support iterating over an array.
- Support for these statements is tentative, pending the design for JPA in EDT.
- New syntax will allow setting annotations on declarations without the use of curly braces. In RBD we usually do x int {myAnnotation = 3}; but another way to do the same thing is x int {@myAnnotation{3}};. In EDT we will allow that to be outside of curly braces and before the declaration, for example @myAnnotation{3} x int;.