=pod

=head1 NAME

Locale::Codes::LangFam - standard codes for language extension identification

=head1 SYNOPSIS

   use Locale::Codes::LangFam;

   $lext = code2langfam('apa');                 # $lext gets 'Apache languages'
   $code = langfam2code('Apache languages');    # $code gets 'apa'

   @codes   = all_langfam_codes();
   @names   = all_langfam_names();

=head1 DESCRIPTION

The C<Locale::Codes::LangFam> module provides access to standard codes
used for identifying language families, such as those as defined in
ISO 639-5.

Most of the routines take an optional additional argument which
specifies the code set to use. If not specified, the default ISO 639-5
language family codes will be used.

=head1 SUPPORTED CODE SETS

There are several different code sets you can use for identifying
language families. A code set may be specified using either a name, or a
constant that is automatically exported by this module.

For example, the two are equivalent:

   $lext = code2langfam('apa','alpha');
   $lext = code2langfam('apa',LOCALE_LANGFAM_ALPHA);

The codesets currently supported are:

=over 4

=item B<alpha>

This is the set of three-letter (lowercase) codes from ISO 639-5
such as 'apa' for Apache languages.

This is the default code set.

=back

=head1 ROUTINES

=over 4

=item B<code2langfam ( CODE [,CODESET] )>

=item B<langfam2code ( NAME [,CODESET] )>

=item B<langfam_code2code ( CODE ,CODESET ,CODESET2 )>

=item B<all_langfam_codes ( [CODESET] )>

=item B<all_langfam_names ( [CODESET] )>

=item B<Locale::Codes::LangFam::rename_langfam  ( CODE ,NEW_NAME [,CODESET] )>

=item B<Locale::Codes::LangFam::add_langfam  ( CODE ,NAME [,CODESET] )>

=item B<Locale::Codes::LangFam::delete_langfam  ( CODE [,CODESET] )>

=item B<Locale::Codes::LangFam::add_langfam_alias  ( NAME ,NEW_NAME )>

=item B<Locale::Codes::LangFam::delete_langfam_alias  ( NAME )>

=item B<Locale::Codes::LangFam::rename_langfam_code  ( CODE ,NEW_CODE [,CODESET] )>

=item B<Locale::Codes::LangFam::add_langfam_code_alias  ( CODE ,NEW_CODE [,CODESET] )>

=item B<Locale::Codes::LangFam::delete_langfam_code_alias  ( CODE [,CODESET] )>

These routines are all documented in the Locale::Codes::API man page.

=back

=head1 SEE ALSO

=over 4

=item B<Locale::Codes>

The Locale-Codes distribution.

=item B<Locale::Codes::API>

The list of functions supported by this module.

=item B<http://www.loc.gov/standards/iso639-5/id.php>

ISO 639-5 .

=back

=head1 AUTHOR

See Locale::Codes for full author history.

Currently maintained by Sullivan Beck (sbeck@cpan.org).

=head1 COPYRIGHT

   Copyright (c) 2011-2012 Sullivan Beck

This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.

=cut
