Mark Overmeer > Log-Report-0.996 > Log::Report::Lexicon::MOTcompact

Download:
Log-Report-0.996.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
View/Report Bugs
Module Version: 0.996   Source   Latest Release: Log-Report-0.998

NAME ^

Log::Report::Lexicon::MOTcompact - use translations from an MO file

INHERITANCE ^

 Log::Report::Lexicon::MOTcompact
   is a Log::Report::Lexicon::Table

SYNOPSIS ^

 # using a MO table efficiently
 my $mot = Log::Report::Lexicon::MOTcompact
             ->read('mo/nl.mo', charset => 'utf-8')
    or die;

 my $header = $pot->msgid('');
 print $mot->msgstr($msgid, 3);

DESCRIPTION ^

This module is translating, based on MO files (binary versions of the PO files, the "Machine Object" format)

Internally, this module tries to be as efficient as possible: high speed and low memory foot-print. You will not be able to sub-class this class cleanly.

See documentation in the base class.

METHODS ^

See documentation in the base class.

Constructors

See documentation in the base class.

Log::Report::Lexicon::MOTcompact->new(OPTIONS)

See "Constructors" in Log::Report::Lexicon::Table

Log::Report::Lexicon::MOTcompact->read(FILENAME, OPTIONS)

Read the MOT table information from FILENAME. The msgctxt (context) is ignored.

 -Option  --Default
  charset   <required>
  take_all  <true>
charset => STRING

The character-set which is used for the file. You must specify this explicitly, while it cannot be trustfully detected automatically.

take_all => BOOLEAN

This will cause the whole translation table to be read at once. If false, a file-handle will be kept open and translations read on demand. That may (but very well may not) save a memory foot-print, especially when the strings are large.

Attributes

See documentation in the base class.

$obj->filename()

Returns the name of the source file for this data.

$obj->index()

Returns a HASH of all defined PO objects, organized by msgid. Please try to avoid using this: use msgid() for lookup.

Managing PO's

See documentation in the base class.

Translation

See documentation in the base class.

$obj->msgid(STRING)

Lookup the translations with the STRING. Returns a SCALAR, when only one translation is known, and an ARRAY when we have plural forms. Returns undef when the translation is not defined.

$obj->msgstr(MSGID, [COUNT])

Returns the translated string for MSGID. When not specified, COUNT is 1 (the singular form).

Administration

See documentation in the base class.

$obj->add(PO)

See "Administration" in Log::Report::Lexicon::Table

$obj->header(FIELD)

See "Administration" in Log::Report::Lexicon::Table

$obj->nrPlurals()

See "Administration" in Log::Report::Lexicon::Table

$obj->pluralIndex(COUNT)

See "Administration" in Log::Report::Lexicon::Table

$obj->setupPluralAlgorithm()

See "Administration" in Log::Report::Lexicon::Table

$obj->translations([ACTIVE])

See "Administration" in Log::Report::Lexicon::Table

DIAGNOSTICS ^

Error: only acceptable parameter is 'ACTIVE'

SEE ALSO ^

This module is part of Log-Report distribution version 0.996, built on September 04, 2013. Website: http://perl.overmeer.net/log-report/

LICENSE ^

Copyrights 2007-2013 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://www.perl.com/perl/misc/Artistic.html

syntax highlighting: