NAME
Zonemaster::Engine::Translator - translation support for Zonemaster
SYNOPSIS
my $trans = Zonemaster::Engine::Translator->new({ locale => 'sv_SE.UTF-8' });
say $trans->to_string($entry);
A side effect of constructing an object of this class is that the program's underlying locale for message catalogs (a.k.a. LC_MESSAGES) is updated.
It does not make sense to create more than one object of this class because of the globally stateful nature of the locale attribute.
ATTRIBUTES
- locale
-
The locale that should be used to find translation data. If not explicitly provided, defaults to (in order) the contents of the environment variable LANG, LC_ALL, LC_MESSAGES or, if none of them are set, to
en_US.UTF-8
.Updating this attribute also causes an analogous update of the program's underlying LC_MESSAGES.
- data
-
A reference to a hash with translation data. This is unlikely to be useful to end-users.
METHODS
- to_string($entry)
-
Takes a Zonemaster::Engine::Logger::Entry object as its argument and returns a translated string with the timestamp, level, message and arguments in the entry.
- translate_tag
-
Takes a Zonemaster::Engine::Logger::Entry object as its argument and returns a translation of its tag and arguments.
- BUILD
-
Internal method that's only mentioned here to placate Pod::Coverage.