MINI
C:
/
xampp
/
perl
/
vendor
/
lib
/
Parse
/
Method
/
Signatures
/
Param
/
Upload File:
files >> C:/xampp/perl/vendor/lib/Parse/Method/Signatures/Param/Named.pm
package Parse::Method::Signatures::Param::Named; use Moose::Role; use MooseX::Types::Moose qw/Str/; use namespace::clean -except => 'meta'; has label => ( is => 'ro', isa => Str, lazy_build => 1, ); sub _label_from_variable_name { my ($self) = @_; # strip sigil return substr($self->variable_name, 1); } sub _build_label { my ($self) = @_; return $self->_label_from_variable_name; } sub _stringify_required { my ($self) = @_; return $self->required ? q{!} : q{}; } around _stringify_variable_name => sub { my $orig = shift; my ($self) = @_; my $ret = q{:}; my ($before, $after) = (q{}) x 2; my $implicit_label = $self->_label_from_variable_name if $self->can('variable_name'); if (!$implicit_label || $self->label ne $implicit_label) { $before = $self->label . q{(}; $after = q{)}; } $ret .= $before . $orig->(@_) . $after; return $ret; }; 1;
Copyright ©2021 || Defacer Indonesia