Power Features Intermediate 12 min

Standard Library

Die Standard Library soll “normaler Emerald-Code zuerst” sein und nur dort Compiler-Magie nutzen, wo es wirklich hilft.

01 Lesson

Core Interfaces

Die Core-Interfaces bilden die gemeinsame Sprache für Collections, Vergleichbarkeit und Iteration.

Typ Bedeutung
IEquatable Kann Gleichheit mit einem anderen Wert prüfen.
IComparable Kann Werte sortierbar vergleichen.
IIterable Kann durchlaufen werden.
ICollection Basis für Sammlungen.
IList Liste mit Reihenfolge.
IMap Schlüssel-Wert-Struktur.
02 Lesson

Console, Math, String

Ein paar Utility-APIs sind bereits als Richtung definiert.

utilities.ems
Console.println("console");
Console.print("emer");
Console.println("ald");

Int absolute = Math.abs(-5);
Int clamped = Math.clamp(15, 0, 10);

String upper = "emerald".toUpperCase();
String lower = "EMERALD".toLowerCase();
Bool blank = "   ".isBlank();
03 Lesson

Time

Duration speichert Millisekunden. OffsetDateTime speichert Datum, Uhrzeit und festen UTC-Offset.

time.ems
Duration timeout = Duration.seconds(30);
Duration cooldown = Duration.minutes(5);

OffsetDateTime now = OffsetDateTime.now();
OffsetDateTime utc = OffsetDateTime.utcNow();