NAME

Mason::Component::Moose - Moose policies and exports for Mason components

DESCRIPTION

This module is automatically included in each generated Mason component class, and is equivalent to

use CLASS;
use Moose;
use MooseX::HasDefaults::RW;
use Method::Signatures::Simple;

OVERRIDING

To override the default behavior, subclass this class and specify it as base_component_moose_class to Mason::Interp.

For example, to use MooseX::StrictConstructor in every component:

package My::Mason::Component::Moose;
use Moose::Exporter;
use MooseX::StrictConstructor ();
use base qw(Mason::Component::Moose);

sub init_meta {
    my $class = shift;
    $class->SUPER::init_meta(@_);
    MooseX::StrictConstructor->init_meta(@_);
}

...

my $interp = Mason::Interp->new(..., base_component_moose_class => 'My::Mason::Component::Moose');

SEE ALSO

Mason

AUTHOR

Jonathan Swartz <swartz@pobox.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by Jonathan Swartz.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.