NAME
CLDR::Number::Format::Decimal - Localized decimal formatter using the Unicode CLDR
VERSION
This document describes CLDR::Number::Format::Decimal v0.19, built with Unicode CLDR v29.
SYNOPSIS
# either
use CLDR::Number::Format::Decimal;
$decf = CLDR::Number::Format::Decimal->new(locale => 'es');
# or
use CLDR::Number;
$cldr = CLDR::Number->new(locale => 'es');
$decf = $cldr->decimal_formatter;
# when locale is 'es' (Spanish)
say $decf->format(1234.5); # '1234,5'
# when locale is 'es-MX' (Mexican Spanish)
say $decf->format(1234.5); # '1,234.5'
# when locale is 'ar' (Arabic)
say $decf->format(1234.5); # '١٬٢٣٤٫٥'
# when locale is 'bn' (Bengali)
say $curf->format(123456); # '১,২৩,৪৫৬'
DEPRECATION
Using the locale
method as a setter is deprecated. In the future the object’s locale will become immutable. Please see issue #38 for details and to submit comments or concerns.
DESCRIPTION
Localized decimal formatter using the Unicode Common Locale Data Repository (CLDR).
Methods
Any argument that Perl can treat as a number is supported, including infinity, negative infinity, and NaN, which are all localized appropriately. All methods return character strings, not encoded byte strings.
- format
-
Accepts a number and returns a formatted decimal, localized for the current locale.
- at_least
-
Accepts a number and returns a formatted decimal for at least the supplied number.
say $decf->at_least(100); # '100+'
- range
-
Accepts two numbers and returns a formatted range of decimals.
say $decf->range(1, 10); # '1–10'
Attributes
The common attributes locale, default_locale, numbering_system, decimal_sign, group_sign, plus_sign, minus_sign, and cldr_version are described under common attributes in CLDR::Number. All attributes described here have defaults that change depending on the current locale. All string attributes are expected to be character strings, not byte strings.
- pattern
-
Examples:
#,##0.###
for root, en, and most locales;#,##,##0.###
for hi, bn, en-IN, and other locales of the Indian subcontinent - minimum_integer_digits
-
Examples:
1
for all locales - minimum_fraction_digits
-
Examples:
0
for all locales - maximum_fraction_digits
-
Examples:
3
for root and almost all locales - primary_grouping_size
-
Examples:
3
for root and almost all localesNot used when value is
0
. - secondary_grouping_size
-
Examples:
0
for root, en, and most locales;2
for hi, bn, en-IN, and other locales of the Indian subcontinentNot used when value is
0
. - minimum_grouping_digits
-
Examples:
1
for root, en, and most locales;2
fores
(excludinges-419
),pt-PT
,pl
, and several others;3
forlv
andmy
- rounding_increment
-
Examples:
0
for all locales0
and1
are treated the same.
SEE ALSO
AUTHOR
Nova Patch <patch@cpan.org>
This project is brought to you by Shutterstock. Additional open source projects from Shutterstock can be found at code.shutterstock.com.
COPYRIGHT AND LICENSE
© 2013–2016 Shutterstock, Inc.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.