Ich versuche zur Laufzeit herauszufinden, wo ein Objekt instanziiert wurde, da dies den Benutzern meiner Bibliothek eine sehr nützliche Fehlermeldung liefern könnte.
Angenommen, wir haben den folgenden Code:
%Vor% obj
wird dann an eine Instanz einer anderen Klasse von mylib
übergeben und geht auf eine wunderbare Reise. Irgendwo in der Zeile verursacht obj
etwas Schlimmes und ich möchte den Benutzer dorthin verweisen, wo obj
instanziiert wurde.
Ich hatte gehofft, ich könnte das Modul inspect verwenden, um herauszufinden, in welcher Datei und mit welcher Zeilennummer obj
wurde instanziiert. Leider unterstützen die inspect.getsourcefile
und inspect.getsourcelines
keine Instanzen. Gibt es einen technischen Grund, warum dies nicht unterstützt wird?
Gibt es eine andere Möglichkeit, die gesuchten Daten zu erhalten?