error if we have a lazy attr with no default or builder
[gitmo/Moose.git] / lib / Moose / Meta / Method / Accessor / Native / String / prepend.pm
CommitLineData
e7724627 1package Moose::Meta::Method::Accessor::Native::String::prepend;
2
3use strict;
4use warnings;
5
245478d5 6our $VERSION = '1.19';
e7724627 7$VERSION = eval $VERSION;
8our $AUTHORITY = 'cpan:STEVAN';
9
8b9641b8 10use Moose::Role;
11
12with 'Moose::Meta::Method::Accessor::Native::Writer' => {
13 -excludes => [
14 qw(
15 _minimum_arguments
16 _maximum_arguments
53a4677c 17 _optimized_set_new_value
8b9641b8 18 )
19 ]
7f5ec80d 20 };
e7724627 21
22sub _minimum_arguments { 1 }
8b9641b8 23
e7724627 24sub _maximum_arguments { 1 }
25
26sub _potential_value {
53a4677c 27 my $self = shift;
28 my ($slot_access) = @_;
e7724627 29
1e2c801e 30 return '$_[0] . ' . $slot_access;
e7724627 31}
32
53a4677c 33sub _optimized_set_new_value {
34 my $self = shift;
35 my ($inv, $new, $slot_access) = @_;
e32b7489 36
53a4677c 37 return $slot_access . ' = $_[0] . ' . $slot_access;
e32b7489 38}
39
8b9641b8 40no Moose::Role;
41
e7724627 421;