All Classes and Interfaces
Class
Description
A substitution that formats the absolute value of the number.
This implementation of ModifierStore adopts references to Modifiers.
A specialized version of
SeriesMatcher that matches EITHER a prefix OR a suffix.Small helper class that generates matchers for individual tokens for AffixPatternMatcher.
Performs manipulations on affix patterns: the prefix and suffix strings associated with a decimal
format pattern.
AlphabeticIndex supports the creation of a UI index appropriate for a given language.
An index "bucket" with a label string and type.
Type of the label
Immutable, thread-safe version of
AlphabeticIndex.A (name, data) pair, to be sorted by name into one of the index buckets.
AnnualTimeZoneRule is a class used for representing a time zone rule which takes
effect annually.A transliterator that translates multiple input scripts to a single output script.
Returns a series of ranges corresponding to scripts.
Lazily initialize a special Transliterator for handling width characters.
Shape Arabic text on a character basis.
Thrown by ArabicShaping when there is a shaping error.
Core implementation class for DurationFormatter.
Abstract factory object used to create DurationFormatters.
Default implementation of PeriodBuilderFactory.
Core implementation class for PeriodFormatter.
An implementation of PeriodFormatterFactory that provides customization of formatting behavior.
An implementation of PeriodFormatterService that constructs a BasicPeriodFormatterFactory.
BasicTimeZone extends
TimeZone with additional methods to access time
zone transitions and rules. Options used by
BasicTimeZone.getOffsetFromLocal(long, LocalOption, LocalOption, int[]) to specify how to interpret an input time when it does not exist, or when it is
ambiguous, around a time zone transition.Bidi algorithm for ICU
Overrides default Bidi class values with custom ones.
A BidiRun represents a sequence of characters at the same embedding level.
Bidi Layout Transformation Engine.
BidiTransform.Mirroring indicates whether or not characters with the "mirrored"
property in RTL runs should be replaced with their mirror-image counterparts.BidiTransform.Order indicates the order of text.The
BigDecimal class implements immutable arbitrary-precision decimal numbers.Helper class for frozen UnicodeSets, implements contains() and span() optimized for BMP code
points.
Binary Ordered Compression Scheme for Unicode
An iterator of segmentation boundaries that can operate in either the forwards or reverse
direction.
.
Inserts the specified characters at word breaks.
BuddhistCalendar is a subclass of GregorianCalendar that numbers years
since the birth of the Buddha.A simple utility class to wrap a byte array.
Light-weight, non-const reader class for a BytesTrie.
Return value type for the Iterator.
Iterator for all of the (byte sequence, value) pairs in a BytesTrie.
Return values for BytesTrie.next(), CharsTrie.next() and similar methods.
BytesTrie state object, for saving a trie's current state and resetting the trie back to this
state later.
Builder class for BytesTrie.
Base class for cache implementations.
Value type for cache items: Holds a value either via a direct reference or via a
Reference, depending on the current "strength" when getInstance() was called."Strength" of holding a value in CacheValue instances.
.
Deprecated.
This API is ICU internal only.
Simple, immutable struct-like class for access to the CLDR week data.
CalendarAstronomer is a class that can perform the calculations to determine the
positions of the sun and moon, the time of sunrise and sunset, and other astronomy-related data.Represents the position of an object in the sky relative to the ecliptic, the plane of the
earth's orbit around the Sun.
Represents the position of an object in the sky relative to the plane of the earth's equator.
Calendar utilities.
Calendar type enum, moved from com.ibm.icu.util.Calendar.
This class allows one to iterate through all the strings that are canonically equivalent to a
given string.
A transliterator that performs locale-sensitive toLower() case mapping.
A string used as a key in java.util.Hashtable and other collections.
Low-level case mapping options and methods.
Case folding options and methods.
Lowercasing options and methods.
Titlecasing options and methods.
Uppercasing options and methods.
Implementation of UCaseProps.ContextIterator, iterates over a String.
Base class for EthiopicCalendar and CopticCalendar.
This class is a wrapper around CharacterIterator and implements the UCharacterIterator protocol
For a character name
name, a query string query matches name under
UAX44-LM2 if and only if the following returns true:Sets and maps for Unicode properties.
Properties functionality above class UCharacterProperty but below class CharacterProperties and
class UnicodeSet.
Deprecated.
This API is ICU internal only.
Callback API for CharsetICU API
Decoder Callback interface
Encoder Callback interface
The purpose of this class is to set isCESU8 to true in the super class, and to allow the Charset
framework to open the variant UTF-8 converter without extra setup work.
An abstract class that provides framework methods of decoding operations for concrete subclasses.
CharsetDetector provides a facility for detecting the charset or encoding of
character data in an unknown format.An abstract class that provides framework methods of decoding operations for concrete subclasses.
A subclass of java.nio.Charset for providing implementation of ICU's charset converters.
This class represents a charset that has been identified by a CharsetDetector as a possible
encoding for a set of input data.
MBCS data header.
Fallbacks to Unicode are stored outside the normal state table and code point structures in a
vector of items of this type.
This is the MBCS part of the UConverterTable union (a runtime data structure).
A concrete subclass of CharsetProvider for loading and providing charset converters in ICU.
Holds the list of available ICU Charsets, loaded once.
class CharsetRecog_2022 part of the ICU charset detection implementation.
CharsetRecognizer implementation for Asian - double or multi-byte - charsets.
Big5 charset recognizer.
EUC charset recognizers.
The charset recognize for EUC-JP.
The charset recognize for EUC-KR.
GB-18030 recognizer.
Shift-JIS charset recognizer.
This class recognizes single-byte encodings.
This class matches UTF-16 and UTF-32, both big- and little-endian.
Charset recognizer for UTF-8
Abstract class for recognizing a single charset.
Charset Selector
The purpose of this class is to set isBigEndian to true and isEndianSpecified to true in the
super class, and to allow the Charset framework to open the variant UTF-16 converter without
extra setup work.
The purpose of this class is to set isBigEndian to false and isEndianSpecified to true in the
super class, and to allow the Charset framework to open the variant UTF-16 converter without
extra setup work.
The purpose of this class is to set isBigEndian to true and isEndianSpecified to true in the
super class, and to allow the Charset framework to open the variant UTF-32 converter without
extra setup work.
The purpose of this class is to set isBigEndian to false and isEndianSpecified to true in the
super class, and to allow the Charset framework to open the variant UTF-32 converter without
extra setup work.
Light-weight, non-const reader class for a CharsTrie.
Return value type for the Iterator.
Iterator for all of the (string, value) pairs in a CharsTrie.
CharsTrie state object, for saving a trie's current state and resetting the trie back to this
state later.
Builder class for CharsTrie.
Trie implementation which stores data in char, 16 bits.
ChineseCalendar is a concrete subclass of Calendar that implements a
traditional Chinese calendar.Deprecated.
ICU 50 Use SimpleDateFormat instead.
Deprecated.
ICU 50
Deprecated.
ICU 50
This utility class is used for resolving a right ClassLoader from a given class.
Abstract map from Unicode code points (U+0000..U+10FFFF) to integer values.
Range iteration result data.
Selectors for how getRange() should report value ranges overlapping with surrogates.
Callback function interface: Modifies a map value.
Matches a single code point, performing no other logic.
Immutable Unicode code point trie.
A CodePointTrie with
CodePointTrie.Type.FAST.A CodePointTrie with
CodePointTrie.Type.FAST and CodePointTrie.ValueWidth.BITS_16.A CodePointTrie with
CodePointTrie.Type.FAST and CodePointTrie.ValueWidth.BITS_32.A CodePointTrie with
CodePointTrie.Type.FAST and CodePointTrie.ValueWidth.BITS_8.A CodePointTrie with
CodePointTrie.Type.SMALL.A CodePointTrie with
CodePointTrie.Type.SMALL and CodePointTrie.ValueWidth.BITS_16.A CodePointTrie with
CodePointTrie.Type.SMALL and CodePointTrie.ValueWidth.BITS_32.A CodePointTrie with
CodePointTrie.Type.SMALL and CodePointTrie.ValueWidth.BITS_8.Selectors for the type of a CodePointTrie.
Selectors for the number of bits in a CodePointTrie data value.
Collation v2 basic definitions and static helper functions.
Collation data container.
Low-level CollationData builder.
Collation element modifier.
Build-time context and CE32 for a code point.
Build-time collation element and character iterator.
Collation binary data reader.
CollationElementIterator is an iterator created by a RuleBasedCollator to walk
through a string.Data and functions for the FCD check fast path.
Collation element iterator and abstract character iterator.
A
CollationKey represents a String under the rules of a specific
Collator object.Options that used in the API CollationKey.getBound() for getting a CollationKey based on the
bound mode requested.
Convenience string denoting the Collation data tree
Simpler/faster methods for ASCII than ones based on Unicode data.
Collation root provider.
Container and access methods for collation elements and weights that occur in the root collator.
Special reset positions.
Collation settings/options/attributes.
Collation tailoring data invalid input: '&' settings.
Allocates n collation element weights between two exclusive limits.
.
Simpler/faster methods for ASCII than ones based on Unicode data.
A factory used with registerFactory to register multiple collators and provide display names
for them.
Reordering codes for non-script groups that can be reordered under collation.
A wrapper around java.util.Collection that implements java.util.Set.
Matches a currency, either a custom currency or one from the data bundle.
Deprecated.
This API is ICU internal only.
Deprecated.
This API is ICU internal only.
Datatype for compact notation data.
Formats numbers in compact (abbreviated) notation, like "1.2K" instead of "1200".
Style parameter for CompactDecimalFormat.
A class that defines the scientific notation style to be used when formatting numbers in
NumberFormatter.
Converts from single or compound unit to single, compound or mixed units.
Deprecated.
ICU 2.2
A transliterator that is composed of two or more other transliterator objects linked together.
The canonical implementation of
Modifier, containing a prefix and suffix string.An implementation of
Modifier that allows for multiple types of fields in the same
modifier.Represents a span of a string containing a given field.
Represents the type of constraint for ConstrainedFieldPosition.
Implement the Coptic calendar system.
Implement the Java CharacterIterator interface on a CharSequence.
A class encapsulating a currency, as defined by ISO 4217.
Deprecated.
This API is ICU internal only.
Currency Usage used for Decimal Format
An amount of currency, consisting of a Number and a Currency.
Returns currency names localized for a locale.
Temporary internal concrete subclass of MeasureFormat implementing parsing and formatting of
CurrencyAmount objects.
Provides information about currencies that is not specific to a locale.
Represents the raw information about fraction digits and rounding increment.
A filter used to select which currency info is returned.
Represents a complete currency info record listing the region, currency, from and to dates,
and priority.
This class represents the information needed by DecimalFormat to format currency plural, such as
"3.00 US dollars" or "1.00 US dollar".
A class that defines a rounding strategy parameterized by a currency to be used when formatting
numbers in NumberFormatter.
This is a package-access implementation of registration for currency.
Identical to
ConstantMultiFieldModifier, but supports currency spacing.Deprecated.
This API is ICU internal only.
DataRecord contains the data used by PeriodFormatterData.
.
boolean attributes
The instances of this inner class are used as attribute keys and values in
AttributedCharacterIterator that DateFormat.formatToCharacterIterator() method returns.
Hour Cycle
.
Sink to enumerate the calendar data
Enum which specifies the type of alias received, or no alias
Constants for capitalization context usage types related to date formatting.
Abstract formatter for dates.
This class represents date interval.
DateIntervalFormat is a class for formatting and parsing date intervals in a language-independent
manner.
Used to save the information for a skeleton's best match skeleton.
Used to output information during formatting.
An immutable class containing the result of a date interval formatting operation.
Class for span fields in FormattedDateInterval.
DateIntervalInfo is a public class for encapsulating localizable date time interval patterns.
Sink for enumerating all of the date interval skeletons.
PatternInfo class saves the first and second part of interval pattern, and whether the
interval pattern is earlier date first.
Note: The Holiday framework is a technology preview.
Creates a
Function doing formatting of date / time, similar to {exp, date}
and {exp, time} in MessageFormat.This class provides flexible generation of date format patterns, like "yy-MM-dd".
Field display name width constants for getFieldDisplayName
Deprecated.
This API is ICU internal only.
PatternInfo supplies output parameters for addPattern(...).
A compact storage mechanism for skeleton field strings.
Deprecated.
This API is ICU internal only.
DateTimeRule is a class representing a time in a year by a rule specified by month,
day of month, day of week and time in the day..
Deprecated.
This API is ICU internal only.
Controls the set of rules for parsing a string from the old DecimalFormat API.
.
Sink for enumerating all of the decimal format symbols (more specifically, anything under the
"NumberElements.symbols" tree).
An interface representing a number to be processed by the decimal formatting pipeline.
Represents numbers and digit display properties using Binary Coded Decimal (BCD).
A DecimalQuantity with internal storage as a 64-bit BCD, with fallback to a byte array for
numbers that don't fit into the standard BCD.
A deque-like structure holding raw ints.
The DictionaryMatcher interface is used to allow arbitrary "types" of back-end data structures to
be used with the break iteration code.
Encodes info about the direction of the message.
Display context settings.
Type values for DisplayContext
Represents all the display options that are supported by CLDR such as grammatical case, noun
class, ...
Responsible for building
DisplayOptions.Represents all the capitalization options.
Represents all the display lengths.
Represents all the grammatical cases that are supported by CLDR.
Represents all the name styles.
Represents all the grammatical noun classes that are supported by CLDR.
Standard CLDR plural category constants.
Represents all the substitute handlings.
DontCareFieldPosition is a subclass of FieldPosition that indicates that the caller is not
interested in the start and end position of any field.
Deprecated.
ICU 56 Use MeasureFormat or RelativeDateTimeFormatter instead.
Formatter for durations in milliseconds.
Factory used to construct DurationFormatters.
Note: The Holiday framework is a technology preview.
Records lengths of string edits but not replacement text.
Access to the list of edits.
EraRules represents calendar era rules specified in supplementalData/calendarData.A transliterator that converts Unicode characters to an escape form.
Implement the Ethiopic calendar system.
Incrementally checks the input text for FCD and normalizes where necessary.
Incrementally checks the input text for FCD and normalizes where necessary.
Parent class for classes that implement field-modifier behavior.
A field modifier that returns the field value converted to ALL CAPS.
A field modifier that returns the field value with the first letter of each word capitalized.
A field modifier that returns the field value converted into one or more initials.
The BreakIteratorFilter is used to modify the behavior of a BreakIterator by constructing a new
BreakIterator which suppresses certain segment boundaries.
Normalization filtered by a UnicodeSet.
Deprecated.
This API is for ICU internal use only.
The result of a number formatting operation.
The result of a number range formatting operation.
Deprecated.
This API is for ICU internal use only.
A StringBuilder optimized for formatting.
An abstract formatted value: a string with associated field attributes.
Implementation of FormattedValue based on FieldPositionIterator.
Helper class to keep track of fields with values in Java
Implementation of FormattedValue based on FormattedStringBuilder.
Placeholder field used for calculating spans.
A substitution that formats the fractional part of a number.
A class that defines a rounding strategy based on a number of fraction places and optionally
significant digits to be used when formatting numbers in NumberFormatter.
Provides a flexible mechanism for controlling access, without requiring that a class be
immutable.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
A replacer that calls a transliterator to generate its output text.
Deprecated.
This API is ICU internal only.
Deprecated.
This API is ICU internal only.
Deprecated.
This API is ICU internal only.
This convenience class provides a mechanism for bundling together different globalization
preferences.
A utility class providing proleptic Gregorian calendar functions used by time zone and calendar
code.
.
A full options object for grouping sizes.
HebrewCalendar is a subclass of Calendar that that implements the
traditional Hebrew calendar.Note: The Holiday framework is a technology preview.
Note: The Holiday framework is a technology preview.
Special interface for data authentication
Reads the ICU .dat package file format.
Unchecked version of
CloneNotSupportedException.ICUConfig is a class used for accessing ICU4J runtime configuration.
This class performs data loading for currencies and keeps data in lightweight cache.
/////////////////////////////////////////
END DATA FRONTEND -- START DATA SINK ///
/////////////////////////////////////////
ICU's currency meta info data.
Provides access to ICU data files as InputStreams.
This taglet should be used in the first line of the class description of classes that are
enhancements of JDK classes that similar names and APIs.
Base class for unchecked, ICU-specific exceptions.
The input is impractically long for an operation.
A LocaleKeyFactory that creates a service based on the ICU locale data.
A subclass of Key that implements a locale fallback mechanism.
A subclass of Factory that uses LocaleKeys.
A LocaleKeyFactory that just returns a single object for a kind/locale.
This taglet should be used in the first line of any icu-specific members in a class that is an
enhancement of a JDK class (see
ICUEnhancedTaglet).This taglet should be used in class or member documentation, after the first line, where the
behavior of the ICU method or class has notable differences from its JDK counterpart.
Abstract implementation of a notification facility.
The notification thread.
Holds the prefix, and lazily creates the Locale[] list or the locale name Set as needed.
Loader for bundle instances, for caching.
Fields for a whole bundle, rather than any specific resource in the bundle.
This class reads the *.res resource bundle format.
Cache of some of one resource bundle's resources.
Static utility functions for probing resource tables, used by ULocale and LocaleDisplayNames.
A Reader/Writer lock originally written for ICU service implementation.
Internal class used to gather statistics on the RWLock.
A Service provides access to service objects that implement a particular service, e.g.
Factories generate the service objects maintained by the service.
Keys are used to communicate with factories to generate an instance of the service.
ServiceListener is the listener that ICUService provides by default.
A default implementation of factory.
Deprecated.
ICU 79
Abstract base class for IDNA processing.
IDNA error bit set values.
Output container for IDNA processing errors.
IDNA2003 implementation code, moved out of com.ibm.icu.text.IDNA.java while extending that class
to support IDNA2008/UTS #46 as well.
Thrown by methods in
ULocale and ULocale.Builder to indicate that an argument is
not a well-formed BCP 47 tag.IndianCalendar is a subclass of GregorianCalendar that numbers years
since the birth of the Buddha.InitialTimeZoneRule represents a time zone rule representing a time zone effective
from the beginning and has no actual start times.A class that defines the strategy for padding and truncating integers before the decimal
separator.
A substitution that formats the number's integral part.
Trie implementation which stores data in int, 32 bits.
Builder class to manipulate and generate a trie.
IslamicCalendar is a subclass of Calendar that that implements the
Islamic civil and religious calendars.enumeration of available calendar calculation types
Algorithm which implement the rules for CalculationType.ISLAMIC_CIVIL.
Algorithm which implement the rules for CalculationType.ISLAMIC.
Algorithm which implement the rules for CalculationType.ISLAMIC_TBLA.
Algorithm which implement the rules for CalculationType.ISLAMIC_UMALQURA.
TODO: Move to com.ibm.icu.dev.somewhere.
Subinterface of Iterable whose iterator() returns a
PrimitiveIterator.OfInt.UCharIterator-based collation element and character iterator.
JapaneseCalendar is a subclass of GregorianCalendar that numbers years
and eras based on the reigns of the Japanese emperors.Deprecated.
This API is ICU internal only.
JavaTimeZone inherits com.ibm.icu.util.TimeZone and wraps java.util.TimeZone.
The LanguageBreakEngine interface is to be used to implement any language-specific logic for
break iteration.
Defines the LinkTermination property
These will be replaced once we have a real property value in ICU.
These will be replaced once we have a real property value in ICU.
Parallels the spec parts table
Based on https://url.spec.whatwg.org/#percent-encoded-bytes.
Utility class for assisting with detecting links (URLs or emails) in text, and formatting them
for display, implementing the algorithms in https://www.unicode.org/reports/tr58/ to handle
Unicode characters properly.
Enum for determining whether any percent-escaping is minimal or maximal, for use with
LinkUtilities.escapePathQueryFragment(String,Extent).Immutable class for formatting a list, using data from CLDR (or supplied separately).
Field selectors for format fields defined by ListFormatter.
An immutable class containing the result of a list formatting operation.
Class for span fields in FormattedList.
Type of meaning expressed by the list.
Verbosity level of the list patterns.
A class for accessing miscellaneous data in the locale bundles
Enumeration for representing the measurement systems.
A class that represents the size of letter head used in the country
Returns display names of ULocales and components of ULocales.
Enum used in
LocaleDisplayNames.getInstance(ULocale, DialectHandling).Minimum implementation of LocaleDisplayNames
Struct-like class used to return information for constructing a UI list, each corresponding
to a locale.
Single-entry cache using an immutable snapshot for lock-free reads.
Capitalization context usage types for locale display names
Offline-built data for LocaleMatcher.
Utility class to parse and normalize locale ids (including POSIX style)
Utilities for mapping between old and new language, country, and other locale ID related names.
Immutable class that picks the best match between a user's desired locales and an application's
supported locales.
LocaleMatcher Builder.
Builder option for whether all desired locales are treated equally or earlier ones are
preferred.
Builder option for whether to include or ignore one-way (fallback) match data.
Builder option for whether the language subtag or the script subtag is most important.
Data for the best-matching pair of a desired and a supported locale.
Provides an immutable list of languages/locales in priority order.
Class used for building LocalePriorityLists.
A class to hold utility functions missing from java.util.Locale.
A NumberFormatter that has a locale associated with it; this means .format() methods are
available.
A wrapper around LocalizedNumberFormatter implementing the Format interface, enabling improved
compatibility with other APIs.
A NumberRangeFormatter that has a locale associated with it; this means .formatRange() methods
are available.
Performs segmentation according to the rules defined for the locale.
Builder for
LocalizedSegmenterThe type of segmentation to be performed.
Takes care of formatting currency and measurement unit names, as well as populating the gender of
measure units.
Loads and applies deriveComponent rules from CLDR's grammaticalFeatures.xml.
A MicroPropsGenerator that multiplexes between different LongNameHandlers, depending on the
outputUnit.
LongNameMultiplexer calls the parent MicroPropsGenerator itself, receiving the MicroProps
instance in use for this formatting pipeline.
A transliterator that performs locale-sensitive toLower() case mapping.
CachedDecoder uses string pools to reduce memory needed for creating strings representing
lang, region and script.
The
MathContext immutable class encapsulates the settings understood by the operator
methods of the BigDecimal class (and potentially other classes).An amount of a specified unit, consisting of a Number and a Unit.
A formatter for Measure objects.
Formatting width enum.
A unit such as length, mass, volume, currency, etc.
Enumeration for unit complexity.
Sink for enumerating the currency numeric codes.
Deprecated.
This API is ICU internal only.
Enumeration for SI and binary prefixes, e.g.
Sink for enumerating the available measure units.
Contains a single unit or a constant.
Token states definitions.
.
Convenience wrapper for Appendable, tracks the result string length.
Defines constants that are used as attribute keys in the
AttributedCharacterIterator
returned from MessageFormat.formatToCharacterIterator.Mutable input/output values for the PluralSelectorProvider.
This provider helps defer instantiation of a PluralRules object until we actually need to
select a keyword.
Overview of
MessageFormatterDetermines how the mixtures of bidirectional text are converted to string.
A
Builder used to build instances of MessageFormatter.Determines how the formatting errors will be handled at runtime.
Parses and represents ICU MessageFormat patterns.
Mode for when an apostrophe starts quoted literal text for MessageFormat output.
Argument type constants.
A message pattern "part", representing a pattern parsing event.
Part type constants.
Utilities for working with a MessagePattern.
A piece of MessageNode contents representing a message argument and its details.
A Node representing details of the argument style of a complex argument.
A piece of MessageNode contents.
The type of a piece of MessageNode contents.
A Node representing a parsed MessageFormat pattern string.
Common base class for all elements in a tree of nodes returned by
MessagePatternUtil.buildMessageNode(MessagePattern).Literal text, a piece of MessageNode contents.
A Node representing a nested message (nested inside an argument) with its selection
criterion.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Takes an
MFDataModel and formats it to a String (and later on we will also
implement formatting to a FormattedMessage).Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
Deprecated.
This API is for technology preview only.
MicroProps is the first MicroPropsGenerator that should be should be called, producing an
initialized MicroProps instance that will be passed on and modified throughout the rest of the
chain of MicroPropsGenerator instances.
This interface is used when all number formatting settings, including the locale, are known,
except for the quantity itself.
Similar to LongNameHandler, but only for MIXED units.
A Modifier is an object that can be passed through the formatting pipeline until it is finally
applied to the string builder.
A fill-in for getParameters().
This is *not* a modifier; rather, it is an object that can return modifiers based on given
parameters.
A substitution that divides the number being formatted by the its rule's divisor and formats the
remainder.
Wraps a
Scale for use in the number formatting pipeline.Wraps a
Scale for use in the number parsing pipeline.An interface used by compact notation and scientific notation to choose a multiplier while
rounding.
A substitution that divides the number being formatted by the rule's divisor and formats the
quotient.
Mutable Unicode code point trie.
This class is a
Modifier that wraps a decimal format pattern.A transliterator that performs name to character mapping.
A class representing a single rule in a RuleBasedNumberFormat.
A collection of rules used by a RuleBasedNumberFormat to format and parse numbers.
An abstract class defining protocol for substitutions.
Old Unicode normalization API.
An Appendable that writes into a char array with a capacity that may be less than
array.length.
Deprecated.
ICU 56 Use
Normalizer2 instead.Result values for quickCheck().
Unicode normalization functionality for standard Unicode normalization or for using custom
mapping tables.
Constants for normalization modes.
Low-level implementation of the Unicode Normalization Algorithm.
Writable buffer that takes care of canonical ordering.
A class that defines the notation style to be used when formatting numbers in NumberFormatter.
Dimensionless unit for percent and permille.
A transliterator that leaves text unchanged.
.
The instances of this inner class are used as attribute keys and values in
AttributedCharacterIterator that NumberFormat.formatToCharacterIterator() method returns.
A NumberFormatFactory is used to register new number formats.
A NumberFormatFactory that supports a single locale.
All-in-one formatter for localized numbers, currencies, and units.
An enum declaring how to render the decimal separator.
An enum declaring the strategy for when and how to display grouping separators (i.e., the
separator, often a comma or period, after every 2-3 powers of ten).
An enum declaring how to resolve conflicts between maximum fraction digits and maximum
significant digits.
An enum declaring how to denote positive and negative numbers.
An enum declaring how to render trailing zeros.
An enum declaring how to render units, including currencies.
This is the "brain" of the number formatting pipeline.
An abstract base class for specifying settings related to number formatting.
Creates a
Function doing numeric formatting, similar to {exp, number} in
MessageFormat, and plural selection, similar to {exp, plural}
and to {exp, selectordinal} in MessageFormat.NumberingSystem is the base class for all number systems.The core interface implemented by all matchers used for number parsing.
Matchers can implement the Flexible interface to indicate that they are optional and can be
run repeatedly.
Primary number parsing implementation class.
This class, as well as NumberFormatterImpl, could go into the impl package, but they depend on
too many package-private members of the public APIs.
The main entrypoint to the formatting of ranges of numbers, including currencies and other units
of measurement.
Defines how to merge fields that are identical across the range sign.
Defines the behavior when the two numbers in the range are identical after rounding.
Used in the result class FormattedNumberRange to indicate to the user whether the numbers
formatted in the range were equal or not, and whether or not the identity fallback was
applied.
Class for span fields in FormattedNumberRange.
Business logic behind NumberRangeFormatter.
An abstract base class for specifying settings related to number formatting.
Utility class for methods for processing stems and options that cannot be interpreted
literally.
Utility class for methods that convert from enums to stem strings.
Utility class for methods for generating a token corresponding to each macro-prop.
While parsing a skeleton, this enum records what type of option we expect to find next.
All possible stem literals have an entry in the StemEnum.
Utility class for methods that convert from StemEnum to corresponding objects or enums.
A substitution that multiplies the number being formatted (which is between 0 and 1) by the base
value of the rule that owns it and formats the result.
A time zone based on the Olson tz database.
Simple struct-like class for output parameters.
Deprecated.
This API is ICU internal only.
A pair of objects: first and second.
Struct-like class to hold the results of a parsing routine.
A collection of utility functions used by the number parsing package.
Implements the immutable Unicode properties Pattern_Syntax and Pattern_White_Space.
Implements a recursive descent parser for decimal format patterns.
Contains raw information about the parsed decimal format pattern string.
An internal class used for tracking the cursor during parsing of a pattern string.
Assorted utilities relating to decimal formatting pattern strings.
A simple parsing class for patterns and rules.
Represents an approximate duration in multiple TimeUnits.
Constructs a Period given a base time and a duration in milliseconds.
Formats a Period, such as '2 hours 23 minutes'.
PeriodFormatterData provides locale-specific data used to format relative dates and times, and
convenience api to access it.
Abstract service for PeriodFormatterData, which defines the localization data used by period
formatters.
Abstract factory interface used to create PeriodFormatters.
Provider of Factory instances for building PeriodBuilders, PeriodFormatters, and
DurationFormatters.
Deprecated.
This API is ICU internal only.
An object used to provide name data to the PersonNameFormatter for formatting.
Identifiers for the name field modifiers supported by the PersonName and PersonNameFormatter
objects.
Identifiers for the name fields supported by the PersonName object.
An enum to specify the preferred field order for the name.
A class for formatting names of people.
A utility class that can be used to construct a PersonNameFormatter.
An enum indicating the desired display order for a formatted name.
Specifies the intended formality of the formatted name.
Specifies the desired length of the formatted name.
Specifies the intended usage of the formatted name.
Actual implementation class for PersonNameFormatter.
A single name formatting pattern, corresponding to a single namePattern element in CLDR.
A single element in a NamePattern.
Internal class used when formatting a mononym (a PersonName object that only has a given-name
field).
Literal text from a name pattern.
An actual name field in a NamePattern (i.e., the stuff represented in the pattern by text in
braces).
Very-very rough implementation of FormattedValue, packaging a string.
PluralFormat supports the creation of internationalized messages with plural
inflection.Interface for selecting PluralFormat keywords for numbers.
Defines rules for mapping non-negative numeric values onto a small set of keywords.
Deprecated.
This API is ICU internal only.
Deprecated.
This API is ICU internal only.
Deprecated.
This API is ICU internal only.
Deprecated.
This API is ICU internal only.
Deprecated.
This API is ICU internal only.
Status of the keyword for the rules, given a set of explicit values.
Deprecated.
This API is ICU internal only.
Type of plurals and PluralRules.
Deprecated.
This API is ICU internal only.
Loader for plural rules data.
A class that defines the rounding precision to be used when formatting numbers in
NumberFormatter.
Deprecated.
This API is ICU internal only.
Used for increments with 5 as the only digit (nickel rounding).
Used for increments with 1 as the only digit.
Used for strange increments like 3.14.
A small, mutable internal helper class for keeping track of offsets on range patterns.
ICU 59 called the class DecimalFormatProperties as just Properties.
Unicode Properties Vectors associated with code point ranges.
Ported code from ICU punycode.c
QuantityFormatter represents an unknown quantity of something and formats a known quantity in
terms of that something.
Note: The Holiday framework is a technology preview.
Interface for enabling iteration over sets of <int index, int value>, where index is the
sorted integer index in ascending order and value, its associated integer value.
Return result wrapper for com.ibm.icu.util.RangeValueIterator.
Simple class wrapper to store the internal byte representation of a CollationKey.
Internal class used for Rule Based Break Iterators.
Data Header.
A RBBI State Transition table, the form of the data used at run time in Java.
This class represents a node in the parse tree created by the RBBI Rule compiler.
Generated Java File.
This class is part of the Rule Based Break Iterator rule compiler.
An XSymbolTable that exposes the variables of an underlying RBBISymbolTable and the
properties of an underlying XSymbolTable.
This class is part of the RBBI rule compiler.
A post-processor for Chinese text.
Deprecated.
ICU 54
Deprecated.
ICU 54
Post processor for RBNF output.
Deprecated.
This API is ICU internal only.
Region is the class representing a Unicode Region Code, also known as a Unicode
Region Subtag, which is defined based upon the BCP 47 standard.RegionType is an enumeration defining the different types of regions.
A Relation is a set of mappings from keys to values.
Formats simple relative dates.
Represents an absolute unit.
Represents a direction for an absolute unit e.g "Next Tuesday" or "Last Tuesday"
Field constants used when accessing field information for relative datetime strings in
FormattedValue.
Represents the result of a formatting operation of a relative datetime.
Represents the unit for formatting a relative date.
Represents the unit for formatting a relative date.
Sink for enumerating all of the relative data time formatter names.
The formatting style
A transliterator that removes characters.
Replaceable is an interface representing a string of characters that supports the
replacement of a range of itself with a new string of characters.Implementation of UCaseProps.ContextIterator, iterates over a Replaceable.
ReplaceableString is an adapter class that implements the Replaceable
API around an ordinary StringBuffer.DLF docs must define behavior when Replaceable is mutated underneath the iterator.
A PeriodFormatterDataService that serves PeriodFormatterData objects based on data files stored
as resources in this directory.
just a wrapper for Java ListResourceBundles and
Loader for bundle instances, for caching.
Rule Based Break Iterator This is a port of the C++ class RuleBasedBreakIterator from ICU4C.
RuleBasedCollator is a concrete subclass of Collator.
Abstract iterator for identical-level string comparisons.
The RuleBasedNumberFormat class formats numbers according to a set of rules.
Performs segmentation according to the provided rule string.
Builder for
RuleBasedSegmenterRuleBasedTimeZone is a concrete subclass of TimeZone that allows users
to define custom historic time transition rules.Deprecated.
This API is ICU internal only.
An iterator that returns 32-bit code points.
For use with
RuleCharacterIterator.getPos(Position) invalid input: '&' RuleCharacterIterator.setPos(Position).A substitution that passes the value passed to it through unchanged.
A class that defines a quantity by which a number should be multiplied when formatting.
A class that defines the scientific notation style to be used when formatting numbers in
NumberFormatter.
A formatter that formats numbers in user-friendly scientific notation.
A style type for ScientificNumberFormatter.
An interface defining constants for the Standard Compression Scheme for Unicode (SCSU) as
outlined in Unicode Technical Report #6.
SearchIterator is an abstract base class that provides methods to search for a pattern
within a text string.Option to control how collation elements are compared.
A simple struct to represent an element of the segmentation result.
An interface that defines APIs for segmentation in terms of segments and boundaries, and enforces
immutable stateless iteration over the segmentation result yielded from an input
CharSequence.This
Iterable exists to enable the creation of a Spliterator that in turn enables
the creation of a lazy Stream.An interface that represents the segmentation results, including the APIs for iteration therein,
that are yielded from passing an input
CharSequence to a Segmenter.SelectFormat supports the creation of internationalized messages by selecting
phrases based on keywords.Composes a number of matchers, running one after another.
Base class for shared, reference-counted, auto-deleted objects.
A class wrapping SharedObject.
.
Old ContextValue enum, preserved only to avoid deserialization errs from ICU 49.1.
Immutable snapshot of (locale, pattern) for the default pattern cache.
Note: The Holiday framework is a technology preview.
Formats simple patterns like "{1} was born in {0}".
Formats simple patterns like "{1} was born in {0}".
Internal iterator interface for maximum efficiency.
Note: The Holiday framework is a technology preview.
The second primary implementation of
Modifier, this one consuming a SimpleFormatter pattern.A class that defines the simple notation style to be used when formatting numbers in
NumberFormatter.
A concrete implementation of PersonNameFormatter.PersonName that simply stores the field values
in a Map.
A utility class for constructing a SimplePersonName.
.
A class representing a single unit (optional SI or binary prefix, and dimensionality).
Exception used for illegal number skeleton strings.
Generic, thread-safe cache implementation, usually storing cached instances in
References via CacheValues.Computationally efficient determination of the relationship between two SortedSets.
Simple internal utility class for helping with getSource/TargetSet
This class, based on Unicode Technical Report #36
and Unicode Technical Standard #39, has two main
functions:
Checking whether two strings are visually confusable with each other, such as
"desparejado" and "ԁеѕрагејаԁо".
SpoofChecker Builder.
A struct-like class to hold the results of a Spoof Check operation.
Constants from UTS 39 for use in setRestrictionLevel.
Standard CLDR plural form/category constants.
Holds the language-to-set map, loaded once from ICU resource bundles.
This class statically initializes UnicodeSets, originally built for number parsing.
Deprecated.
ICU 2.4.
An object that matches a fixed input string, implementing the UnicodeMatcher API.
StringPrep API implements the StingPrep framework as described by RFC 3454.
Exception that signals an error has occurred while parsing the input to StringPrep or IDNA.
A replacer that produces static text as its output.
StringSearch is a SearchIterator that provides language-sensitive text searching
based on the comparison rules defined in a RuleBasedCollator object.CEBuffer A circular buffer of CEs from the text being searched
Java port of ICU4C CEI (usearch.cpp)
Java port of ICU4C UCollationPCE (usrchimp.h)
Processed collation element buffer stuff ported from ICU4C ucoleitr.cpp
Raw collation element buffer stuff ported from ICU4C ucoleitr.cpp
An object used for receiving matched index in search() and searchBackwards().
Java port of ICU4C struct UPattern (usrchimp.h)
A mutable String wrapper with a variable offset and length and support for case folding.
.
Provide a base class for Transforms that focuses just on the transformation of the text.
Base class for string trie builder classes.
Build options for BytesTrieBuilder and CharsTrieBuilder.
A base class for many matchers that performs a simple match against a UnicodeString and/or
UnicodeSet.
An interface that defines both lookup protocol and parsing of symbolic names.
Finds the set of characters and strings that sort differently in the tailoring from the base
data.
TaiwanCalendar is a subclass of GregorianCalendar that numbers years
since 1912.TextTrieMap is a trie implementation for supporting fast prefix match for the key.
Callback handler for processing prefix matches used by find method.
TimeArrayTimeZoneRule represents a time zone rule whose start times are defined by
an array of milliseconds since the standard base time.'Enum' for individual time units.
Measurement unit for time units.
Express a duration as a time unit and number.
Easy access to time units for Java 1.4, which doesn't have static imports.
Deprecated.
ICU 53 use
MeasureFormat instead..
System time zone type constants used by filtering zones in
TimeZone.getAvailableIDs(SystemTimeZoneType, String, Integer)TimeZoneAdapter wraps a com.ibm.icu.util.TimeZone subclass and inherits from
java.util.TimeZone.TimeZoneFormat supports time zone display name formatting and parsing.Used for representing localized GMT time fields in the parsed pattern object.
Offset pattern type enum.
Numeric offset field combinations
Parse option enum, used for specifying optional parse behavior.
Time zone display format style enum used by format/parse APIs in
TimeZoneFormat.Time type enum used for receiving time type (standard time, daylight time or unknown) in
TimeZoneFormat APIs.Implements
TimeZoneFormat object cacheThis class interact with TimeZoneNames and LocaleDisplayNames to format and parse time zone's
generic display names.
TimeZoneGenericNames cache implementation.A class used for returning the name search result used by
TimeZoneGenericNames.find(String, int, EnumSet).A private class implementing the search callback interface in
TextTrieMap for
collecting match results.Generic name type enum
A private class used for storing the name information in the local trie.
Format pattern enum used for composing location and partial location names
TimeZoneNames is an abstract class representing the time zone display name data
model defined by UTS#35 Unicode Locale Data Markup
Language (LDML).TimeZoneNames cache used by
TimeZoneNames.getInstance(ULocale)The default implementation of
TimeZoneNames used by TimeZoneNames.getInstance(ULocale) when the ICU4J tznamedata component is not available.The default
TimeZoneNames factory called from TimeZoneNames.getInstance(ULocale) when the ICU4J tznamedata component is not available.Deprecated.
This API is ICU internal only.
A
MatchInfo represents a time zone name match used by TimeZoneNames.find(CharSequence, int, EnumSet).Time zone display name types
The implementation class of
TimeZoneNames.FactoryThe standard ICU implementation of TimeZoneNames
An instance of NameInfo is stored in the zone names trie.
NameSearchHandler is used for collecting name matches.
This class stores name data for a meta zone or time zone.
Private enum corresponding to the public TimeZoneNames::NameType for the order in which
fields are stored in a ZNames instance.
TimeZoneRule is an abstract class representing a rule for time zone.TimeZoneTransition is a class representing a time zone transition.A transliterator that converts all letters (as defined by
UCharacter.isLetter()) to
lower case, except for those letters preceded by non-letters.Provide an interface for Transforms that focuses just on the transformation of the text.
A transliteration rule used by
RuleBasedTransliterator.A set of rules for a
RuleBasedTransliterator.Transliterator is an abstract class that transliterates text from one format to
another.The factory interface for transliterators.
Position structure for incremental transliteration.
Parsing component for transliterator IDs.
A structure containing the canonicalized data of a filtered ID, that is, a basic ID
optionally with a filter.
A structure containing the parsed data of a filtered ID, that is, a basic ID optionally with
a filter.
RuleBody subclass for a String[] array.
A private abstract class representing the interface to rule source code that is broken up
into lines.
A class representing one side of a rule.
An internal class that adapts an enumeration over CaseInsensitiveStrings to an enumeration
over Strings.
A Spec is a string specifying either a source or a target.
A trie is a kind of compressed, serializable table of values associated with Unicode code points
(0..0x10ffff).
Character data in com.ibm.impl.Trie have different user-specified format for different
purposes.
This is the interface and common implementation of a Unicode Trie2.
Struct-like class for holding the results returned by a UTrie2 CharSequence iterator.
When iterating over the contents of a Trie2, Elements of this type are produced.
Trie2 data structure in serialized form:
When iterating over the contents of a Trie2, an instance of TrieValueMapper may be used to
remap the values from the Trie2.
Selectors for the width of a UTrie2 data value.
Builder class to manipulate and generate a trie.
Character data in com.ibm.impl.Trie have different user-specified format for different
purposes.
Class enabling iteration of the values in a Trie.
Yet another TimeZoneNames implementation based on the tz database.
Iterator for string case mappings, which need to look at the context (surrounding text) of a
given character for conditional mappings.
Fast case mapping data for ASCII/Latin.
.
Bidi Paired Bracket Type constants.
Decomposition Type constants.
East Asian Width constants.
Grapheme Cluster Break constants.
Hangul Syllable Type constants.
Identifier Status constants.
Identifier Type constants.
Indic Conjunct Break constants.
Indic Positional Category constants.
Indic Syllabic Category constants.
Joining Group constants.
Joining Type constants.
Line Break constants.
Numeric Type constants.
Sentence Break constants.
.
Vertical Orientation constants.
Word Break constants.
Enumerated Unicode category types from the UnicodeData.txt file.
Enumerated Unicode character linguistic direction constants.
A container for the different 'enumerated types' used by UCharacter.
'Enum' for the CharacterCategory constants.
'Enum' for the CharacterDirection constants.
Abstract class that defines an API for iteration on text objects.This is an interface for forward
and backward iteration and random access into a text object.
This class is a wrapper around UCharacterIterator and implements the CharacterIterator protocol
Internal class to manage character names.
Algorithmic name class
Internal class containing selector constants for the unicode character names.
Class enabling iteration of the codepoints and their names.
Internal reader class for ICU data file uname.dat containing Unicode codepoint name data.
Internal class used for Unicode character property database.
Internal character utility class for simple data type conversion and String parsing functions.
The process condition code to be used with the callbacks.
ucnvmbcs.h
Defines the UConverterSharedData struct, the immutable, shared part of UConverter.
Enum for specifying which platform a converter ID refers to.
UConverterImpl contains all the data and functions for a converter type.
Deprecated.
This API is ICU internal only.
An abstract class that extends
Format to provide additional ICU protocol,
specifically, the getLocale() API.A field that represents a span of text that may be composed with other fields.
Interface that defines an API for forward-only iteration on text objects.
.
Holds all alias replacement maps, loaded once from ICU resource bundles.
Builder is used to build instances of ULocale from values
configured by the setters.Enum for locale categories.
Holds the per-category default Locale and ULocale arrays as a single volatile snapshot.
Deprecated.
This API is ICU internal only.
Deprecated.
This API is ICU internal only.
Opaque selector enum for
getLocale().A transliterator that converts Unicode escape forms to the characters they represent.
A compression engine implementing the Standard Compression Scheme for Unicode (SCSU) as outlined
in Unicode Technical Report #6.
A decompression engine implementing the Standard Compression Scheme for Unicode (SCSU) as
outlined in Unicode Technical Report #6.
UnicodeFilter defines a protocol for selecting a subset of the full range (U+0000 to
U+FFFF) of Unicode characters.Class for mapping Unicode characters and strings to values, optimized for single code points,
where ranges of code points have the same value.
Used to add complex values, where the value isn't replaced but in some sense composed
Struct-like class used to iterate over a UnicodeMap in a for loop.
UnicodeSetIterator iterates over the contents of a UnicodeSet.
UnicodeMatcher defines a protocol for objects that can match a range of characters
in a Replaceable string.A transliterator that performs character to name mapping.
Contains utilities to supplement the JDK Regex, since it doesn't handle Unicode well.
UnicodeReplacer defines a protocol for objects that replace a range of characters in
a Replaceable string with output text.A mutable set of Unicode characters and multicharacter strings.
This class is optimized to iterate on code points and will be used to implement both the
Iterator (Integer, boxed value) and the Spliterator.OfInt (int primitive).
Comparison style enums used by
UnicodeSet.compareTo(UnicodeSet, ComparisonStyle).A struct-like class used for iteration through ranges, for faster iteration than by String.
Argument values for whether span() and similar functions continue while the current character
is contained vs.
Internal class for customizing UnicodeSet parsing of properties.
UnicodeSetIterator iterates over the contents of a UnicodeSet.
A helper class used to count, replace, and trim CharSequences based on UnicodeSet matches.
Options for replaceFrom and countIn to control how to treat each matched span.
Options for the trim() method
Helper class for UnicodeSetStringSpan.
UnitAliases is a class that holds all the aliases and their replacements for units.
A class to hold the alias and replacement.
A MicroPropsGenerator which converts a measurement from one MeasureUnit to another.
Responsible for all the Factor operation NOTE: This class is immutable
Responsible for all units data operations (retriever, analysis, extraction certain data ...
A Resource Sink that collects information from
unitQuantities in the units
resource to provide key->value lookups from base unit to category, as well as preserving
ordering information for these categories.Contains all the needed constants.
UnitsRouter responsible for converting from a single unit (such as meter or
meter-per-second) to one of the complex units based on the limits.Contains the complex unit converter and the limit which representing the smallest value that
the converter should accept.
There are quite a few different conventions for binary datetime, depending on different platforms
and protocols.
This class holds the data that describes a particular time scale.
A NumberFormatter that does not yet have a locale.
A NumberRangeFormatter that does not yet have a locale.
A transliterator that performs locale-sensitive toUpper() case mapping.
Selection constants for Unicode properties.
Selector constants for UCharacter.getPropertyName() and UCharacter.getPropertyValueName().
Wrapper for the pnames.icu binary data file.
ICU resource bundle key and value types.
Interface for iterating over a resource bundle array resource.
Represents a resource bundle item's key string.
Sink for ICU resource bundle contents.
Interface for iterating over a resource bundle table resource.
Represents a resource bundle item's value.
.
Class for enabling iteration over UResourceBundle objects.
Exception thrown when the requested resource type is not the same type as the available resource
Constants for ISO 15924 script codes, and related functions.
Script metadata (script properties).
Script usage constants.
Deprecated.
This API is ICU internal only.
Simple class for handling serialized USet/UnicodeSet structures without object creation.
Standalone utility class providing UTF16 character conversions and indexing conversions.
UTF16 string comparator class.
UTF-16 collation element and character iterator.
Partial Java port of ICU4C unicode/utf8.h and ustr_imp.h.
UTS #46 (IDNA2008) implementation.
A Matcher used only for post-process validation, not for consuming characters at runtime.
Interface for enabling iteration over sets of <int, Object>, where int is the sorted
integer index in ascending order, and Object its associated value.
The return result container of each iteration.
Class to store version numbers of the form major.minor.milli.micro.
VTimeZone is a class implementing RFC2445 VTIMEZONE.Stub class to make migration easier until we get either Guava or a higher level of Java.
This class, not to be instantiated, implements the meta-data missing from the underlying core JDK
implementation of time zones.
Custom time zone object cache
System time zone object cache