Raku-Kurs / Fortgeschritten / Debugging / Debugging mit dd

Funktionssignaturen dumpen

Ein nacktes dd — ohne Argumente innerhalb einer Subroutine aufgerufen — gibt die Signatur dieser Subroutine aus: ihren Namen und die Liste der Parameter, falls vorhanden. Betrachte das folgende Beispiel mit zwei Subroutinen:

sub f1 {
    dd
}

f1();

sub f2($x) {
    dd
}

f2(42);

Das Programm gibt die Signaturen statt irgendwelcher Werte aus:

sub f1()
sub f2($x)

Das ist besonders nützlich bei Multi-Funktionen, wo es dir verrät, welcher Kandidat tatsächlich aufgerufen wurde:

multi sub g {
    dd
}

multi sub g($x) {
    dd
}

g();
g(42);

Die Ausgabe benennt jedes Mal die passende Variante:

sub g()
sub g($x)

Kursnavigation

Quiz — Einen dd-Dump lesen   |   Die Datenstruktur dumpen


💪 Oder springen Sie direkt zu den Übungen dieses Abschnitts.