The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Locale::MakePhrase::LanguageRule - rule instance for a given translation.

DESCRIPTION

This is a container for the currently translated phrase. Its main purpose is to validate the translation rule so that Locale::MakePhrase doesn't need to do it.

When implementing custom backing stores, you will need to construct these per translation that can be returned.

API

The following methods are available:

new()

Construct an instance of the language rule. Takes a hash or hashref with the following options:

key

The input phrase used to generate this translation. (The backing store uses it as a search criteria, hence the name 'key'.)

language

The language tag that is associated with this specific translation.

Since Locale::MakePhrase will ask the backing store for all possible translations of a phrase based on the language tags that it resolved during construction, the translation specific language tag is stored with the actual translation.

expression

The rule expression that will be evaluated when program arguments are supplied when trying to translate a phrase.

priority

When figuring out which rule to apply, Locale::MakePhrase::RuleManager will sort the rules so that the highest priority rules get evaluated first.

translation

This the text that will be output; it can contain placeholders for program argument substitution.

$string key()

Returns the phrase used as the key for translation lookup.

$string language()

Returns the language tag for this translated text.

$string expression()

Returns the expression that will be evaluated for this phrase.

$integer priority()

Return the priority of this phrase.

$string translation()

Returns the output phrase that matches the input key, for the given language.

SUB-CLASSING

You shouldn't need to sub-class this module, as it is simply used as a container.