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.
Declaring data
EGL native types are in three categories:
- BigInt, Bytes(n), Date, Decimal(n), Decimal(n, p),
- Float, Int, SmallFloat, SmallInt, Timestamp(pattern)
- Bytes, Decimal, Number, String (now a value type),
- String(n), Timestamp (now a value type)
- Any, Dictionary, List
Your custom types are based on these EGL classifiers:
- Delegate, Enumeration, ExternalType, Handler,
- Interface, Library, Program, Record, Service
Contents
Values of simple value types
/* Numeric value types */ // defaults to 0. someVal Int; // defaults to null. someVal Int?; // initializes the value to 15 and allows a future value to be null. someVal Int? = 15; // initializes the value, which is unchangeable. const NUMBEROFDAYS Int = 7; // defaults to 0.0. coord Float; // defaults to 000.00 for a field that can hold 5 digits and always has 2 of those after the decimal point. amount Decimal(5,2); /* Character value types */ // defaults to "". firstName String; // defaults to null. firstName String?; // initializes value to "John". firstName String = "John"; // defaults to false toggle Boolean; // defaults to today's date. dob Date; // defaults to the current timestamp. ts Timestamp?; // value can be set to any value (primitive, object, etc). See the casting examples later. x Any?;
Values of simple reference types
Values of other reference types
Values of type Any
Values of type Dictionary
Values of type List
Lists
vals Int[]; // new dynamic array of size 0 vals Int[]?; // dynamic list, but not instantiated (vals must be instantiated before it can be accessed) vals Int[] = new Int[4]; // new dynamic array of size 4; all values set to their default value (0 in this example) names String[] = [ "Paul", "John", "George", "Ringo" ]; // dynamic array, initialized with 4 values names[1] = "Bob"; // assigns the first index in the array to "Bob" names[names.getSize()] = "Ken"; // assigns the last index in the array to "Ken" cities String[]; // new dynamic array of size 0 cities.appendElement("Delta"); // appends a new value to the end of the array cities.appendAll([ "Denver", "Pueblo" ]); // appends two new values to the end of the list cities.removeElement(2); // removes the second value in the array cities.removeAll(); // removes all values from the array
Constants
// The value is not changeable. const NUMBEROFDAYS Int = 7; // The element values are changeable, but the name cannot refer to another list. const MINIMUMNUMBERS INT[] = [1,2,3,4,5];