Rose :: Objekt :: Makemethods

Rose :: Object :: Mapemethods ist eine einfache Methode Maker Base Perl-Klasse.
Jetzt downloaden

Rose :: Objekt :: Makemethods Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • John C. Siracusa
  • Website des Verlags:
  • http://search.cpan.org/~jsiracusa/

Rose :: Objekt :: Makemethods Stichworte


Rose :: Objekt :: Makemethods Beschreibung

Rose :: Object :: Mapemethods ist eine einfache Methode Maker Base Perl-Klasse. Rose :: Objekt :: Mapemethods ist ein einfacher Methodenhersteller Base Perl Class.Synopsis-Paket MyMethodmaker; Verwenden Sie Rose :: Objekt :: Mapemethods; Unsere @Isa = QW (Rose :: Object :: Mapemethods); Sub-Widget {My ($ -Sclass, $ name, $ args) = @_; Meine $ Key = $ args -> {'hash_key'} || $ Name; Meine $ Interface = $ args -> {'Interface'} || 'get_set'; meine% Methoden; if ($ interface = ~ / ^ get_set /) {$ -Methoden {$ name} = sub {My ($ self) = Schicht; if (@_) {...} ... zurückgeben $ self -> {$ Key}; }; } if ($ Interface EQ 'get_set_delete') {$ Methoden {"delete_ $ Name" {"delete_ $ Name"} = sub {...}; ) Rückgabe von% Methoden; } ... Paket MyObject; Sub New {...} Verwenden Sie MyMetHodMaker ('widget --get_set_delete' => 'foo', 'widget' => ; ... $ o = myobject-> neu; $ o-> foo ($ bar); $ o-> delete_foo (); Drucken $ o-> bar. $ o-> baz; ... Rose :: Objekt :: Mapemethods ist die Basisklasse für eine Familie von Methodenherstellern. Ein Methodenhersteller ist ein Modul, das verwendet wird, um Methoden in anderen Paketen zu definieren. Die eigentlichen Methodenhersteller sind Unterklassen von Rose :: Object :: Mapemethods, die die Namen und Optionen der verschiedenen Arten von Methoden definieren, die sie machen können. Es gibt Methodenhersteller, die sowohl Objektmethoden als auch Klassenmethoden erstellen. Die Objektmethodenhersteller befinden sich in der Rose :: Object :: Mapemethods :: * Namespace. Die Klassenmethodenhersteller befinden sich in der Rose :: Klasse :: Makemethods :: * Namespace wegen der Klarheit, aber immer noch von der Klasse: MethodMaker erben und daher die gleiche Methode mit der gleichen Methode teilen. :: Objekt :: Makemethods :: * und Rose :: Klasse :: Mapemethods :: * Namespaces, hauptsächlich für andere Rose :: * Objekte und Klassen. Diese Familie von Modulen ist nicht so leistungsfähig oder flexibel wie der, der inspiriert ist IT: Klasse :: MethodMaker. Ich fand heraus, dass ich nur eine winzige Ecke der Funktionalität der Klasse :: MethodMaker verwendete Ihre Methoden sollten als Implementierungsdetails betrachtet werden, die sich jederzeit ändern können. Anforderungen: · Perl.


Rose :: Objekt :: Makemethods Zugehörige Software