Thread Funktionen aus Modul parsen (6 answers)
Opened by rosti at 2012-03-01 18:46

rosti
 2012-03-01 19:35
#156568 #156568
User since
2011-03-19
3202 Artikel
BenutzerIn
[Homepage]
user image
Danke Dir, das Letztere kommt in die nährere Auswahl, kling schonmal gut...

Viele Grüße,
Rosti

PS/Edit, zum Hintergrund: Nach dem Prizip AutoLoad, AutoSplit, SelfLoad möchte ich einige Methoden auslagern, jedoch nicht in einzelne Dateien, nicht unter __DATA__ und nicht unter __END__ sondern in eine Binärdatei. Diese Binary wird mit einem meiner eigens entwickelten Module auf einen Hash gelesen, jeder Eintrag hat also einen Namen (der Name der Methode) und das was bei einer sub[} zwischen den {} steht als String.

Es handelt sich um Methoden, die für normale Seitenaufrufe nicht gebraucht werden sondern erst, wenn das Management von Inhalten über den Browser erfolgt. Die Response-Klasse meines kleinen aber feinen Frameworks hat sehr viele Methoden für eine Instanz, mit UNIVERSAL::can wird von der jeweils namentlich angeforderten Methode der Code auf eine anonyme Refererenz gelegt und beim Ausführen auf Exception getestet...

So läuft das bisher, wobei wie gewöhnlich infolge use der Code einer _jeden_ Methode in den Hauptspeicher geladen wird, auch für Methoden, die gar nicht sooft gebraucht werden. Einer der üblichen Gründe für AutoLoad/SelfLoad: Methods on demand, ich werde das nur ein bischen kompakter machen mit den Demand-Methods in einem Hash, welcher aus einer Binary erzeugt wird (eigener Algorithmus serialize/deserialize).

Zu UNIVERSAL::can, Suche nach Code in der Response-Klasse kommt demnächst ein elsif(exists $methodHash($name}){} hinzu, was nur einen kleinen Eingriff in die bisherige Kontrollstruktur erfordert.

Die Hauptaufgabe besteht jetzt darin, die dafür bestimmten Methoden aus dem Modul meiner Response-Klasse rauszunehmen und in den Hash zu schreiben.

Wahrscheinlich wirds mehr Handarbeit, egal, was dabei rauskommen soll funktioniert wie geschmiert ;)
Last edited: 2012-03-01 20:10:07 +0100 (CET)

View full thread Funktionen aus Modul parsen