The topics in this section provide a detailed reference of all APIs avaiable to Elements that are not part of the standard platform SDKs or frameworks for the respective target platforms.
We do not cover the .NET Base Library, the Java and Android runtime libraries, the macOS, iOS and tvOS SDKs or any of the low-level platform SDKs for Island's target platforms. Please refer to the OS vendors for documentation on those APIS. This section focuses on the classes and APIs Elements itself adds.
Base types and System Functions
The types and APIs described here are provided by the core compiler, and available in every Elements project by default. They reside in the "virtual"
Optional Base Libraries
These libraries can be used optionally, of you wish to use their functionality in your projects. Swift Base Library is automatically added to new Swift-language projects (but the reference can be removed, if you prefer to not add the dependency).
- Elements RTL, a cross-platform abstraction base library
- Delphi RTL, a Delphi RTL/VCL compatibility library
- Swift Base Library, common Swift APIs
- Sugar (deprecated in favor of Elements RTL)
Per-platform Support Libraries
These libraries are provided per platform, and provide internal helper types and APIs that enable advanced compiler features, such as dynamic types on .NET, or LINQ and generic NSArrays on Cocoa. All but the Echoes Base Library will be referenced by default in new projects; except on Island, their use is optional and the reference can be removed, at the cost of losing some advanced compiler features.
- Echoes Base Library, optional helper library for .NET
- Cooper Base Library, optional helper library for Java
- Toffee Base Library, semi-optional helper library for Cocoa
- Island RTL, required helper library for Island