1package Data::Localize::Format::Maketext; 2use Moo; 3 4extends 'Data::Localize::Format'; 5 6sub format { 7 my ($self, $lang, $value, @args) = @_; 8 9 $value =~ s|\[([^\]]+)\]| 10 my @vars = split(/,/, $1); 11 my $method; 12 if ($vars[0] !~ /^_(-?\d+)$/) { 13 $method = shift @vars; 14 } 15 16 ($method) ? 17 $self->$method( $lang, map { (/^_(-?\d+)$/) ? $args[$1 - 1] : $_; } @args ) : 18 @args[ map { (/^_(-?\d+)$/ ? $1 : $_) - 1 } @vars ]; 19 |gex; 20 21 return $value; 22} 23 241; 25 26__END__ 27 28=head1 NAME 29 30Data::Localize::Format::Maketext - Maketext Formatter 31 32=head1 METHODS 33 34=head2 format 35 36=cut 37