ICU 57.1  57.1
Data Structures
Here are the data structures with brief descriptions:
[detail level 12]
 CAlphabeticIndexAlphabeticIndex supports the creation of a UI index appropriate for a given language
 CAnnualTimeZoneRuleAnnualTimeZoneRule is a class used for representing a time zone rule which takes effect annually
 CAppendableBase class for objects to which Unicode characters and strings can be appended
 CBasicTimeZoneBasicTimeZone is an abstract class extending TimeZone
 CBreakIteratorImplements methods for finding the location of boundaries in text
 CByteSinkA ByteSink can be filled with bytes
 CBytesTrieLight-weight, non-const reader class for a BytesTrie
 CBytesTrieBuilderBuilder class for BytesTrie
 CCalendarCalendar 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
 CCanonicalIteratorThis class allows one to iterate through all the strings that are canonically equivalent to a given string
 CCharacterIteratorAbstract class that defines an API for iteration on text objects
 CCheckedArrayByteSinkImplementation of ByteSink that writes to a flat byte array, with bounds-checking: This sink will not write more than capacity bytes to outbuf
 CChoiceFormatChoiceFormat converts between ranges of numeric values and strings for those ranges
 CCollationElementIteratorUsed as an iterator to walk through
each character of an international string
 CCollationKeyCollation keys are generated by the Collator class
 CCollatorThe Collator class performs locale-sensitive string comparison
 CCollatorFactoryA factory, used with registerFactory, the creates multiple collators and provides display names for them
 CCompactDecimalFormatThe CompactDecimalFormat produces abbreviated numbers, suitable for display in environments will limited real estate
 CCurrencyAmountA currency together with a numeric amount, such as 200 USD
 CCurrencyPluralInfoThis class represents the information needed by DecimalFormat to format currency plural, such as "3.00 US dollars" or "1.00 US dollar"
 CCurrencyUnitA unit of currency, such as USD (U.S
 CDateFormatDateFormat 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
 CDateFormatSymbolsDateFormatSymbols is a public class for encapsulating localizable date-time formatting data – including timezone data
 CDateIntervalThis class represents a date interval
 CDateIntervalFormatDateIntervalFormat is a class for formatting and parsing date intervals in a language-independent manner
 CDateIntervalInfoDateIntervalInfo is a public class for encapsulating localizable date time interval patterns
 CDateTimePatternGeneratorThis class provides flexible generation of date format patterns, like "yy-MM-dd"
 CDateTimeRuleDateTimeRule 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
 CDecimalFormatDecimalFormat is a concrete subclass of NumberFormat that formats decimal numbers
 CDecimalFormatSymbolsThis class represents the set of symbols needed by DecimalFormat to format numbers
 CEnumSetEnum bitset for boolean fields
 CErrorCodeWrapper class for UErrorCode, with conversion operators for direct use in ICU C and C++ APIs
 CFieldPositionFieldPosition is a simple class used by Format and its subclasses to identify fields in formatted output
 CFieldPositionIteratorFieldPositionIterator returns the field ids and their start/limit positions generated by a call to Format::format
 CFilteredBreakIteratorBuilderThe BreakIteratorFilter is used to modify the behavior of a BreakIterator by constructing a new BreakIterator which suppresses certain segment boundaries
 CFilteredNormalizer2Normalization filtered by a UnicodeSet
 CFontRunsThe FontRuns class associates pointers to LEFontInstance objects with runs of text
 CFormatBase class for all formats
 CFormattableFormattable objects can be passed to the Format class or its subclasses for formatting
 CForwardCharacterIteratorAbstract class that defines an API for forward-only iteration on text objects
 CGenderInfoGenderInfo computes the gender of a list as a whole given the gender of each element
 CGregorianCalendarConcrete class which provides the standard calendar used by most of the world
 CIDNAAbstract base class for IDNA processing
 CIDNAInfoOutput container for IDNA processing errors
 CInitialTimeZoneRuleInitialTimeZoneRule represents a time zone rule representing a time zone effective from the beginning and has no actual start times
 CLayoutEngineNOTE: This class is deprecated, please instead use HarfBuzz
 CLECharMapperInstances of this class are used by LEFontInstance::mapCharsToGlyphs and LEFontInstance::mapCharToGlyph to adjust character codes before the character to glyph mapping process
 CLEFontInstanceThis is a virtual base class that serves as the interface between a LayoutEngine and the platform font environment
 CLEGlyphStorageThis class encapsulates the per-glyph storage used by the ICU LayoutEngine
 CLEPointUsed to hold a pair of (x, y) values which represent a point
 CLESwapsThis class is used to access data which stored in big endian order regardless of the conventions of the platform
 CListFormatData
 CListFormatterAn immutable class for formatting a list, using data from CLDR (or supplied separately)
 CLocalArray"Smart pointer" class, deletes objects via the C++ array delete[] operator
 CLocaleA Locale object represents a specific geographical, political, or cultural region
 CLocaleDisplayNamesReturns display names of Locales and components of Locales
 CLocaleRunsThe LocaleRuns class associates pointers to Locale objects with runs of text
 CLocalPointer"Smart pointer" class, deletes objects via the standard C++ delete operator
 CLocalPointerBase"Smart pointer" base class; do not use directly: use LocalPointer etc
 CLocalUBiDiPointer"Smart pointer" class, closes a UBiDi via ubidi_close()
 CLocalUBreakIteratorPointer"Smart pointer" class, closes a UBreakIterator via ubrk_close()
 CLocalUCalendarPointer"Smart pointer" class, closes a UCalendar via ucal_close()
 CLocalUCaseMapPointer"Smart pointer" class, closes a UCaseMap via ucasemap_close()
 CLocalUCharsetDetectorPointer"Smart pointer" class, closes a UCharsetDetector via ucsdet_close()
 CLocalUCollatorPointer"Smart pointer" class, closes a UCollator via ucol_close()
 CLocalUConverterPointer"Smart pointer" class, closes a UConverter via ucnv_close()
 CLocalUConverterSelectorPointer"Smart pointer" class, closes a UConverterSelector via ucnvsel_close()
 CLocalUDataMemoryPointer"Smart pointer" class, closes a UDataMemory via udata_close()
 CLocalUDateFormatPointer"Smart pointer" class, closes a UDateFormat via udat_close()
 CLocalUDateIntervalFormatPointer"Smart pointer" class, closes a UDateIntervalFormat via udtitvfmt_close()
 CLocalUDateTimePatternGeneratorPointer"Smart pointer" class, closes a UDateTimePatternGenerator via udatpg_close()
 CLocalUEnumerationPointer"Smart pointer" class, closes a UEnumeration via uenum_close()
 CLocalUFieldPositionIteratorPointer"Smart pointer" class, closes a UFieldPositionIterator via ufieldpositer_close()
 CLocalUFILEPointer"Smart pointer" class, closes a UFILE via u_fclose()
 CLocalUFormattablePointer"Smart pointer" class, closes a UFormattable via ufmt_close()
 CLocalUIDNAPointer"Smart pointer" class, closes a UIDNA via uidna_close()
 CLocalUListFormatterPointer"Smart pointer" class, closes a UListFormatter via ulistfmt_close()
 CLocalULocaleDataPointer"Smart pointer" class, closes a ULocaleData via ulocdata_close()
 CLocalULocaleDisplayNamesPointer"Smart pointer" class, closes a ULocaleDisplayNames via uldn_close()
 CLocalUMessageFormatPointer"Smart pointer" class, closes a UMessageFormat via umsg_close()
 CLocalUNormalizer2Pointer"Smart pointer" class, closes a UNormalizer2 via unorm2_close()
 CLocalUNumberFormatPointer"Smart pointer" class, closes a UNumberFormat via unum_close()
 CLocalUNumberingSystemPointer"Smart pointer" class, closes a UNumberingSystem via unumsys_close()
 CLocalUPluralRulesPointer"Smart pointer" class, closes a UPluralRules via uplrules_close()
 CLocalURegularExpressionPointer"Smart pointer" class, closes a URegularExpression via uregex_close()
 CLocalURelativeDateTimeFormatterPointer"Smart pointer" class, closes a URelativeDateTimeFormatter via ureldatefmt_close()
 CLocalUResourceBundlePointer"Smart pointer" class, closes a UResourceBundle via ures_close()
 CLocalUSetPointer"Smart pointer" class, closes a USet via uset_close()
 CLocalUSpoofCheckerPointer"Smart pointer" class, closes a USpoofChecker via uspoof_close()
 CLocalUStringPrepProfilePointer"Smart pointer" class, closes a UStringPrepProfile via usprep_close()
 CLocalUStringSearchPointer"Smart pointer" class, closes a UStringSearch via usearch_close()
 CLocalUTextPointer"Smart pointer" class, closes a UText via utext_close()
 CLocalUTransliteratorPointer"Smart pointer" class, closes a UTransliterator via utrans_close()
 CMeasureAn amount of a specified unit, consisting of a number and a Unit
 CMeasureFormatA formatter for measure objects
 CMeasureUnitA unit such as length, mass, volume, currency, etc
 CMessageFormat
 CMessagePatternParses and represents ICU MessageFormat patterns
 CNormalizerOld Unicode normalization API
 CNormalizer2Unicode normalization functionality for standard Unicode normalization or for using custom mapping tables
 CNumberFormatAbstract base class for all number formats
 CNumberFormatFactoryA NumberFormatFactory is used to register new number formats
 CNumberingSystemDefines numbering systems
 CParagraphLayoutParagraphLayout
 CParsePositionParsePosition is a simple class used by Format and its subclasses to keep track of the current position during parsing
 CPluralFormat
 CPluralRulesDefines rules for mapping non-negative numeric values onto a small set of keywords
 CRegexMatcherClass RegexMatcher bundles together a regular expression pattern and input text to which the expression can be applied
 CRegexPatternClass RegexPattern represents a compiled regular expression
 CRegionRegion is the class representing a Unicode Region Code, also known as a Unicode Region Subtag, which is defined based upon the BCP 47 standard
 CRelativeDateTimeFormatterFormats simple relative dates
 CReplaceableReplaceable 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
 CResourceBundleA class representing a collection of resource information pertaining to a given locale
 CRuleBasedBreakIteratorA subclass of BreakIterator whose behavior is specified using a list of rules
 CRuleBasedCollatorImplementation of Collator, using data-driven tables
 CRuleBasedNumberFormatFormats numbers according to a set of rules
 CRuleBasedTimeZoneBasicTimeZone subclass implemented in terms of InitialTimeZoneRule and TimeZoneRule instances
 CRunArrayThe RunArray class is a base class for building classes which represent data that is associated with runs of text
 CScientificNumberFormatterA formatter that formats numbers in user-friendly scientific notation
 CSearchIteratorSearchIterator is an abstract base class that provides methods to search for a pattern within a text string
 CSelectFormat
 CSimpleDateFormatSimpleDateFormat is a concrete class for formatting and parsing dates in a language-independent manner
 CSimpleFormatterFormats simple patterns like "{1} was born in {0}"
 CSimpleNumberFormatFactoryA NumberFormatFactory that supports a single locale
 CSimpleTimeZoneSimpleTimeZone is a concrete subclass of TimeZone that represents a time zone for use with a Gregorian calendar
 CStringByteSinkImplementation of ByteSink that writes to a "string"
 CStringCharacterIteratorA concrete subclass of CharacterIterator that iterates over the characters (code units or code points) in a UnicodeString
 CStringEnumerationBase class for 'pure' C++ implementations of uenum api
 CStringPieceA string-like object that points to a sized piece of memory
 CStringSearchStringSearch is a SearchIterator that provides language-sensitive text searching based on the comparison rules defined in a RuleBasedCollator object
 CStringTrieBuilderBase class for string trie builder classes
 CSymbolTableAn interface that defines both lookup protocol and parsing of symbolic names
 CTimeArrayTimeZoneRuleTimeArrayTimeZoneRule represents a time zone rule whose start times are defined by an array of milliseconds since the standard base time
 CTimeUnitMeasurement unit for time units
 CTimeUnitAmountExpress a duration as a time unit and number
 CTimeUnitFormatFormat or parse a TimeUnitAmount, using plural rules for the units where available
 CTimeZoneTimeZone represents a time zone offset, and also figures out daylight savings
 CTimeZoneFormatTimeZoneFormat supports time zone display name formatting and parsing
 CTimeZoneNamesTimeZoneNames is an abstract class representing the time zone display name data model defined by UTS#35 Unicode Locale Data Markup Language (LDML)
 CTimeZoneRuleTimeZoneRule is a class representing a rule for time zone
 CTimeZoneTransitionTimeZoneTransition is a class representing a time zone transition
 CTransliteratorTransliterator is an abstract class that transliterates text from one format to another
 CUCharCharacterIteratorA concrete subclass of CharacterIterator that iterates over the characters (code units or code points) in a UChar array
 CUCharIteratorC API for code unit iteration
 CUCharsTrieLight-weight, non-const reader class for a UCharsTrie
 CUCharsTrieBuilderBuilder class for UCharsTrie
 CUConverterFromUnicodeArgsThe structure for the fromUnicode callback function parameter
 CUConverterToUnicodeArgsThe structure for the toUnicode callback function parameter
 CUDataInfoUDataInfo contains the properties about the requested data
 CUFieldPositionA struct representing a range of text containing a specific field
 CUIDNAInfoOutput container for IDNA processing errors
 CUMemoryUMemory is the common ICU base class
 CUnicodeFilterUnicodeFilter defines a protocol for selecting a subset of the full range (U+0000 to U+10FFFF) of Unicode characters
 CUnicodeFunctorUnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on Unicode strings
 CUnicodeMatcherUnicodeMatcher defines a protocol for objects that can match a range of characters in a Replaceable string
 CUnicodeReplacerUnicodeReplacer defines a protocol for objects that replace a range of characters in a Replaceable string with output text
 CUnicodeSetA mutable set of Unicode characters and multicharacter strings
 CUnicodeSetIteratorUnicodeSetIterator iterates over the contents of a UnicodeSet
 CUnicodeStringUnicodeString is a string class that stores Unicode characters directly and provides similar functionality as the Java String and StringBuffer/StringBuilder classes
 CUnicodeStringAppendableAn Appendable implementation which writes to a UnicodeString
 CUObjectUObject is the common ICU "boilerplate" class
 CUParseErrorA UParseError struct is used to returned detailed information about parsing errors
 CUReplaceableCallbacksA set of function pointers that transliterators use to manipulate a UReplaceable
 CUSerializedSetA serialized form of a Unicode set
 CUTextUText struct
 CUTextFuncs(public) Function dispatch table for UText
 CUTransPositionPosition structure for utrans_transIncremental() incremental transliteration
 CValueRunsThe ValueRuns class associates integer values with runs of text
 CVTimeZoneVTimeZone is a class implementing RFC2445 VTIMEZONE