Provided by: liblog-report-lexicon-perl_1.09-1_all bug

NAME

       Log::Report::Lexicon::Table - generic interface to translation tables

INHERITANCE

        Log::Report::Lexicon::Table is extended by
          Log::Report::Lexicon::MOTcompact
          Log::Report::Lexicon::POT
          Log::Report::Lexicon::POTcompact

SYNOPSIS

         # use one of the extensions, for instance:
         my $pot = Log::Report::Lexicon::POT
            ->read('po/nl.po', charset => 'utf-8')
                or panic;

DESCRIPTION

       This base class defines the generic interface for translation tables.

       Currently, there are three extensions:

       •   Log::Report::Lexicon::POT

           This is a relatively heavy implementation, used to read but also to write PO files.
           It is used by xgettext-perl, for instance, to administer the collection of discovered
           msgid's.

       •   Log::Report::Lexicon::POTcompact

           Light-weighted read-only access to PO-file information.

       •   Log::Report::Lexicon::MOTcompact

           Read-only access to MO-file information.  These binary MO-files are super efficient.

METHODS

   Constructors
       Log::Report::Lexicon::Table->new(%options)

   Attributes
   Managing PO's
       Translation

       $obj->msgid( STRING, [$msgctxt] )
           Lookup the Log::Report::Lexicon::PO with the STRING.  Returns "undef" when not
           defined.

       $obj->msgstr( $msgid, [$count, $msgctxt] )
           Returns the translated string for $msgid.  When not specified, $count is 1.

       Administration

       $obj->add($po)
           Add the information from a $po into this POT.  If the msgid of the $po is already
           known, that is an error.

       $obj->header($field)
           The translation of a blank MSGID is used to store a MIME header, which contains some
           meta-data.  The $field value is looked-up (case-insensitive) and returned.

       $obj->nrPlurals()
           Returns the number of plurals, when not known then '2'.

       $obj->pluralIndex($count)
           Returns the msgstr index used to translate a value of $count.

       $obj->setupPluralAlgorithm()
           This method needs to be called after setting (reading or creating) a new table header,
           to interpret the plural algorithm as specified in the "Plural-Forms" header field.
           [1.09] The header field is not required when not used.

           A full list of plural forms per language can be found at
           http://docs.translatehouse.org/projects/localization-guide/en/latest/l10n/pluralforms.html

       $obj->translations( [$active] )
           Returns a list with all defined Log::Report::Lexicon::PO objects. When the string
           $active is given as parameter, only objects which have references are returned.

DIAGNOSTICS

       Error: only acceptable parameter is 'ACTIVE'

SEE ALSO

       This module is part of Log-Report-Lexicon distribution version 1.09, built on August 28,
       2017. Website: http://perl.overmeer.net/log-report/

LICENSE

       Copyrights 2007-2017 by [Mark Overmeer]. For other contributors see ChangeLog.

       This program is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.  See http://dev.perl.org/licenses/