Testo :: Macro.

Un motore macro testo orientato agli oggetti
Scarica ora

Testo :: Macro. Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • Perl Artistic License
  • Nome editore:
  • John Douglas Porter
  • Sito web dell'editore:
  • http://search.cpan.org/~jdporter/

Testo :: Macro. Tag


Testo :: Macro. Descrizione

Un motore macro testo orientato agli oggetti Testo :: macro.pm è un motore macro di testo orientato all'oggetto perl. Utilizzo di utilizzo Typical potrebbe assomigliare a questo: My $ Template = $ Account_num); # Crea un Expander Macro: My $ Macro_ExPander = Testo :: Macro-> Nuovo ("\ Q ]"); # espandere le macro nel modello: My $ e-mail_text = $ macro_expander-> expand_macros ($ data_ata_object, $ modello); per supportare questo, un "oggetto dati" dovrebbe esistere che sarebbe necessario definire i metodi che verranno utilizzati come macro nomi, ad esempio In questo modo: il pacchetto di registrazione; Sub RecipienteMail {$ _ -> {'DestinatiTemail'}} Sub SenderEmail {$ _ -> {'SenderEmail'}} Sub Accountnum {$ _ } {'ACCOUNTNUM'}} DEB DESTINALMENTNAME {$ _ -> {'Destinatientname'}} Sub PAGYMOUNTA {$ _ -> {'PAGYIMALLOUNT'}} Sub DaysPastDUE {$ _ -> {'DaysPastDue'}} In alternativa, i dati La classe Object potrebbe avere Autoload definito, ad esempio come questa: RecordObject Package; Sub Autoload {My $ Self = Shift; My $ NAME = $ Autoload; $ name = ~ s /.*: //; $ Self -> {$ NAME}} Se questo è il caso, allora l'Expander Macro deve essere istruito per non affermare che i nomi macro incontrati sono validi per l'oggetto - poiché può fallire, anche se le chiamate verranno gestite da Autoload. Per fare ciò, superare un valore reale per il terzo valore al costruttore: My $ Macro_ExPander = Text :: Macro-> Nuovo ("\ Q ]", 1); Macro possono prendere argomenti. Eventuali stringhe che si verificano all'interno del testo macro dopo che il nome macro verrà superato come argomenti alla chiamata del metodo macro. Per impostazione predefinita, il nome macro e eventuali argomenti sono tutti separati da Newline. Puoi ignorare questo comportamento; Vedi la documentazione di Parse_args, sotto.Synopsisuse Text :: Macro; # Poetico: My $ Macro_ExPander = Nuovo testo :: Macro QW ({{}}); $ text = expand_macros $ macro_expander $ data_object, $ testo; # rumoroso: $ macro_expander = testo :: macro-> nuovo ("\ q ]", 1); Stampa $ macro_expander-> expand_macros ($ data_object, $ text); Requisiti: · Perl.


Testo :: Macro. Software correlato