Klasse:: Meta:: Express 0.04 - Class::Meta::Express 0.04

Klasse:: Meta:: Express 0.04

Sponsored Links

Klasse:: Meta:: Express 0.04: Zusammenfassung

Rang Klicken Sie auf den Stern auf RangRanking-Ebene:
Overall ranking: 0 (0 times) Herunterladen
Dateigröße: 0.009 MB Flatform: Any Platform Liscense: Perl Artistic License Preis: Download-Zahl: 8046 Datum: 2006-10-19 Verlag: Other Publisher

Klasse:: Meta:: Express 0.04: Beschreibung

Kategorie:: Meta-:: Ist eine Perl-Baugruppe für kurze, ausdrucksvolle Kreation der Kategorie: ausdrücklich: Meta-Kategorien.

Synopse

mein verpacken:: Kontakt;
Gebrauch Kategorie:: Meta-:: Ausdrücklich;

Kategorie {
Meta-Kontakt => (default_type => Zeichenkette);
hat Namen;
hat Kontakt => (erforderliches => 1);
}

Diese Baugruppe liefert, eine Schnittstelle kurz dennoch erstellt ausdrucksvoll Kategorien mit Kategorie:: Meta-. Obgleich ich selbstverständlich in Kategorie: vernarrt bin: Meta-, Ive übermäßig gebegeistert nie mit seiner Schnittstelle für das Erstellen der Kategorien:

mein verpacken:: Thingy;
Gebrauch Kategorie:: Meta-;

ANFANGEN {
# eine Kategorie erstellen:: Meta-Nachricht für diese Kategorie.
mein $cm = Kategorie:: Meta->new (Schlüssel=> thingy);

# einen Erbauer hinzufügen.
$cm->add_constructor (Namens=> neu);

# ein paar Attribute mit festgelegten Accessors addieren.
$cm->add_attribute (
=> Identifikation benennen,
ist => ganze Zahl,
erforderliches => 1,
);

$cm->add_attribute (
Namens=> Name,
ist => Zeichenkette,
erforderliches => 1,
);

$cm->add_attribute (
Namens=> Alter,
ist => ganze Zahl,
);

# eine kundenspezifische Methode hinzufügen.
$cm->add_method (
=> chk_pass benennen,
=> Unterseeboot {Rückgabecode} codieren,
);
$cm->build;
}

Dieses Beispiel ist verhältnismäßig einfach; es kann viel mehr ausführlich erhalten. Aber sogar noch, waren alle Methodenaufrufe ärgerlich. Ich bedeute, wer auch immer dachte an die Anwendung einer objektorientierten Schnittstelle für die Erklärung einer Kategorie? (Oh yeah: Ich tat.) Ich war nicht allein, wenn ich eine erklärendereschnittstelle wünschte; Curtis Poe, mit meinem Segen, erstellte Kategorie:: Meta-:: Erklären, das diese Syntax verwenden, um die gleiche Kategorie zu erstellen:

mein verpacken:: Thingy;
Gebrauch Kategorie:: Meta-:: Erklären: alle;

Kategorie:: Meta-:: Declare->new (
# eine Kategorie erstellen:: Meta-Nachricht für diese Kategorie.
Meta- => [
Schlüssel=> thingy,
],
# einen Erbauer hinzufügen.
Erbauer => [
neues => {}
],
# ein paar Attribute mit festgelegten Accessors addieren.
zuschreibt => [t
Identifikation => {
=> $TYPE_INTEGER schreiben,
erforderliches => 1,
},
Namens=> {
erforderliches => 1,
=> $TYPE_STRING schreiben,
},
Alter => {Typ => $TYPE_INTEGER,},
],
# eine kundenspezifische Methode hinzufügen.
Methoden => [
chk_pass => {
=> Unterseeboot {Rückgabecode} codieren,
}
]
);

Dieser Anflug hat den Vorteil des Seins ein bißchen kürzer, und er ist Aussage, aber ich finde alle Einrückungsstände zu stören; seine Zwangsarbeit, damit ich herausfinde, wo ich bin, besonders wenn ich viele Attribute definieren muß. Und schließlich, ist alles eine Zeichenkette mit dieser Syntax, außer jenen häßlichen Read-only-Scalars wie $TYPE_INTEGER. So kippe ich mitteile leicht, wo ein Attribut beendet und das folgende man beginnt. Bleh.

Herunterladen

Klasse:: Meta:: Express 0.04: Screenshot

Sponsored Links
Klasse:: Meta:: Express 0.04 herunterladen

Klasse:: Meta:: Express 0.04: Stichwort

Klasse:: Meta:: Express 0.04: Lesezeichen

Hyperlink code:
Hyperlink and Intro code:

Klasse:: Meta:: Express 0.04: verwandt software

Klasse:: Meta:: Express 0.04: Revision
den Namen des Autors :  
Autor E-Mail :  
Kommentar :  
Sicherheits-Code :  
     
   
Meine Software
Sie haben noch keine Software. Klicken Sie auf Save "neben den einzelnen Software, um ihn zu speichern, um Ihre Software-Korb"
Verwandte Suche
Sponsored Links