Texto :: Macros.

um motor macro de texto orientado a objetos
Baixe Agora

Texto :: Macros. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Nome do editor:
  • John Douglas Porter
  • Site do editor:
  • http://search.cpan.org/~jdporter/

Texto :: Macros. Tag


Texto :: Macros. Descrição

Um motor macro de texto orientado a objetos Text :: Macros.pm é um mecanismo macro de texto orientada a objeto Perl.Typical Uso pode se parecer com isto: meu modelo $ template = $ conta_num); # Faça um expansor de macro: meu $ macro_expander = text :: macros-> novo ("\ q ]"); # Expandir as macros no modelo: Meu $ E-mail_Text = $ macro_expander-> expand_macros ($ data_Object, $ Modelo); para suportar isso, um "objeto de dados" precisaria existir, o que precisaria definir métodos que serão usados como macro nomes, por exemplo assim: pacote de pacote de pacote; Sub RecipiTeMail {$ _ -> {'RecipiTeMail'}}} sub sentidoemail {$ _ -> {'senderemail'}} sub-conta {$ _ -> {'activeNum'}} sub teclado {$ _ -> {'destinatárioName'}}} subtualidade {$ _ -> {'pagationamount'}} sub diaspastdue {$ _ -> {'diaspastdue'}} alternativamente, os dados A classe de objeto pode ter AutoLoad definido, por exemplo, como este: pacote de gravação de pacote; Sub AutoLoad {My $ self = Shift; meu nome $ = $ Autoload; $ NAME = ~ S /.* :: //; $ -> {$ NAME}} Se este for o caso, o expansor de macro deve ser instruído a não afirmar que os nomes de macro encontrados são válidos para o objeto - já que pode falhar, mesmo que as chamadas forem tratadas por Autooload. Para fazer isso, passe um valor verdadeiro para o terceiro valor ao construtor: My $ macro_expander = text :: macros-> novo ("\ q ]", 1); macros podem fazer argumentos. Quaisquer strings que ocorram dentro do texto macro após o nome da macro ser aprovada como argumentos para a chamada de método macro. Por padrão, o nome da macro e quaisquer argumentos são separados por newlines. Você pode substituir esse comportamento; Veja a documentação de Parse_Args, abaixo.Synopsisuse Text :: Macros; # poett: my $ macro_expander = novo texto :: Macros QW ({{}}); $ text = expande_macros $ macro_expander $ data_Object, $ texto; # Noisy: $ macro_expander = texto :: macros-> novo ("\ q ", 1); Imprimir $ macro_expander-> expand_macros ($ data_Object, $ text); Requisitos: · Perl.


Texto :: Macros. Software Relacionado