Gibt es eine Möglichkeit, eine Liste aller bekannten Typen (eingebaut, definiert, geladen, was auch immer) zu erhalten, von denen ein Perl 6-Programm weiß? Ich habe keine bestimmte Aufgabe im Sinn, und das ist ein bisschen anders als herauszufinden, ob ein Typ, den ich bereits kenne, definiert wurde.
Dies sollte den Trick machen:
%Vor%Perl 6 stellt Pseudopakete bereit, die eine indirekte Suche nach Symbolen ermöglichen, die deklariert / sichtbar sind in verschiedenen Bereichen. Sie können wie Hashes aufgerufen und iteriert werden.
CORE::
sein. LEXICAL::
alle enthalten würde, aber basierend auf einigen Experimenten scheint das nicht der Fall zu sein und es sieht aus wie UNIT::
, OUTERS::
, und MY::
müssen durchsucht werden, um alle zu fangen. Zu den in diesen Pseudopaketen definierten Symbolen gehören:
Um nur die Typen zu erhalten, gräpste ich diejenigen, bei denen der deklarierte Name des Symbols gleich dem Namen seines Objekttyps ist.
Wenn Sie nur Klassen möchten, können Sie den folgenden Schritt hinzufügen:
%Vor%