summaryrefslogtreecommitdiffstats
path: root/lib/Locale/POFileManager/File.pm
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2010-02-19 15:51:43 -0600
committerJesse Luehrs <doy@tozt.net>2010-02-19 16:09:43 -0600
commitc005d704a8e083d34327475e5abb35ab6d4844c0 (patch)
treedb8c1041cbae33d05446d0d8f3140d8db59b42e6 /lib/Locale/POFileManager/File.pm
parent5c3092f1838b4e4331dadc228aac6147a9bf24e4 (diff)
downloadlocale-pofilemanager-c005d704a8e083d34327475e5abb35ab6d4844c0.tar.gz
locale-pofilemanager-c005d704a8e083d34327475e5abb35ab6d4844c0.zip
stub out docs
Diffstat (limited to 'lib/Locale/POFileManager/File.pm')
-rw-r--r--lib/Locale/POFileManager/File.pm88
1 files changed, 88 insertions, 0 deletions
diff --git a/lib/Locale/POFileManager/File.pm b/lib/Locale/POFileManager/File.pm
index 368025b..e5e8267 100644
--- a/lib/Locale/POFileManager/File.pm
+++ b/lib/Locale/POFileManager/File.pm
@@ -7,6 +7,45 @@ use List::Util qw(first);
use Locale::PO;
use Scalar::Util qw(reftype);
+=head1 NAME
+
+Locale::POFileManager::File - A single .po file
+
+=head1 SYNOPSIS
+
+ use Locale::POFileManager;
+
+ my $manager = Locale::POFileManager->new(
+ base_dir => '/path/to/app/i18n/po',
+ canonical_language => 'en',
+ );
+ my $file = $manager->language_file('de');
+
+ $file->add_entry(
+ msgid => 'Hello',
+ msgstr => 'Guten Tag'
+ );
+ my @entries = $file->entries;
+ my $entry = $file->entry_for('Hello');
+ $file->save;
+
+=head1 DESCRIPTION
+
+This module represents a single translation file, providing methods for
+manipulating the translation entries in it.
+
+=cut
+
+=head1 METHODS
+
+=head2 new
+
+=cut
+
+=head2 file
+
+=cut
+
has file => (
is => 'ro',
isa => File,
@@ -14,11 +53,27 @@ has file => (
required => 1,
);
+=head2 stub_msgstr
+
+=cut
+
has stub_msgstr => (
is => 'ro',
isa => 'Str|CodeRef',
);
+=head2 entries
+
+=cut
+
+=head2 add_entry
+
+=cut
+
+=head2 msgids
+
+=cut
+
has entries => (
traits => [qw(Array)],
isa => 'ArrayRef[Locale::PO]',
@@ -52,18 +107,30 @@ sub add_entry {
}
}
+=head2 entry_for
+
+=cut
+
sub entry_for {
my $self = shift;
my ($msgid) = @_;
return first { $_->msgid eq '"' . $msgid . '"' } $self->entries;
}
+=head2 save
+
+=cut
+
sub save {
my $self = shift;
Locale::PO->save_file_fromarray($self->file->stringify, [$self->entries]);
}
+=head2 language
+
+=cut
+
sub language {
my $self = shift;
my $language = $self->file->basename;
@@ -71,6 +138,10 @@ sub language {
return $language;
}
+=head2 find_missing_from
+
+=cut
+
sub find_missing_from {
my $self = shift;
my ($other) = @_;
@@ -85,6 +156,10 @@ sub find_missing_from {
return @ret;
}
+=head2 add_stubs_from
+
+=cut
+
sub add_stubs_from {
my $self = shift;
my ($other) = @_;
@@ -106,4 +181,17 @@ sub add_stubs_from {
__PACKAGE__->meta->make_immutable;
no Moose;
+=head1 AUTHOR
+
+ Jesse Luehrs <doy at tozt dot net>
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 2010 by Jesse Luehrs.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as perl itself.
+
+=cut
+
1;