Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages
MicroMason::CatchErrors(3) User Contributed Perl Documentation MicroMason::CatchErrors(3)

Text::MicroMason::CatchErrors - Add Exception Catching for Templates

Instead of using this class directly, pass its name to be mixed in:
    use Text::MicroMason;
    my $mason = Text::MicroMason->new( -CatchErrors );
Use the standard compile and execute methods to parse and evalute templates:
  print scalar $mason->compile( text=>$template )->( @%args );
  print scalar $mason->execute( text=>$template, @args );
Result is undef on exception, plus an error message if in list context:
  ($coderef, $error) = $mason->compile( text=>$template );
  ($result,  $error) = $mason->execute( text=>$template, 'name'=>'Dave' );

This package adds exception catching to MicroMason, allowing you to check an error variable rather than wrapping every call in an eval.
Both compilation and run-time errors in your template are handled as fatal exceptions. The base MicroMason class will croak() if you attempt to compile or execute a template which contains a incorrect fragment of Perl syntax. Similarly, if the Perl code in your template causes die() or croak() to be called, this will interupt your program unless caught by an eval block.
This class provides that error catching behavior for the compile and execute methods.
In a scalar context they return the result of the call, or undef if it failed; in a list context they return the results of the call (undef if it failed) followed by the error message (undef if it succeeded).

  $code_ref = $mason->compile( text => $template, %options );
  ($coderef, $error) = $mason->compile( text=>$template, %options );
Uses an eval block to provide an exception catching wrapper for the compile method.
  $result = $mason->execute( text => $template, @arguments );
  ($result,  $error) = $mason->execute( text=>$template, 'name'=>'Dave' );
Uses an eval block to provide an exception catching wrapper for the execute method.

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.
2007-01-29 perl v5.28.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.