Autoloader

Autoloader ist ein Perl-Modul, das Unterprogramme nur auf Anfrage laden kann.
Jetzt downloaden

Autoloader Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • The Perl5-Porters
  • Website des Verlags:
  • http://search.cpan.org/~smueller/AutoLoader-5.63/lib/AutoLoader.pm

Autoloader Stichworte


Autoloader Beschreibung

Autoloader ist ein Perl-Modul, das Unterprogramme nur auf Anfrage laden kann. Autoloader ist ein Perl-Modul, das Unterprogramme nur auf Demand auf Demand laden kann.Synopsis-Paket Foo; Verwenden Sie den Autoloader 'Autoload'; # Importieren Sie die Standard-Subroutine-Paketleiste von AutoLoad; Autoloader verwenden; # nicht automatisch importieren, definieren Sie unser eigenes Sub-AutoLoad {... $ autoloader :: autoload = "..."; goto autoloader :: autoload; } Das Autoloader-Modul arbeitet mit dem Autosplit-Modul und dem __end__-Token, um das Laden einiger Unterprogramme zu verschieben, bis sie verwendet werden, anstatt alle auf einmal zu laden nach einem __end__-Token autoloadiert. (Siehe Perldata.) Das Autosplit-Modul kann dann manuell ausgeführt werden, um die Definitionen in einzelne Dateien zu extrahieren Auto / FuncName.Alloader implementiert eine Autoload-Unterprogramme. Wenn in einem Client-Modul in einem Client-Modul des Autoloaders aufgerufen wird, versucht die Autoload-Subroutine des Autoloaders, die Subroadine in einer Datei in einer Datei mit einem Namen mit einem Namen zu lokalisieren, der sich auf den Speicherort der Datei bezieht, aus dem das Client-Modul gelesen wurde. Wenn sich POSIX.PM in /usr/local/Lib/Perl5/PoSix.pm befindet, sucht Autoloader nach Perl-Subroutinen POSIX in /usr/local/lib/Perl5/auto/pox/.d.al, wo Die .al-Datei hat den gleichen Namen wie die Subroutine, das SANS-Paket. Wenn eine solche Datei vorhanden ist, leuchtet und auswertet das AutoLoad es somit (vermutlich) die erforderliche Subroutine definiert. AutoLoad wird dann das neu definierte Subroutine abgeschlossen. Wenn noch keine Methoden definiert worden sind, ist es notwendig, jedes Unterprogramm "deklarieren" (wie im Subname;). Siehe "Synopsis" in Perlsub. Eine solche Deklaration erstellt "Subroutine-Stubs", die Platzhalter ohne Code befinden. Die Autosplit- und Autoloader-Module automatisieren die Erstellung von Vorwärtsanschlüssen. Das Autosplit-Modul erstellt eine "Index" -Datei mit Vorwärtsanläufen aller Autosplit-Unterprogramme. Wenn das Autoloader-Modul 'verwendet wird, wird diese Deklarationen in sein Anrufer-Paket geladen. Sie ist wichtig, dass der Autoloader immer verwendet wird und nicht erforderlich ist und nicht erforderlich ist Verwenden Sie den Autoloader 'autoload'. RESTIERENDE AUTOLOADERS AUTOLOAD SUBOUTINESOME MODULE, HÄUFIGKEIT ERLÄUTERUNGEN, geben hauptsächlich Erweiterungen, die eigene Autoload-Unterprogramme bereitstellen. Sie müssen typischerweise nach einigen Sonderfällen (z. B. Konstanten) einchecken, und dann auf der Autoload von Autoloader für die REST.Such-Module, die die Autoload-Subroutine von Autoloader nicht importieren sollten. Stattdessen sollten sie ihre eigenen Autoload-Unterprogramme in diesen Zeilen definieren: Verwenden Sie den Autoloader; Verwenden Sie Karpfen; sub automatisch laden {MY $ sub = $ autoload; (mein $ constnname = $ sub) = ~ s /.* :: //; Mein $ Val = Constant ($ CONSTNAME, @_? $ _ : 0); if ($ !! = 0) {if ($! = ~ / ungültig / || $! {Einval}) {$ autoloader :: autoload = $ sub; goto autoloader :: autoload; } else {croak "Ihr Anbieter hat keinen konstanten Konstennamen definiert"; }} * $ sub = sub {$ val}; # wie: Eval "sub $ sub {$ val}"; goto $ sub; } Wenn ein eigenes Autoload-Subroutin eines Moduls nicht erforderlich ist, um auf die Autoload-Subroutine des Autoloaders zu sinken Ein Paket mit dem Autoloader ist nicht für automatisch geladene Unterprogramme sichtbar, da der angegebene Umfang am __END__-Marker endet. Ein Modul mit solchen Variablen als Paketglobals funktioniert nicht ordnungsgemäß unter dem Autoloader. Das Vars Pragma (siehe "Vars" in Perlmod) kann in solchen Situationen als Alternative verwendet werden, um alle Globaturen mit dem Paket-Namespace explizit zu qualifizieren. Mit diesem Pragma vorkonfitierter Variablen sind für alle autologen Routinen sichtbar (aber nicht unsichtbar außerhalb des Pakets, leider) .Nicht mit autoloaderyou kann nicht aufhören : Beide Verzögerung der Belastung von Subroutinen.elloader verwendet den __Data__-Marker eher als __end__. Während dies die Verwendung einer Hierarchie von Festplattendateien und der zugehörigen Open / Close für jede geladene Routine vermeidet, erleidet der Selfloader in der einmaligen Analyse der Leitungen nach __data__ einen Analysgeschwindigkeit nach __Data__, wonach Routinen zwischengespeichert werden. Der Selfloader kann auch mehrere Pakete in einem Datei verarbeiten .autoloader liest nur Code, wie er angefordert wird, und in vielen Fällen sollte schneller sein, erfordert jedoch ein Mechanismus wie AutoSplit, um die einzelnen Dateien zu erstellen. Extutils :: Makemaker ruft automatisch automatisch auf, wenn Autoloader in einer Modulquelldatei verwendet wird. Anforderungen: · Perl.


Autoloader Zugehörige Software

Efeu.

EFEU eignet sich für den Umgang mit Datenwürfeln, die besonders nützlich für den Bau von Datenlagern sind. ...

147

Herunterladen