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
/** Character value types. **/ /** Note: String without parameter will be a reference type in EDT 1.0. **/ // Defaults to "". firstName String; // Defaults to null. secondName String?; // Initializes value to "John" and allows a future value to be null. thirdName String? = "John"; // Initializes the value, which is unchangeable. // Note: the elements of constant lists and dictionaries are changeable.) const LANGUAGE String = "EGL"; /** Numeric value types. **/ // Defaults to 0. someVal Int; // Defaults to 0.0. coord Float; // Defaults to 000.00. // can hold 5 digits total, with 2 after the decimal point. amount Decimal(5,2); /** Date-and-time value types. **/ // Defaults to today's date. today Date; // Defaults to now. the second declaration uses the default pattern. now TIMESTAMP("ddHHmmssffffff"); later TIMESTAMP("yyyyMMddHHmmss"); /** Boolean type **/ // Defaults to false. toggle Boolean;
Values of simple reference types
Values of other reference types
Values of type Any
Values of type Dictionary
Values of type List
// 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 dynamic array of size 4; all values set to their default value (0 in this example) vals Int[] = new Int[4]; // dynamic array, initialized with 4 values names String[] = [ "Paul", "John", "George", "Ringo" ]; // assigns the first index in the array to "Bob" names[1] = "Bob"; // assigns the last index in the array to "Ken" names[names.getSize()] = "Ken"; // new dynamic array of size 0 cities String[]; // appends a new value to the end of the array cities.appendElement("Delta"); // appends two new values to the end of the list cities. cities.appendAll([ "Denver", "Pueblo" ]); // removes the second value in the array removeElement(2); // removes all values from the array cities.removeAll();
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];