view release on metacpan or search on metacpan
lib/Moose/Meta/Method/Accessor/Native/Array/clear.pm view on Meta::CPAN
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Array::Writer';
sub _maximum_arguments { 0 }
sub _adds_members { 0 }
sub _potential_value { '[]' }
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
return $slot_access . ' = [];';
}
sub _return_value { '' }
lib/Moose/Meta/Method/Accessor/Native/Array/delete.pm view on Meta::CPAN
sub _maximum_arguments { 1 }
sub _inline_check_arguments {
my $self = shift;
return $self->_inline_check_var_is_valid_index('$_[0]');
}
sub _adds_members { 0 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '(do { '
. 'my @potential = @{ (' . $slot_access . ') }; '
. '@return = splice @potential, $_[0], 1; '
. '\@potential; '
. '})';
}
lib/Moose/Meta/Method/Accessor/Native/Array/insert.pm view on Meta::CPAN
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Array::Writer';
sub _minimum_arguments { 2 }
sub _maximum_arguments { 2 }
sub _adds_members { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '(do { '
. 'my @potential = @{ (' . $slot_access . ') }; '
. 'splice @potential, $_[0], 0, $_[1]; '
. '\@potential; '
. '})';
}
lib/Moose/Meta/Method/Accessor/Native/Array/pop.pm view on Meta::CPAN
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Array::Writer';
sub _maximum_arguments { 0 }
sub _adds_members { 0 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '[ @{ (' . $slot_access . ') } > 1 '
. '? @{ (' . $slot_access . ') }[0..$#{ (' . $slot_access . ') } - 1] '
. ': () ]';
}
sub _inline_capture_return_value {
my $self = shift;
lib/Moose/Meta/Method/Accessor/Native/Array/push.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Array::Writer';
sub _adds_members { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '[ @{ (' . $slot_access . ') }, @_ ]';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Array/set.pm view on Meta::CPAN
sub _maximum_arguments { 2 }
sub _inline_check_arguments {
my $self = shift;
return $self->_inline_check_var_is_valid_index('$_[0]');
}
sub _adds_members { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '(do { '
. 'my @potential = @{ (' . $slot_access . ') }; '
. '$potential[$_[0]] = $_[1]; '
. '\@potential; '
. '})';
}
lib/Moose/Meta/Method/Accessor/Native/Array/shift.pm view on Meta::CPAN
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Array::Writer';
sub _maximum_arguments { 0 }
sub _adds_members { 0 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '[ @{ (' . $slot_access . ') } > 1 '
. '? @{ (' . $slot_access . ') }[1..$#{ (' . $slot_access . ') }] '
. ': () ]';
}
sub _inline_capture_return_value {
my $self = shift;
lib/Moose/Meta/Method/Accessor/Native/Array/sort_in_place.pm view on Meta::CPAN
'method_name => "sort_in_place",'.
'type_of_argument => "code reference",'.
'type => "CodeRef",',
) . ';',
'}',
);
}
sub _adds_members { 0 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '[ $_[0] '
. '? sort { $_[0]->($a, $b) } @{ (' . $slot_access . ') } '
. ': sort @{ (' . $slot_access . ') } ]';
}
sub _return_value { '' }
lib/Moose/Meta/Method/Accessor/Native/Array/splice.pm view on Meta::CPAN
'argument => $len,'.
'method_name => "splice",'.
'type_of_argument => "integer",'.
'type => "Int",'.
'argument_noun => "length argument"',
) . ';',
'}',
);
}
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '(do { '
. 'my @potential = @{ (' . $slot_access . ') }; '
. '@return = defined $len '
. '? (splice @potential, $idx, $len, @_) '
. ': (splice @potential, $idx); '
. '\@potential;'
. '})';
lib/Moose/Meta/Method/Accessor/Native/Array/unshift.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Array::Writer';
sub _adds_members { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '[ @_, @{ (' . $slot_access . ') } ]';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Bool/set.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _maximum_arguments { 0 }
sub _potential_value { 1 }
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
return $slot_access . ' = 1;';
}
no Moose::Role;
lib/Moose/Meta/Method/Accessor/Native/Bool/toggle.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _maximum_arguments { 0 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return $slot_access . ' ? 0 : 1';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Bool/unset.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _maximum_arguments { 0 }
sub _potential_value { 0 }
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
return $slot_access . ' = 0;';
}
no Moose::Role;
lib/Moose/Meta/Method/Accessor/Native/Counter/dec.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _minimum_arguments { 0 }
sub _maximum_arguments { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return $slot_access . ' - (defined $_[0] ? $_[0] : 1)';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Counter/inc.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _minimum_arguments { 0 }
sub _maximum_arguments { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return $slot_access . ' + (defined $_[0] ? $_[0] : 1)';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Counter/reset.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _maximum_arguments { 0 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
my $attr = $self->associated_attribute;
return '(do { '
. join(' ', $attr->_inline_generate_default(
'$self', '$default_for_reset'
)) . ' '
. '$default_for_reset; '
. '})';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
return $slot_access . ' = ' . $self->_potential_value . ';';
}
no Moose::Role;
1;
lib/Moose/Meta/Method/Accessor/Native/Counter/set.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _minimum_arguments { 1 }
sub _maximum_arguments { 1 }
sub _potential_value { '$_[0]' }
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
return $slot_access . ' = $_[0];';
}
no Moose::Role;
lib/Moose/Meta/Method/Accessor/Native/Hash/clear.pm view on Meta::CPAN
with 'Moose::Meta::Method::Accessor::Native::Hash::Writer';
sub _maximum_arguments { 0 }
sub _adds_members { 0 }
# The inner () in this expression is for the benefit of inlining code that
# might end up looking like "values %{ {} }". This is a syntax error in perl
# but 'values %{ { () } }' is not.
sub _potential_value { '{ ( ) }' }
# There are no new members so we don't need to coerce new values (none exist)
# and we always want to check the new (empty) hash as a whole.
sub _inline_coerce_new_values { '' }
sub _check_new_members_only { 0 }
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Hash/delete.pm view on Meta::CPAN
with 'Moose::Meta::Method::Accessor::Native::Hash::Writer';
sub _adds_members { 0 }
# There are no new members so we don't need to coerce new values (none exist)
# and we always want to check the new (empty) hash as a whole.
sub _inline_coerce_new_values { '' }
sub _check_new_members_only { 0 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '(do { '
. 'my %potential = %{ (' . $slot_access . ') }; '
. '@return = delete @potential{@_}; '
. '\%potential; '
. '})';
}
lib/Moose/Meta/Method/Accessor/Native/Hash/set.pm view on Meta::CPAN
return unless $self->associated_attribute->should_coerce;
return unless $self->_tc_member_type_can_coerce;
# Is there a simpler way to do this?
return (
'@_ = List::Util::pairmap { $a => $member_coercion->($b) } @_;',
);
};
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '{ %{ (' . $slot_access . ') }, @_ }';
}
sub _new_members { '@_[ @values_idx ]' }
sub _inline_optimized_set_new_value {
my $self = shift;
lib/Moose/Meta/Method/Accessor/Native/Number/abs.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _maximum_arguments { 0 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return 'abs(' . $slot_access . ')';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Number/add.pm view on Meta::CPAN
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _minimum_arguments { 1 }
sub _maximum_arguments { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return $slot_access . ' + $_[0]';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Number/div.pm view on Meta::CPAN
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _minimum_arguments { 1 }
sub _maximum_arguments { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return $slot_access . ' / $_[0]';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Number/mod.pm view on Meta::CPAN
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _minimum_arguments { 1 }
sub _maximum_arguments { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return $slot_access . ' % $_[0]';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Number/mul.pm view on Meta::CPAN
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _minimum_arguments { 1 }
sub _maximum_arguments { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return $slot_access . ' * $_[0]';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/Number/set.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _minimum_arguments { 1 }
sub _maximum_arguments { 1 }
sub _potential_value { '$_[0]' }
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
return $slot_access . ' = $_[0];';
}
no Moose::Role;
lib/Moose/Meta/Method/Accessor/Native/Number/sub.pm view on Meta::CPAN
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _minimum_arguments { 1 }
sub _maximum_arguments { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return $slot_access . ' - $_[0]';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/String/append.pm view on Meta::CPAN
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _minimum_arguments { 1 }
sub _maximum_arguments { 1 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '( ' . $slot_access . ' . $_[0] )';
}
sub _inline_optimized_set_new_value {
my $self = shift;
my ($inv, $new, $slot_access) = @_;
lib/Moose/Meta/Method/Accessor/Native/String/chomp.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _maximum_arguments { 0 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '(do { '
. 'my $val = ' . $slot_access . '; '
. '@return = chomp $val; '
. '$val '
. '})';
}
lib/Moose/Meta/Method/Accessor/Native/String/chop.pm view on Meta::CPAN
use strict;
use warnings;
use Moose::Role;
with 'Moose::Meta::Method::Accessor::Native::Writer';
sub _maximum_arguments { 0 }
sub _potential_value {
my $self = shift;
my ($slot_access) = @_;
return '(do { '
. 'my $val = ' . $slot_access . '; '
. '@return = chop $val; '
. '$val; '
. '})';
}
view all matches for this distributionview release on metacpan - search on metacpan