Raku-Kurs / Anhang 🆕 / Ablauf und Funktionen / Subroutinen und funktionaler Stil / Exercises / Nach Typ beschreiben
Lösung: Nach Typ beschreiben
Hier ist eine mögliche Lösung der Aufgabe.
Code
multi describe(Int $x) { "integer $x" }
multi describe(Str $x) { "string $x" }
multi describe(@x) { "list of {@x.elems}" }
say describe(42);
say describe('hi');
say describe([1, 2, 3]);🦋 Du findest den Quellcode in der Datei multi-describe.raku.
Ausgabe
integer 42
string hi
list of 3Kommentare
Jedes
multigibt eine Fassung vondescribemit einem anderen Parametertyp. Raku wählt den passenden Kandidaten nach dem Typ des Arguments.Die Signatur
@xtrifft eine Liste, das Array wird also an den dritten Kandidaten verteilt, der seine Länge meldet.