Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:

icu::DisplayOptions::Builder | Responsible for building `DisplayOptions`
icu::Char16Ptr | Char16_t * wrapper with implicit conversion from distinct but bit-compatible pointer types
icu::ConstChar16Ptr | Const char16_t * wrapper with implicit conversion from distinct but bit-compatible pointer types
icu::DisplayOptions | Represents all the display options that are supported by CLDR such as grammatical case, noun class, ..
icu::FormattedValue | An abstract formatted value: a string with associated field attributes
icu::FormattedDateInterval | An immutable class containing the result of a date interval formatting operation
icu::FormattedList | An immutable class containing the result of a list formatting operation
icu::FormattedRelativeDateTime | An immutable class containing the result of a relative datetime formatting operation
icu::number::FormattedNumber | The result of a number formatting operation
icu::number::FormattedNumberRange | The result of a number range formatting operation
icu::number::Precision::PrecisionUnion::FractionSignificantSettings |
icu::number::Precision::PrecisionUnion::IncrementSettings |
icu::Locale::Iterator | A Locale iterator interface similar to a Java Iterator<Locale>
icu::Locale::ConvertingIterator< Iter, Conv > | A generic Locale iterator implementation over Locale input iterators
icu::Locale::RangeIterator< Iter > | A generic Locale iterator implementation over Locale input iterators
icu::LocalPointerBase< T > | "Smart pointer" base class; do not use directly: use LocalPointer etc
icu::LocalArray< T > | "Smart pointer" class, deletes objects via the C++ array delete[] operator
icu::LocalPointer< T > | "Smart pointer" class, deletes objects via the standard C++ delete operator
LocalUBiDiPointer | "Smart pointer" class, closes a UBiDi via ubidi_close()
LocalUBiDiTransformPointer | "Smart pointer" class, closes a UBiDiTransform via ubiditransform_close()
LocalUBreakIteratorPointer | "Smart pointer" class, closes a UBreakIterator via ubrk_close()
LocalUCalendarPointer | "Smart pointer" class, closes a UCalendar via ucal_close()
LocalUCaseMapPointer | "Smart pointer" class, closes a UCaseMap via ucasemap_close()
LocalUCharsetDetectorPointer | "Smart pointer" class, closes a UCharsetDetector via ucsdet_close()
LocalUCollatorPointer | "Smart pointer" class, closes a UCollator via ucol_close()
LocalUConstrainedFieldPositionPointer | "Smart pointer" class; closes a UConstrainedFieldPosition via ucfpos_close()
LocalUConverterPointer | "Smart pointer" class, closes a UConverter via ucnv_close()
LocalUConverterSelectorPointer | "Smart pointer" class, closes a UConverterSelector via ucnvsel_close()
LocalUCPTriePointer | "Smart pointer" class, closes a UCPTrie via ucptrie_close()
LocalUDataMemoryPointer | "Smart pointer" class, closes a UDataMemory via udata_close()
LocalUDateFormatPointer | "Smart pointer" class, closes a UDateFormat via udat_close()
LocalUDateIntervalFormatPointer | "Smart pointer" class, closes a UDateIntervalFormat via udtitvfmt_close()
LocalUDateTimePatternGeneratorPointer | "Smart pointer" class, closes a UDateTimePatternGenerator via udatpg_close()
LocalUEnumerationPointer | "Smart pointer" class, closes a UEnumeration via uenum_close()
LocalUFieldPositionIteratorPointer | "Smart pointer" class, closes a UFieldPositionIterator via ufieldpositer_close()
LocalUFILEPointer | "Smart pointer" class, closes a UFILE via u_fclose()
LocalUFormattablePointer | "Smart pointer" class, closes a UFormattable via ufmt_close()
LocalUFormattedDateIntervalPointer | "Smart pointer" class, closes a UFormattedDateInterval via udtitvfmt_close()
LocalUFormattedListPointer | "Smart pointer" class, closes a UFormattedList via ulistfmt_closeResult()
LocalUFormattedNumberPointer | "Smart pointer" class; closes a UFormattedNumber via unumf_closeResult()
LocalUFormattedRelativeDateTimePointer | "Smart pointer" class, closes a UFormattedRelativeDateTime via ureldatefmt_closeResult()
LocalUIDNAPointer | "Smart pointer" class, closes a UIDNA via uidna_close()
LocalUListFormatterPointer | "Smart pointer" class, closes a UListFormatter via ulistfmt_close()
LocalULocaleBuilderPointer | "Smart pointer" class, closes a ULocaleBuilder via ulocbld_close()
LocalULocaleDataPointer | "Smart pointer" class, closes a ULocaleData via ulocdata_close()
LocalULocaleDisplayNamesPointer | "Smart pointer" class, closes a ULocaleDisplayNames via uldn_close()
LocalULocalePointer | "Smart pointer" class, closes a ULocale via ulocale_close()
LocalUMessageFormatPointer | "Smart pointer" class, closes a UMessageFormat via umsg_close()
LocalUMutableCPTriePointer | "Smart pointer" class, closes a UMutableCPTrie via umutablecptrie_close()
LocalUNormalizer2Pointer | "Smart pointer" class, closes a UNormalizer2 via unorm2_close()
LocalUNumberFormatPointer | "Smart pointer" class, closes a UNumberFormat via unum_close()
LocalUNumberFormatterPointer | "Smart pointer" class; closes a UNumberFormatter via unumf_close()
LocalUNumberingSystemPointer | "Smart pointer" class, closes a UNumberingSystem via unumsys_close()
LocalUNumberRangeFormatterPointer | "Smart pointer" class; closes a UNumberFormatter via unumf_close()
LocalUPluralRulesPointer | "Smart pointer" class, closes a UPluralRules via uplrules_close()
LocalURegularExpressionPointer | "Smart pointer" class, closes a URegularExpression via uregex_close()
LocalURelativeDateTimeFormatterPointer | "Smart pointer" class, closes a URelativeDateTimeFormatter via ureldatefmt_close()
LocalUResourceBundlePointer | "Smart pointer" class, closes a UResourceBundle via ures_close()
LocalUSetPointer | "Smart pointer" class, closes a USet via uset_close()
LocalUSimpleNumberFormatterPointer | "Smart pointer" class; closes a USimpleNumberFormatter via usnumf_close()
LocalUSimpleNumberPointer | "Smart pointer" class; closes a USimpleNumber via usnum_close()
LocalUSpoofCheckerPointer | "Smart pointer" class, closes a USpoofChecker via uspoof_close()
LocalUSpoofCheckResultPointer | "Smart pointer" class, closes a USpoofCheckResult via `uspoof_closeCheckResult()`
LocalUStringPrepProfilePointer | "Smart pointer" class, closes a UStringPrepProfile via usprep_close()
LocalUStringSearchPointer | "Smart pointer" class, closes a UStringSearch via usearch_close()
LocalUTextPointer | "Smart pointer" class, closes a UText via utext_close()
LocalUTransliteratorPointer | "Smart pointer" class, closes a UTransliterator via utrans_close()
icu::number::NumberFormatter | See the main description in numberformatter.h for documentation and examples
icu::number::NumberFormatterSettings< Derived > | An abstract base class for specifying settings related to number formatting
icu::number::NumberFormatterSettings< LocalizedNumberFormatter > |
icu::number::LocalizedNumberFormatter | A NumberFormatter that has a locale associated with it; this means .format() methods are available
icu::number::NumberFormatterSettings< UnlocalizedNumberFormatter > |
icu::number::UnlocalizedNumberFormatter | A NumberFormatter that does not yet have a locale
icu::number::NumberRangeFormatter | See the main description in numberrangeformatter.h for documentation and examples
icu::number::NumberRangeFormatterSettings< Derived > | An abstract base class for specifying settings related to number formatting
icu::number::NumberRangeFormatterSettings< LocalizedNumberRangeFormatter > |
icu::number::LocalizedNumberRangeFormatter | A NumberRangeFormatter that has a locale associated with it; this means .formatRange() methods are available
icu::number::NumberRangeFormatterSettings< UnlocalizedNumberRangeFormatter > |
icu::number::UnlocalizedNumberRangeFormatter | A NumberRangeFormatter that does not yet have a locale
icu::number::Notation::NotationUnion::ScientificSettings |
StringTrieBuilder |
icu::BytesTrieBuilder | Builder class for BytesTrie
icu::UCharsTrieBuilder | Builder class for UCharsTrie
icu::SymbolTable | An interface that defines both lookup protocol and parsing of symbolic names
icu::Transliterator::Token | A context integer or pointer for a factory function, passed by value
UCharIterator | C API for code unit iteration
UConverterFromUnicodeArgs | The structure for the fromUnicode callback function parameter
UConverterToUnicodeArgs | The structure for the toUnicode callback function parameter
UCPTrie | Immutable Unicode code point trie structure
UDataInfo | UDataInfo contains the properties about the requested data
UFieldPosition | A struct representing a range of text containing a specific field
UIDNAInfo | Output container for IDNA processing errors
icu::UMemory | UMemory is the common ICU base class
icu::ByteSink | A ByteSink can be filled with bytes
icu::CheckedArrayByteSink | Implementation of ByteSink that writes to a flat byte array, with bounds-checking: This sink will not write more than capacity bytes to outbuf
icu::StringByteSink< StringClass > | Implementation of ByteSink that writes to a "string"
icu::BytesTrie | Light-weight, non-const reader class for a BytesTrie
icu::BytesTrie::Iterator | Iterator for all of the (byte sequence, value) pairs in a BytesTrie
icu::BytesTrie::State | BytesTrie state object, for saving a trie's current state and resetting the trie back to this state later
icu::CaseMap | Low-level C++ case mapping functions
icu::ConstrainedFieldPosition | Represents a span of a string containing a given field
icu::Edits | Records lengths of string edits but not replacement text
icu::Edits::Iterator | Access to the list of edits
icu::ErrorCode | Wrapper class for UErrorCode, with conversion operators for direct use in ICU C and C++ APIs
icu::FormattedDateInterval | An immutable class containing the result of a date interval formatting operation
icu::FormattedList | An immutable class containing the result of a list formatting operation
icu::FormattedRelativeDateTime | An immutable class containing the result of a relative datetime formatting operation
icu::IDNAInfo | Output container for IDNA processing errors
icu::Locale::ConvertingIterator< Iter, Conv > | A generic Locale iterator implementation over Locale input iterators
icu::Locale::RangeIterator< Iter > | A generic Locale iterator implementation over Locale input iterators
icu::LocaleMatcher | Immutable class that picks the best match between a user's desired locales and an application's supported locales
icu::LocaleMatcher::Builder | LocaleMatcher builder
icu::LocaleMatcher::Result | Data for the best-matching pair of a desired and a supported locale
icu::MessagePattern::Part | A message pattern "part", representing a pattern parsing event
icu::SimpleFormatter | Formats simple patterns like "{1} was born in {0}"
icu::StringPiece | A string-like object that points to a sized piece of memory
icu::TimeZoneNames::MatchInfoCollection | `MatchInfoCollection` represents a collection of time zone name matches used by TimeZoneNames#find
icu::UCharsTrie | Light-weight, non-const reader class for a UCharsTrie
icu::UCharsTrie::Iterator | Iterator for all of the (string, value) pairs in a UCharsTrie
icu::UCharsTrie::State | UCharsTrie state object, for saving a trie's current state and resetting the trie back to this state later
icu::UObject | UObject is the common ICU "boilerplate" class
icu::AlphabeticIndex | AlphabeticIndex supports the creation of a UI index appropriate for a given language
icu::AlphabeticIndex::Bucket | An index "bucket" with a label string and type
icu::AlphabeticIndex::ImmutableIndex | Immutable, thread-safe version of AlphabeticIndex
icu::Appendable | Base class for objects to which Unicode characters and strings can be appended
icu::UnicodeStringAppendable | An Appendable implementation which writes to a UnicodeString
icu::BreakIterator | Implements methods for finding the location of boundaries in text
icu::RuleBasedBreakIterator | A subclass of BreakIterator whose behavior is specified using a list of rules
icu::Calendar | `Calendar` is an abstract base class for converting between a `UDate` object and a set of integer fields such as `YEAR`, `MONTH`, `DAY`, `HOUR`, and so on
icu::GregorianCalendar | Concrete class which provides the standard calendar used by most of the world
icu::CanonicalIterator | This class allows one to iterate through all the strings that are canonically equivalent to a given string
icu::CollationElementIterator | Used as an iterator to walk through each character of an international string
icu::CollationKey | Collation keys are generated by the Collator class
icu::Collator | The `Collator` class performs locale-sensitive string comparison
icu::RuleBasedCollator | Implementation of Collator, using data-driven tables
icu::CollatorFactory | A factory, used with registerFactory, the creates multiple collators and provides display names for them
icu::CurrencyPluralInfo | This class represents the information needed by DecimalFormat to format currency plural, such as "3.00 US dollars" or "1.00 US dollar"
icu::DateFormatSymbols | DateFormatSymbols is a public class for encapsulating localizable date-time formatting data – including timezone data
icu::DateInterval | This class represents a date interval
icu::DateIntervalInfo | DateIntervalInfo is a public class for encapsulating localizable date time interval patterns
icu::DateTimePatternGenerator | This class provides flexible generation of date format patterns, like "yy-MM-dd"
icu::DateTimeRule | `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
icu::DecimalFormatSymbols | This class represents the set of symbols needed by DecimalFormat to format numbers
icu::ExternalBreakEngine | Define an abstract interface for the host environment to provide a low level facility to break text for unicode text in script that the text boundary cannot be handled by upper level rule based logic, for example, for Chinese and Japanese word breaking, Thai, Khmer, Burmese, Lao and other Southeast Asian scripts
icu::FieldPosition | `FieldPosition` is a simple class used by `Format` and its subclasses to identify fields in formatted output
icu::FieldPositionIterator | FieldPositionIterator returns the field ids and their start/limit positions generated by a call to Format::format
icu::FilteredBreakIteratorBuilder | The BreakIteratorFilter is used to modify the behavior of a BreakIterator by constructing a new BreakIterator which suppresses certain segment boundaries
icu::Format | Base class for all formats
icu::DateFormat | DateFormat is an abstract class for a family of classes that convert dates and times from their internal representations to textual form and back again in a language-independent manner
icu::SimpleDateFormat | SimpleDateFormat is a concrete class for formatting and parsing dates in a language-independent manner
icu::DateIntervalFormat | DateIntervalFormat is a class for formatting and parsing date intervals in a language-independent manner
icu::MeasureFormat |
icu::TimeUnitFormat | Format or parse a TimeUnitAmount, using plural rules for the units where available
icu::MessageFormat |
icu::NumberFormat |
icu::ChoiceFormat | ChoiceFormat converts between ranges of numeric values and strings for those ranges
icu::DecimalFormat | IMPORTANT: New users are strongly encouraged to see if numberformatter.h fits their use case
icu::CompactDecimalFormat | IMPORTANT: New users are strongly encouraged to see if numberformatter.h fits their use case
icu::RuleBasedNumberFormat | Formats numbers according to a set of rules
icu::PluralFormat |
icu::SelectFormat |
icu::TimeZoneFormat | `TimeZoneFormat` supports time zone display name formatting and parsing
icu::Formattable | Formattable objects can be passed to the Format class or its subclasses for formatting
icu::ForwardCharacterIterator | Abstract class that defines an API for forward-only iteration on text objects
icu::CharacterIterator | Abstract class that defines an API for iteration on text objects
icu::UCharCharacterIterator | A concrete subclass of CharacterIterator that iterates over the characters (code units or code points) in a char16_t array
icu::StringCharacterIterator | A concrete subclass of CharacterIterator that iterates over the characters (code units or code points) in a UnicodeString
icu::GenderInfo | GenderInfo computes the gender of a list as a whole given the gender of each element
icu::IDNA | Abstract base class for IDNA processing
icu::ListFormatter | An immutable class for formatting a list, using data from CLDR (or supplied separately)
icu::Locale | A `Locale` object represents a specific geographical, political, or cultural region
icu::LocaleBuilder | `LocaleBuilder` is used to build instances of `Locale` from values configured by the setters
icu::LocaleDisplayNames | Returns display names of Locales and components of Locales
icu::Measure | An amount of a specified unit, consisting of a number and a Unit
icu::CurrencyAmount | A currency together with a numeric amount, such as 200 USD
icu::TimeUnitAmount | Express a duration as a time unit and number
icu::MeasureUnit | A unit such as length, mass, volume, currency, etc
icu::CurrencyUnit | A unit of currency, such as USD (U.S
icu::TimeUnit | Measurement unit for time units
icu::MessagePattern | Parses and represents ICU MessageFormat patterns
icu::Normalizer | Old Unicode normalization API
icu::Normalizer2 | Unicode normalization functionality for standard Unicode normalization or for using custom mapping tables
icu::FilteredNormalizer2 | Normalization filtered by a UnicodeSet
icu::NumberFormatFactory | A NumberFormatFactory is used to register new number formats
icu::SimpleNumberFormatFactory | A NumberFormatFactory that supports a single locale
icu::NumberingSystem | Defines numbering systems
icu::ParagraphLayout | ParagraphLayout
icu::ParagraphLayout::Line | This class represents a single line of text in a `ParagraphLayout`
icu::ParagraphLayout::VisualRun | This object represents a single visual run in a line of text in a paragraph
icu::ParsePosition | `ParsePosition` is a simple class used by `Format` and its subclasses to keep track of the current position during parsing
icu::PluralRules | Defines rules for mapping non-negative numeric values onto a small set of keywords
icu::RegexMatcher | Class RegexMatcher bundles together a regular expression pattern and input text to which the expression can be applied
icu::RegexPattern | Class `RegexPattern` represents a compiled regular expression
icu::Region | `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
icu::RelativeDateTimeFormatter | Formats simple relative dates
icu::Replaceable | `Replaceable` is an abstract base class representing a string of characters that supports the replacement of a range of itself with a new string of characters
icu::UnicodeString | UnicodeString is a string class that stores Unicode characters directly and provides similar functionality as the Java String and StringBuffer/StringBuilder classes
icu::ResourceBundle | A class representing a collection of resource information pertaining to a given locale
icu::RunArray | The `RunArray` class is a base class for building classes which represent data that is associated with runs of text
icu::FontRuns | The `FontRuns` class associates pointers to `LEFontInstance` objects with runs of text
icu::LocaleRuns | The `LocaleRuns` class associates pointers to `Locale` objects with runs of text
icu::ValueRuns | The `ValueRuns` class associates integer values with runs of text
icu::ScientificNumberFormatter | A formatter that formats numbers in user-friendly scientific notation
icu::SearchIterator | `SearchIterator` is an abstract base class that provides methods to search for a pattern within a text string
icu::StringSearch | `StringSearch` is a `SearchIterator` that provides language-sensitive text searching based on the comparison rules defined in a RuleBasedCollator object
icu::StringEnumeration | Base class for 'pure' C++ implementations of uenum api
icu::TimeZone | `TimeZone` represents a time zone offset, and also figures out daylight savings
icu::BasicTimeZone | `BasicTimeZone` is an abstract class extending `TimeZone`
icu::RuleBasedTimeZone | BasicTimeZone subclass implemented in terms of InitialTimeZoneRule and TimeZoneRule instances
icu::SimpleTimeZone | `SimpleTimeZone` is a concrete subclass of `TimeZone` that represents a time zone for use with a Gregorian calendar
icu::VTimeZone | `VTimeZone` is a class implementing RFC2445 VTIMEZONE
icu::TimeZoneNames | `TimeZoneNames` is an abstract class representing the time zone display name data model defined by UTS#35 Unicode Locale Data Markup Language (LDML)
icu::TimeZoneRule | `TimeZoneRule` is a class representing a rule for time zone
icu::AnnualTimeZoneRule | `AnnualTimeZoneRule` is a class used for representing a time zone rule which takes effect annually
icu::InitialTimeZoneRule | `InitialTimeZoneRule` represents a time zone rule representing a time zone effective from the beginning and has no actual start times
icu::TimeArrayTimeZoneRule | `TimeArrayTimeZoneRule` represents a time zone rule whose start times are defined by an array of milliseconds since the standard base time
icu::TimeZoneTransition | `TimeZoneTransition` is a class representing a time zone transition
icu::Transliterator | `Transliterator` is an abstract class that transliterates text from one format to another
icu::UnicodeFunctor | `UnicodeFunctor` is an abstract base class for objects that perform match and/or replace operations on Unicode strings
icu::UnicodeFilter | `UnicodeFilter` defines a protocol for selecting a subset of the full range (U+0000 to U+10FFFF) of Unicode characters
icu::UnicodeSet | A mutable set of Unicode characters and multicharacter strings
icu::UnicodeSetIterator | UnicodeSetIterator iterates over the contents of a UnicodeSet
icu::number::FormattedNumber | The result of a number formatting operation
icu::number::FormattedNumberRange | The result of a number range formatting operation
icu::number::IntegerWidth | A class that defines the strategy for padding and truncating integers before the decimal separator
icu::number::LocalizedNumberFormatter | A NumberFormatter that has a locale associated with it; this means .format() methods are available
icu::number::LocalizedNumberRangeFormatter | A NumberRangeFormatter that has a locale associated with it; this means .formatRange() methods are available
icu::number::Notation | A class that defines the notation style to be used when formatting numbers in NumberFormatter
icu::number::ScientificNotation | A class that defines the scientific notation style to be used when formatting numbers in NumberFormatter
icu::number::Precision | A class that defines the rounding precision to be used when formatting numbers in NumberFormatter
icu::number::CurrencyPrecision | A class that defines a rounding precision parameterized by a currency to be used when formatting numbers in NumberFormatter
icu::number::FractionPrecision | A class that defines a rounding precision based on a number of fraction places and optionally significant digits to be used when formatting numbers in NumberFormatter
icu::number::IncrementPrecision | A class that defines a rounding precision parameterized by a rounding increment to be used when formatting numbers in NumberFormatter
icu::number::Scale | A class that defines a quantity by which a number should be multiplied when formatting
icu::number::SimpleNumber | An input type for SimpleNumberFormatter
icu::number::SimpleNumberFormatter | A special NumberFormatter focused on smaller binary size and memory use
icu::number::UnlocalizedNumberFormatter | A NumberFormatter that does not yet have a locale
icu::number::UnlocalizedNumberRangeFormatter | A NumberRangeFormatter that does not yet have a locale
icu::number::impl::Grouper |
icu::number::impl::MacroProps |
icu::number::impl::Padder |
icu::number::impl::RangeMacroProps |
icu::number::impl::StringProp | Manages NumberFormatterSettings::usage()'s char* instance on the heap
icu::number::impl::SymbolsWrapper |
icu::UnicodeMatcher | `UnicodeMatcher` defines a protocol for objects that can match a range of characters in a Replaceable string
icu::UnicodeFilter | `UnicodeFilter` defines a protocol for selecting a subset of the full range (U+0000 to U+10FFFF) of Unicode characters
icu::UnicodeReplacer | `UnicodeReplacer` defines a protocol for objects that replace a range of characters in a Replaceable string with output text
UParseError | A UParseError struct is used to returned detailed information about parsing errors
UReplaceableCallbacks | A set of function pointers that transliterators use to manipulate a UReplaceable
USerializedSet | A serialized form of a Unicode set
UText | UText struct
UTextFuncs | (public) Function dispatch table for UText
UTransPosition | Position structure for utrans_transIncremental() incremental transliteration