change role-to-role application to allow method shadowing
[gitmo/Moose.git] / lib / Moose / Meta / Method / Accessor / Native / String / append.pm
CommitLineData
e7724627 1package Moose::Meta::Method::Accessor::Native::String::append;
2
3use strict;
4use warnings;
5
8b9641b8 6use Moose::Role;
7
8with 'Moose::Meta::Method::Accessor::Native::Writer' => {
9 -excludes => [
10 qw(
11 _minimum_arguments
12 _maximum_arguments
a486d5ad 13 _inline_optimized_set_new_value
8b9641b8 14 )
15 ]
7f5ec80d 16 };
e7724627 17
18sub _minimum_arguments { 1 }
8b9641b8 19
e7724627 20sub _maximum_arguments { 1 }
21
22sub _potential_value {
53a4677c 23 my $self = shift;
24 my ($slot_access) = @_;
e7724627 25
53a4677c 26 return '( ' . $slot_access . ' . $_[0] )';
e7724627 27}
28
a486d5ad 29sub _inline_optimized_set_new_value {
53a4677c 30 my $self = shift;
31 my ($inv, $new, $slot_access) = @_;
e32b7489 32
a486d5ad 33 return $slot_access . ' .= $_[0];';
e32b7489 34}
35
8b9641b8 36no Moose::Role;
37
e7724627 381;