Jede öffentliche Funktion der Standardbibliothek, nach Namen sortiert, mit Signatur und der Unit, in der sie steht. 7128 Funktionen aus 433 Units — der Bestand von std, ohne Umweg über die Unit-Seiten.
Wofür das gut ist: Man hat einen Funktionsnamen aus fremdem Code, einer Fehlermeldung oder einem Beispiel und will wissen, wo er herkommt und wie er aufgerufen wird. Die Unit-Seiten beantworten die umgekehrte Frage — was kann diese Unit — und stehen dahinter verlinkt.
→ Unit-Verzeichnis · Sprachsyntax · Glossar von vorn
| Buchstabe | Funktionen |
|---|---|
| Sonstige | 43 |
| A | 632 |
| B | 283 |
| C | 335 |
| D | 416 |
| E | 378 |
| F | 223 |
| G | 466 |
| H | 160 |
| I | 276 |
| J | 22 |
| K | 86 |
| L | 223 |
| M | 361 |
| N | 99 |
| O | 43 |
| P | 804 |
| Q | 300 |
| R | 322 |
| S | 822 |
| T | 230 |
| U | 204 |
| V | 219 |
| W | 93 |
| X | 25 |
| Y | 2 |
| Z | 79 |
# · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
Ein Teil der meistbenutzten Namen taucht im Glossar nicht auf, weil sie keine Unit-Funktionen sind, sondern Builtins: der Übersetzer erzeugt den Code direkt, es gibt keinen pub fn dazu und keinen Import. Wer PrintLn im Glossar sucht, findet nichts — deshalb steht die Liste hier:
EPrintEPrintLnEPrintStrEPrintStrLnExitfCeilfFloorFileReadAllfRoundGetArgGetArgCGetArgVGetEnvBlockIntToStrpanicPrintfPrintFloatPrintIntPrintLnPrintStrRandomRandomSeedStrConcatStrCopyStrEqStrEqualsStrFromIntStrLenStrLengthStrStartsWithStrSub
Die vollständige Belegung führt der Compiler in src/backend/_builtin_ids.md; die Liste oben ist der Teil, den man beim Programmieren tatsächlich schreibt. Nicht aufgeführt sind die sys_*-Builtins (direkte Syscall-Abbildungen, vor allem für LyxOS) und die Speicherbarrieren.
Fünf Namen gibt es doppelt — als Builtin und als Unit-Funktion:FloatToStr(auch instd.io),StrFindundStrTrim(auch instd.string),FileSize(auch instd.fsundstd.fs_ext). Ohne Import greift das Builtin; mit Import entscheidet der Übersetzer zugunsten der Unit-Funktion. Bei diesen fünf lohnt der Blick auf die Unit-Seite, weil die Signaturen nicht zwingend gleich sind.
Genau diese Doppelung hat außerdem eine Lücke in der Stelligkeitsprüfung: ein Name, den es als Builtin und alspub fngibt, entkommt beiden Prüfungen —PrintLn("a", "b")wird übersetzt, obwohlPrintLnein Argument nimmt (#2012, offen).
pub fn aus einer Unit herausgeführt wird. Alles Interne fehlt, und das mit Absicht: was nicht pub ist, darf sich ändern.SqrtF64 etwa steht in std.math und noch einmal in std.ml; IsValid gibt es in vier Units. Beim Import entscheidet, welche Unit eingebunden ist.std.cloud.digitalocean und die Unicode-Datentabellen führt der Verweis auf keine eigene Seite — die stehen als reiner Text da.Erzeugt aus dem Quelltext, nicht von Hand gepflegt. Grundlage ist der Bestand allerpub fninstd. Fehlt eine Funktion hier, fehlt sie auch dort — oder sie ist nicht öffentlich.
Die Buchstabenseiten entstehen ausglossar-bauen.pyim Doku-Projekt. Kommen neue Funktionen oder Units hinzu, wird das Glossar im selben Arbeitsgang mitgezogen — ein Glossar, das dem Bestand hinterherhinkt, ist schlechter als keines, weil es Vollständigkeit behauptet.