Raku-Kurs / Fortgeschritten / Container
Introspektion von Containern
Introspektion bedeutet, einen Wert oder einen Container über
sich selbst zu befragen — seinen Typ, seinen zugrunde liegenden
Container und die Mechanismen dahinter. Du hast bereits ein
Introspektionswerkzeug verwendet, .^name, um den Typ eines
Wertes auszugeben.
Raku bietet eine kleine Familie solcher Werkzeuge, die in
Großbuchstaben geschrieben werden: WHAT, VAR,
WHO und HOW. Sie werden manchmal
Pseudo-Methoden genannt, weil der Compiler ihnen eine besondere
Bedeutung gibt, anstatt sie als gewöhnliche Methoden zu behandeln. In
diesem Abschnitt schauen wir uns jede davon an.
Zur Erinnerung: Hier zeigt .^name, wie sich der Typ
eines nicht typisierten Containers ändert, wenn du verschiedene Werte
darin speicherst:
my $value;
say $value.^name; # Any
$value = 42;
say $value.^name; # Int
$value = 'forty-two';
say $value.^name; # StrDer Container beginnt als Any und gibt dann den Typ des
jeweils gespeicherten Wertes zurück.
Themen in diesem Abschnitt
Praxis
Lösen Sie 1 Quiz zum Inhalt dieses Abschnitts.
Übungen
Dieser Abschnitt enthält 3 Übungen. Sehen Sie sich alle Themen dieses Abschnitts an, bevor Sie mit den Übungen beginnen.