Attribut :: Handlers.

Einfachere Definition von Attributhandlern
Jetzt downloaden

Attribut :: Handlers. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Steffen Muller
  • Website des Verlags:
  • http://search.cpan.org/~smueller/

Attribut :: Handlers. Stichworte


Attribut :: Handlers. Beschreibung

Einfachere Definition von Attributhandlern Das Attribut :: Handler-Perl-Modul, wenn er von einem Paket ererbt wird, ermöglicht es, dass die Klasse des Pakets Attributhandler-Unterprogramme für bestimmte Attribute definiert. Anschließend in diesem Paket definierten Variablen und Subroutinen oder in Paketen, die von diesem Paket abgeleitet werden, können Attribute mit den gleichen Namen wie die Attribut-Handler-Subroutine erteilt werden, die dann in einem der Kompilierungsphasen aufgerufen werden (dh in einem Beginn, Check, init oder Endblock). (Incenneck-Blöcke entsprechen nicht einer globalen Kompilierungsphase, sodass sie hier nicht angegeben werden können.) Um einen Handler zu erstellen, definieren Sie es als Subroutine mit demselben Namen wie das gewünschte Attribut und deklarieren Sie das Subroutin selbst mit dem Attribut : Attr. Zum Beispiel: Packung Louddecl; Verwenden Sie Attribute: Handler; sub laut: attr {mein ($ paket, $ symbol, $ referent, $ attr, $ data, $ phase, $ fileName, $ lineNum) = @_; drucken stderr ref ($ referent), "", * {$ symbol} {Name}, "", "($ referent)", "wurde gerade deklariert", und wurde das $ {atatR at at atatR} -attribut ",", mit Daten ($ Daten) "," in der Phase-Phase "," In File $ Dateiname bei line $ lineNum " aufgerufen und bestanden: Der Name des Pakets, in das er deklariert wurde; einen Bezug auf den Symboltabelleneintrag (TypeGlob), der die Subroutine enthält; einen Verweis auf die Subroutine; Der Name des Attributs; alle mit diesem Attribut verknüpften Daten; der Name der Phase, in der der Handler aufgerufen wird; Der Dateiname, in dem der Handler aufgerufen wird; Die Zeilennummer in Diese Datei # # Aufgerufen für eine Skalarvariable mit einem: guten Attribut, # bereitgestellt wurde, wurde die Variable in MyClass (oder # A abgeleiteter Klasse) deklariert oder in MyClass eingegeben. # Tun, was auch immer zu $ referent hier (ausgeführt wird in der Schachphase). ...} Sub BAD: ATTR (Scalar) {# Aufruf für jede Skalarvariable mit A: BAD-Attribut, # bereitgestellt Die Variable wurde in MyClass (oder # A abgeleiteter Klasse) deklariert oder in MyClass eingegeben. ...} SUB GOOD: ATTR (Array) {# Aufgerufen für jede Array-Variable mit einem: Guten Attribut, # bereitgestellt Die Variable wurde in MyClass (oder # A abgeleiteter Klasse) deklariert oder in MyClass eingegeben. ...} Sub Good: attr (Hash) {# aufgerufen für eine beliebige Hash-Variable mit einem: Guten Attribut, # bereitgestellt Die Variable wurde in MyClass (oder # A abgeleiteter Klasse) deklariert oder in MyClass eingegeben. ...} sub hässlich: attr (Code) {# aufgerufen für jedes in MyClass deklarierte Subroutine (oder eine # abgeleitete Klasse) mit einem: hässlichen Attribut. ...} Sub omni: attr {# aufgerufen für einen Skalar, ein Array, Hash- oder Subroutine-Nr.: OMNI-Attribut, sofern die Subroutine mit Variablen oder # in MyClass (oder einer abgeleiteten Klasse) angegeben wurde, oder die Variable wurde eingegeben zur Myklasse. # Verwenden Sie REF ($ _ ), um festzustellen, welche Art von Referent es war. ...} Attribut verwenden :: Handler Autotie => {CYCLE => Krawatte :: Zyklus}; mein $ Nächstes: Zyklus (); Anforderungen: · Perl.


Attribut :: Handlers. Zugehörige Software