Data::Localize::Format::Maketext - Maketext Formatter


Data-Localize documentation Contained in the Data-Localize distribution.

Index


Code Index:

NAME

Top

Data::Localize::Format::Maketext - Maketext Formatter

METHODS

Top

format


Data-Localize documentation Contained in the Data-Localize distribution.

package Data::Localize::Format::Maketext;
use Any::Moose;

extends 'Data::Localize::Format';

no Any::Moose;

sub format {
    my ($self, $lang, $value, @args) = @_;

    $value =~ s|\[([^\]]+)\]|
                my @vars = split(/,/, $1);
                my $method;
                if ($vars[0] !~ /^_(-?\d+)$/) {
                        $method = shift @vars;
                }

                ($method) ?
                        $self->$method( $lang, map { (/^_(-?\d+)$/) ? $args[$1 - 1] : $_; } @args ) :
                        @args[ map { (/^_(-?\d+)$/ ? $1 : $_) - 1 } @vars ];
        |gex;

    return $value;
}

__PACKAGE__->meta->make_immutable();

1;

__END__