Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

text::micromason::embperl(3pm) [debian man page]

MicroMason::Embperl(3pm)				User Contributed Perl Documentation				  MicroMason::Embperl(3pm)

NAME
Text::MicroMason::Embperl - Alternate Syntax like Embperl Templates SYNOPSIS
Instead of using this class directly, pass its name to be mixed in: use Text::MicroMason; my $mason = Text::MicroMason::Base->new( -Embperl ); Use the standard compile and execute methods to parse and evalute templates: print $mason->compile( text=>$template )->( @%args ); print $mason->execute( text=>$template, @args ); Embperl syntax provides several ways to mix Perl into a text template: [- my $name = $ARGS{name}; -] [$ if $name eq 'Dave' $] I'm sorry [+ $name +], I'm afraid I can't do that right now. [$ else $] [- my $hour = (localtime)[2]; my $daypart = ( $hour > 11 ) ? 'afternoon' : 'morning'; -] Good [+ $daypart +], [+ $name +]! [$ endif $] DESCRIPTION
This subclass replaces MicroMason's normal lexer with one that supports a syntax similar to Embperl. Compatibility with Embperl Embperl is a full-featured application server toolkit with many fatures, of which only the templating functionality is emulated. This is not a drop-in replacement for Embperl, as the implementation is quite different, but it should be able to process some existing templates without major changes. The following features of EmbPerl syntax are supported: o Square-bracket markup tags The following syntax features of are not supported: o Dynamic HTML tags Template Syntax The following elements are recognized by the Embperl lexer: o [- perl statements -] Arbitrary Perl code to be executed at this point in the template. o [+ perl expression +] A Perl expression to be evaluated and included in the output. o [! perl statements !] Arbitrary Perl code to be executed once when the template is compiled. o [$ name ... $] Supported command names are: if, elsif, else, endif, foreach, endforeach, while, endwhile, do, until, var. Private Methods lex_token ( $type, $value ) = $mason->lex_token(); Lexer for [. ... .] tags. Attempts to parse a token from the template text stored in the global $_ and returns a token type and value. Returns an empty list if unable to parse further due to an error. assembler_rules() Adds mappings from command names used in [$ ... $] tokens to the equivalent Perl syntax. %syntax_rules = $mason->assembler_rules(); SEE ALSO
For an overview of this templating framework, see Text::MicroMason. This is a mixin class intended for use with Text::MicroMason::Base. For distribution, installation, support, copyright and license information, see Text::MicroMason::Docs::ReadMe. perl v5.10.1 2007-01-29 MicroMason::Embperl(3pm)

Check Out this Related Man Page

MicroMason::DoubleQuote(3pm)				User Contributed Perl Documentation			      MicroMason::DoubleQuote(3pm)

NAME
Text::MicroMason::DoubleQuote - Minimalist Interpolation Engine SYNOPSIS
Instead of using this class directly, pass its name to be mixed in: use Text::MicroMason; my $mason = Text::MicroMason::Base->new( -DoubleQuote ); Templates can be written using Perl's double-quote interpolation syntax: $coderef = $mason->compile( text => 'Hello $ARGS{name}!' ); print $coderef->( name => 'World' ); DESCRIPTION
Text::MicroMason::DoubleQuote uses Perl's double-quoting interpolation as a minimalist syntax for templating. Of course you don't need this module for simple cases of interpolation, but if you're already using the MicroMason framework to process template files from disk, this module should allow you to make your simplest templates run even faster. To embed values other than simple scalars in a double-quoted expression you can use the ${ expr } syntax. For example, you can interpolate a function call with "${ ( time() ) }" or "@{[mysub(1,2,3)]}". As noted in perldaq4, "this is fraught with quoting and readability problems, but it is possible." In particular, this can quickly become a mess once you start adding loops or conditionals. If you do find yourself making use of this feature, please consider switching to one of the more powerful template syntaxes like Text::MicroMason::HTMLMason. SEE ALSO
To refer to arguments as $name rather than as $ARGS{name}, see Text::MicroMason::PassVariables. For an overview of this distribution, see Text::MicroMason. This is a subclass intended for use with Text::MicroMason::Base. For distribution, installation, support, copyright and license information, see Text::MicroMason::Docs::ReadMe. perl v5.10.1 2007-01-29 MicroMason::DoubleQuote(3pm)
Man Page