Klasse Prism::Translation::Ripper

Diese Klasse bietet eine Kompatibilitätsschicht zwischen prism und Ripper. Sie funktioniert, indem sie den gesamten Baum zuerst analysiert und ihn dann durchläuft und jeden der Ripper-Rückrufe ausführt, während sie fortschreitet. Um diese Klasse zu verwenden, behandeln Sie Prism::Translation::Ripper effektiv so, wie Sie die Klasse Ripper behandeln würden.

Beachten Sie, dass diese Klasse die häufigsten Anwendungsfälle abdecken wird, aber die API von Ripper ist umfangreich und undokumentiert. Sie beruht darauf, den Zustand des Parsers zu jedem Zeitpunkt zu melden. Wir tun unser Bestes, um dies hier zu replizieren, aber da es sich um eine andere Architektur handelt, ist es nicht möglich, das Verhalten von Ripper perfekt zu replizieren.

Der wichtigste bekannte Unterschied ist, dass wir das Auslösen einiger Ereignisse in einigen Fällen weglassen können. Dies beeinträchtigt die folgenden Ereignisse