=encoding utf8 =pod =head1 題名 Moose::Cookbook::Basics::Recipe6 - augment/innerの例 =head1 概要 package Document::Page; use Moose; has 'body' => ( is => 'rw', isa => 'Str', default => sub {''} ); sub create { my $self = shift; $self->open_page; inner(); $self->close_page; } sub append_body { my ( $self, $appendage ) = @_; $self->body( $self->body . $appendage ); } sub open_page { (shift)->append_body('') } sub close_page { (shift)->append_body('') } package Document::PageWithHeadersAndFooters; use Moose; extends 'Document::Page'; augment 'create' => sub { my $self = shift; $self->create_header; inner(); $self->create_footer; }; sub create_header { (shift)->append_body('
') } sub create_footer { (shift)->append_body('