Tekst :: Macro's

Een objectgeoriënteerde tekstmacromotor
Download nu

Tekst :: Macro's Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Naam uitgever:
  • John Douglas Porter
  • Uitgever website:
  • http://search.cpan.org/~jdporter/

Tekst :: Macro's Tags


Tekst :: Macro's Beschrijving

Een objectgeoriënteerde tekstmacromotor Tekst :: macros.pm is een perl-object-georiënteerde tekst macro-motor. Typisch gebruik kan er als volgt uitzien: mijn $ sjabloon = $ account_num); # Maak een macro-expander: mijn $ Macro_Expander = Tekst :: Macros-> Nieuw ("\ Q ]"); # Breid de macro's in de sjabloon uit: mijn $ Email_Text = $ Macro_Expander-> Expand_Macros ($ Data_Object, $ Sjabloon); om dit te ondersteunen, zou een "data-object" moeten bestaan die zou moeten definiëren die worden gebruikt als macro namen, bijv Zoals dit: pakketrecordobject; Sub recipientemail {$ _ -> {'recipientemail'}} Sub senderemail {$ _ -> {'senderemail'}} Sub accountnum {$ _ -> {'accountnum'}} Sub recipienname {$ _ -> {'RecipientName'}} subputamount {$ _ -> {'Potitomount'}} sub Dayspastdue {$ _ -> {'Dayspastdue'}} Als alternatief, de gegevens Object-klasse kan autoload gedefinieerd hebben, bijvoorbeeld als dit: pakketrecordobject; Sub autoload {mijn $ self = shift; mijn $ naam = $ autoload; $ naam = ~ s /.* :: //; $ zelf -> {$ NAAM}} Als dit het geval is, moet de macro-expander worden geïnstrueerd om niet te beweren dat de macrolnamen die zijn aangetroffen zijn voor het object - omdat het kan mislukken, ook al zullen de oproepen worden afgehandeld door Autoload. Om dit te doen, geef een echte waarde voor de derde waarde voor de constructor: mijn $ Macro_Expander = Tekst :: Macros-> Nieuw ("\ Q ]", 1); Macro's kunnen argumenten nemen. Alle snaren die zich voordoen in de macro-tekst nadat de macrolaam wordt doorgegeven als argumenten voor de macro-methode-oproep. Standaard worden de macro-naam en alle argumenten allemaal gescheiden door newlines. U kunt dit gedrag overschrijven; Zie de documentatie van parse_args, onder. Synopsisuse tekst :: macro's; # poëtisch: mijn $ macro_expander = nieuwe tekst :: macro's qw ({{}}); $ Text = Expand_Macros $ Macro_Expander $ Data_Object, $ Text; # Noisy: $ Macro_Expander = Tekst :: Macros-> Nieuw ("\ Q ]", 1); Print $ Macro_Expander-> Expand_Macros ($ Data_Object, $ Text); Vereisten: · Perl


Tekst :: Macro's Gerelateerde software