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.
EDT:EGL Language Part Types
Revision as of 18:07, 13 July 2011 by Greer.us.ibm.com (Talk | contribs)
Please see the parent of this page, EDT:EGL_Language.
Part Types (Table 1)
Part Types | Core | JavaScript | Java | Debug |
DataItem1 | |
|
|
|
Function2, 5 | |
|
|
|
Top-level function2, 5 | |
|
|
|
Delegate2 | |
|
|
|
Record |
|
|
|
|
Structured Record |
|
N/S | N/S | N/S |
ExternalType |
|
done |
|
|
Handler |
|
|
|
|
Library |
|
done |
|
|
Service |
|
|
|
|
Interface3 |
|
|
|
|
Enumeration |
|
|
|
|
Program4 |
|
N/S |
|
|
Array |
|
|
|
|
Nullability6 |
|
|
|
|
DataTable |
|
N/S | N/S | N/S |
Form |
|
N/S | N/S | N/S |
Notes on Table 1
- In RBD a DataItem can only be used for primitive types. In EDT it can be used for any type.
- See also Table 2: Function Parameters.
- Interfaces can be implemented by services and handlers (every kind of "logic part" which can be instantiated).
- There are no called programs in EDT. Use libraries for "local calls" and services for "remote calls".
- We intend to support function overloading in all implementations, even JavaScript.
- Nullability means that a variable may really be null. It's not an "I'm null" flag like in RBD. A NullValueException will be thrown if you try to access a field or function of a null variable, even a record. A NullValueException will be thrown if a null variable is an operand to a math operator, an array access, a substring access, a comparison, or a bitwise operator. The string concatenation operators will work the same as in RBD with respect to nulls. :: treats null as the empty string, and ?: results in null if either operand is null. A question mark won't be allowed on the second operand of the AS and ISA operators (the name of the type).