ICU 74.1 74.1

Data Structures
Here are the data structures with brief descriptions:
[detail level 1 2 3 4]

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