LELanguages.h   LELanguages.h 
/* /*
* *
* (C) Copyright IBM Corp. 1998-2010. All Rights Reserved. * (C) Copyright IBM Corp. 1998-2010. All Rights Reserved.
* *
* WARNING: THIS FILE IS MACHINE GENERATED. DO NOT HAND EDIT IT UNLESS * WARNING: THIS FILE IS MACHINE GENERATED. DO NOT HAND EDIT IT UNLESS
* YOU REALLY KNOW WHAT YOU'RE DOING. * YOU REALLY KNOW WHAT YOU'RE DOING.
* *
* Generated on: 02/25/2010 06:59:14 PM PST * Generated on: 10/26/2010 02:53:33 PM PDT
*/ */
#ifndef __LELANGUAGES_H #ifndef __LELANGUAGES_H
#define __LELANGUAGES_H #define __LELANGUAGES_H
#include "LETypes.h" #include "LETypes.h"
/** /**
* \file * \file
* \brief C++ API: List of language codes for LayoutEngine * \brief C++ API: List of language codes for LayoutEngine
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 LEScripts.h   LEScripts.h 
/* /*
* *
* (C) Copyright IBM Corp. 1998-2010. All Rights Reserved. * (C) Copyright IBM Corp. 1998-2010. All Rights Reserved.
* *
* WARNING: THIS FILE IS MACHINE GENERATED. DO NOT HAND EDIT IT UNLESS * WARNING: THIS FILE IS MACHINE GENERATED. DO NOT HAND EDIT IT UNLESS
* YOU REALLY KNOW WHAT YOU'RE DOING. * YOU REALLY KNOW WHAT YOU'RE DOING.
* *
* Generated on: 02/25/2010 06:59:11 PM PST * Generated on: 10/26/2010 02:53:33 PM PDT
*/ */
#ifndef __LESCRIPTS_H #ifndef __LESCRIPTS_H
#define __LESCRIPTS_H #define __LESCRIPTS_H
#include "LETypes.h" #include "LETypes.h"
/** /**
* \file * \file
* \brief C++ API: Constants for Unicode script values * \brief C++ API: Constants for Unicode script values
skipping to change at line 195 skipping to change at line 195
maniScriptCode = 121, maniScriptCode = 121,
phliScriptCode = 122, phliScriptCode = 122,
phlpScriptCode = 123, phlpScriptCode = 123,
phlvScriptCode = 124, phlvScriptCode = 124,
prtiScriptCode = 125, prtiScriptCode = 125,
samrScriptCode = 126, samrScriptCode = 126,
tavtScriptCode = 127, tavtScriptCode = 127,
zmthScriptCode = 128, zmthScriptCode = 128,
zsymScriptCode = 129, zsymScriptCode = 129,
/** /**
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
bamuScriptCode = 130, bamuScriptCode = 130,
lisuScriptCode = 131, lisuScriptCode = 131,
nkgbScriptCode = 132, nkgbScriptCode = 132,
sarbScriptCode = 133, sarbScriptCode = 133,
/**
* @stable ICU 4.6
*/
scriptCodeCount = 134 bassScriptCode = 134,
duplScriptCode = 135,
elbaScriptCode = 136,
granScriptCode = 137,
kpelScriptCode = 138,
lomaScriptCode = 139,
mendScriptCode = 140,
mercScriptCode = 141,
narbScriptCode = 142,
nbatScriptCode = 143,
palmScriptCode = 144,
sindScriptCode = 145,
waraScriptCode = 146,
scriptCodeCount = 147
}; };
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
 End of changes. 4 change blocks. 
3 lines changed or deleted 20 lines changed or added


 calendar.h   calendar.h 
skipping to change at line 1205 skipping to change at line 1205
* in this calendar system. If a transition occurs at midnight, * in this calendar system. If a transition occurs at midnight,
* then the days before and after the transition will have the * then the days before and after the transition will have the
* type UCAL_WEEKDAY or UCAL_WEEKEND. If a transition occurs at a time * type UCAL_WEEKDAY or UCAL_WEEKEND. If a transition occurs at a time
* other than midnight, then the day of the transition will have * other than midnight, then the day of the transition will have
* the type UCAL_WEEKEND_ONSET or UCAL_WEEKEND_CEASE. In this case, the * the type UCAL_WEEKEND_ONSET or UCAL_WEEKEND_CEASE. In this case, the
* method getWeekendTransition() will return the point of * method getWeekendTransition() will return the point of
* transition. * transition.
* @param dayOfWeek The day of the week whose type is desired (UCAL_SUN DAY..UCAL_SATURDAY). * @param dayOfWeek The day of the week whose type is desired (UCAL_SUN DAY..UCAL_SATURDAY).
* @param status The error code for the operation. * @param status The error code for the operation.
* @return The UCalendarWeekdayType for the day of the week. * @return The UCalendarWeekdayType for the day of the week.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UCalendarWeekdayType getDayOfWeekType(UCalendarDaysOfWeek dayOf Week, UErrorCode &status) const; virtual UCalendarWeekdayType getDayOfWeekType(UCalendarDaysOfWeek dayOf Week, UErrorCode &status) const;
/** /**
* Returns the time during the day at which the weekend begins or ends in * Returns the time during the day at which the weekend begins or ends in
* this calendar system. If getDayOfWeekType() rerturns UCAL_WEEKEND_O NSET * this calendar system. If getDayOfWeekType() rerturns UCAL_WEEKEND_O NSET
* for the specified dayOfWeek, return the time at which the weekend be gins. * for the specified dayOfWeek, return the time at which the weekend be gins.
* If getDayOfWeekType() returns UCAL_WEEKEND_CEASE for the specified d ayOfWeek, * If getDayOfWeekType() returns UCAL_WEEKEND_CEASE for the specified d ayOfWeek,
* return the time at which the weekend ends. If getDayOfWeekType() ret urns * return the time at which the weekend ends. If getDayOfWeekType() ret urns
* some other UCalendarWeekdayType for the specified dayOfWeek, is it a n error condition * some other UCalendarWeekdayType for the specified dayOfWeek, is it a n error condition
* (U_ILLEGAL_ARGUMENT_ERROR). * (U_ILLEGAL_ARGUMENT_ERROR).
* @param dayOfWeek The day of the week for which the weekend transitio n time is * @param dayOfWeek The day of the week for which the weekend transitio n time is
* desired (UCAL_SUNDAY..UCAL_SATURDAY). * desired (UCAL_SUNDAY..UCAL_SATURDAY).
* @param status The error code for the operation. * @param status The error code for the operation.
* @return The milliseconds after midnight at which the weekend begins or ends. * @return The milliseconds after midnight at which the weekend begins or ends.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual int32_t getWeekendTransition(UCalendarDaysOfWeek dayOfWeek, UEr rorCode &status) const; virtual int32_t getWeekendTransition(UCalendarDaysOfWeek dayOfWeek, UEr rorCode &status) const;
/** /**
* Returns TRUE if the given UDate is in the weekend in * Returns TRUE if the given UDate is in the weekend in
* this calendar system. * this calendar system.
* @param date The UDate in question. * @param date The UDate in question.
* @param status The error code for the operation. * @param status The error code for the operation.
* @return TRUE if the given UDate is in the weekend in * @return TRUE if the given UDate is in the weekend in
* this calendar system, FALSE otherwise. * this calendar system, FALSE otherwise.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool isWeekend(UDate date, UErrorCode &status) const; virtual UBool isWeekend(UDate date, UErrorCode &status) const;
/** /**
* Returns TRUE if this Calendar's current date-time is in the weekend in * Returns TRUE if this Calendar's current date-time is in the weekend in
* this calendar system. * this calendar system.
* @return TRUE if this Calendar's current date-time is in the weekend in * @return TRUE if this Calendar's current date-time is in the weekend in
* this calendar system, FALSE otherwise. * this calendar system, FALSE otherwise.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool isWeekend(void) const; virtual UBool isWeekend(void) const;
protected: protected:
/** /**
* Constructs a Calendar with the default time zone as returned by * Constructs a Calendar with the default time zone as returned by
* TimeZone::createInstance(), and the default locale. * TimeZone::createInstance(), and the default locale.
* *
* @param success Indicates the status of Calendar object constructio n. Returns * @param success Indicates the status of Calendar object constructio n. Returns
 End of changes. 4 change blocks. 
4 lines changed or deleted 4 lines changed or added


 coll.h   coll.h 
skipping to change at line 601 skipping to change at line 601
* Collator::ComparisonResult result = myCollation->compare("abc", "AB C"); * Collator::ComparisonResult result = myCollation->compare("abc", "AB C");
* \endcode * \endcode
* </pre> * </pre>
* @see Collator#getStrength * @see Collator#getStrength
* @param newStrength the new comparison level. * @param newStrength the new comparison level.
* @deprecated ICU 2.6 Use setAttribute(UCOL_STRENGTH...) instead * @deprecated ICU 2.6 Use setAttribute(UCOL_STRENGTH...) instead
*/ */
virtual void setStrength(ECollationStrength newStrength) = 0; virtual void setStrength(ECollationStrength newStrength) = 0;
/** /**
* Get the current reordering of scripts (if one has been set).
* @param dest The array to fill with the script ordering.
* @param destCapacity The length of dest. If it is 0, then dest may be
NULL and the function will only return the length of the result without wr
iting any of the result string (pre-flighting).
* @param pErrorCode Must be a valid pointer to an error code value, wh
ich must not indicate a failure before the function call.
* @return The length of the array of the script ordering.
* @see ucol_getReorderCodes
* @internal
*/
virtual int32_t getReorderCodes(int32_t *dest,
int32_t destCapacity,
UErrorCode& status) const;
/**
* Set the ordering of scripts for this collator.
* @param reorderCodes An array of reorder codes in the new order.
* @param reorderCodesLength The length of reorderCodes.
* @see ucol_setReorderCodes
* @internal
*/
virtual void setReorderCodes(const int32_t* reorderCodes,
int32_t reorderCodesLength,
UErrorCode& status) ;
/**
* Get name of the object for the desired Locale, in the desired langau ge * Get name of the object for the desired Locale, in the desired langau ge
* @param objectLocale must be from getAvailableLocales * @param objectLocale must be from getAvailableLocales
* @param displayLocale specifies the desired locale for output * @param displayLocale specifies the desired locale for output
* @param name the fill-in parameter of the return value * @param name the fill-in parameter of the return value
* @return display-able name of the object for the object locale in the * @return display-able name of the object for the object locale in the
* desired language * desired language
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
static UnicodeString& U_EXPORT2 getDisplayName(const Locale& objectLoca le, static UnicodeString& U_EXPORT2 getDisplayName(const Locale& objectLoca le,
const Locale& displayLocale, const Locale& displayLocale,
 End of changes. 1 change blocks. 
0 lines changed or deleted 27 lines changed or added


 datefmt.h   datefmt.h 
skipping to change at line 245 skipping to change at line 245
* then it returns a failing UErrorCode. * then it returns a failing UErrorCode.
* *
* @param obj The object to format. Must be a Date. * @param obj The object to format. Must be a Date.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. Field val ues * of fields generated by this format call. Field val ues
* are defined in UDateFormatField. Can be NULL. * are defined in UDateFormatField. Can be NULL.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& format(const Formattable& obj, virtual UnicodeString& format(const Formattable& obj,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Formats a date into a date/time string. This is an abstract method w hich * Formats a date into a date/time string. This is an abstract method w hich
* concrete subclasses must implement. * concrete subclasses must implement.
* <P> * <P>
* On input, the FieldPosition parameter may have its "field" member fi lled with * On input, the FieldPosition parameter may have its "field" member fi lled with
skipping to change at line 304 skipping to change at line 304
* DateFormat instance, the date and the time zone wil l * DateFormat instance, the date and the time zone wil l
* be inherited from the input calendar, but other cal endar * be inherited from the input calendar, but other cal endar
* field values will be calculated by the internal cal endar. * field values will be calculated by the internal cal endar.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. Field val ues * of fields generated by this format call. Field val ues
* are defined in UDateFormatField. Can be NULL. * are defined in UDateFormatField. Can be NULL.
* @param status error status. * @param status error status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& format(Calendar& cal, virtual UnicodeString& format(Calendar& cal,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Formats a UDate into a date/time string. * Formats a UDate into a date/time string.
* <P> * <P>
* On input, the FieldPosition parameter may have its "field" member fi lled with * On input, the FieldPosition parameter may have its "field" member fi lled with
* an enum value specifying a field. On output, the FieldPosition will be filled * an enum value specifying a field. On output, the FieldPosition will be filled
skipping to change at line 352 skipping to change at line 352
* Formats a UDate into a date/time string. * Formats a UDate into a date/time string.
* *
* @param date UDate to be formatted into a date/time string. * @param date UDate to be formatted into a date/time string.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. Field val ues * of fields generated by this format call. Field val ues
* are defined in UDateFormatField. Can be NULL. * are defined in UDateFormatField. Can be NULL.
* @param status error status. * @param status error status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UnicodeString& format(UDate date, UnicodeString& format(UDate date,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Formats a UDate into a date/time string. If there is a problem, you won't * Formats a UDate into a date/time string. If there is a problem, you won't
* know, using this method. Use the overloaded format() method which ta kes a * know, using this method. Use the overloaded format() method which ta kes a
* FieldPosition& to detect formatting problems. * FieldPosition& to detect formatting problems.
* *
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 decimfmt.h   decimfmt.h 
skipping to change at line 613 skipping to change at line 613
* *
* <p><strong>Rounding</strong> * <p><strong>Rounding</strong>
* *
* <p>DecimalFormat supports rounding to a specific increment. For * <p>DecimalFormat supports rounding to a specific increment. For
* example, 1230 rounded to the nearest 50 is 1250. 1.234 rounded to the * example, 1230 rounded to the nearest 50 is 1250. 1.234 rounded to the
* nearest 0.65 is 1.3. The rounding increment may be specified through th e API * nearest 0.65 is 1.3. The rounding increment may be specified through th e API
* or in a pattern. To specify a rounding increment in a pattern, include the * or in a pattern. To specify a rounding increment in a pattern, include the
* increment in the pattern itself. "#,#50" specifies a rounding increment of * increment in the pattern itself. "#,#50" specifies a rounding increment of
* 50. "#,##0.05" specifies a rounding increment of 0.05. * 50. "#,##0.05" specifies a rounding increment of 0.05.
* *
* <p>In the absense of an explicit rounding increment numbers are
* rounded to their formatted width.
*
* <ul> * <ul>
* <li>Rounding only affects the string produced by formatting. It does * <li>Rounding only affects the string produced by formatting. It does
* not affect parsing or change any numerical values. * not affect parsing or change any numerical values.
* *
* <li>A <em>rounding mode</em> determines how values are rounded; see * <li>A <em>rounding mode</em> determines how values are rounded; see
* DecimalFormat::ERoundingMode. The default rounding mode is * DecimalFormat::ERoundingMode. The default rounding mode is
* DecimalFormat::kRoundHalfEven. The rounding mode can only be set * DecimalFormat::kRoundHalfEven. The rounding mode can only be set
* through the API; it can not be set with a pattern. * through the API; it can not be set with a pattern.
* *
* <li>Some locales use rounding in their currency formats to reflect the * <li>Some locales use rounding in their currency formats to reflect the
skipping to change at line 855 skipping to change at line 858
* Format a double or long number using base-10 representation. * Format a double or long number using base-10 representation.
* *
* @param number The value to be formatted. * @param number The value to be formatted.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. * of fields generated by this format call.
* Can be NULL. * Can be NULL.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft 4.4 * @stable 4.4
*/ */
virtual UnicodeString& format(double number, virtual UnicodeString& format(double number,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Format a long number using base-10 representation. * Format a long number using base-10 representation.
* *
* @param number The value to be formatted. * @param number The value to be formatted.
skipping to change at line 888 skipping to change at line 891
* Format a long number using base-10 representation. * Format a long number using base-10 representation.
* *
* @param number The value to be formatted. * @param number The value to be formatted.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. * of fields generated by this format call.
* Can be NULL. * Can be NULL.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft 4.4 * @stable 4.4
*/ */
virtual UnicodeString& format(int32_t number, virtual UnicodeString& format(int32_t number,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Format an int64 number using base-10 representation. * Format an int64 number using base-10 representation.
* *
* @param number The value to be formatted. * @param number The value to be formatted.
skipping to change at line 921 skipping to change at line 924
* Format an int64 number using base-10 representation. * Format an int64 number using base-10 representation.
* *
* @param number The value to be formatted. * @param number The value to be formatted.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. * of fields generated by this format call.
* Can be NULL. * Can be NULL.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft 4.4 * @stable 4.4
*/ */
virtual UnicodeString& format(int64_t number, virtual UnicodeString& format(int64_t number,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Format a decimal number. * Format a decimal number.
* The syntax of the unformatted number is a "numeric string" * The syntax of the unformatted number is a "numeric string"
* as defined in the Decimal Arithmetic Specification, available at * as defined in the Decimal Arithmetic Specification, available at
* http://speleotrove.com/decimal * http://speleotrove.com/decimal
* *
* @param number The unformatted number, as a string. * @param number The unformatted number, as a string.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. * of fields generated by this format call.
* Can be NULL. * Can be NULL.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft 4.4 * @stable 4.4
*/ */
virtual UnicodeString& format(const StringPiece &number, virtual UnicodeString& format(const StringPiece &number,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Format a decimal number. * Format a decimal number.
* The number is a DigitList wrapper onto a floating point decimal numb er. * The number is a DigitList wrapper onto a floating point decimal numb er.
* The default implementation in NumberFormat converts the decimal numb er * The default implementation in NumberFormat converts the decimal numb er
 End of changes. 5 change blocks. 
4 lines changed or deleted 7 lines changed or added


 docmain.h   docmain.h 
/******************************************************************** /********************************************************************
* COPYRIGHT: * COPYRIGHT:
* Copyright (c) 1997-2009, International Business Machines Corporation and * Copyright (c) 1997-2010, International Business Machines Corporation and
* others. All Rights Reserved. * others. All Rights Reserved.
* *
* FILE NAME: DOCMAIN.h * FILE NAME: DOCMAIN.h
* *
* Date Name Description * Date Name Description
* 12/11/2000 Ram Creation. * 12/11/2000 Ram Creation.
*/ */
/* This file contains documentation for Doxygen and doesnot have /* This file contains documentation for Doxygen and doesnot have
* any significance with respect to C or C++ API * any significance with respect to C or C++ API
skipping to change at line 182 skipping to change at line 182
* <td>StringPrep</td> * <td>StringPrep</td>
* <td>usprep.h</td> * <td>usprep.h</td>
* <td>usprep.h C API</td> * <td>usprep.h C API</td>
* </tr> * </tr>
* <tr> * <tr>
* <td>International Domain Names in Applications</td> * <td>International Domain Names in Applications</td>
* <td>uidna.h</td> * <td>uidna.h</td>
* <td>uidna.h C API</td> * <td>uidna.h C API</td>
* </tr> * </tr>
* <tr> * <tr>
* <td>Identifier Spoofing & Confusability</td>
* <td>uspoof.h</td>
* <td>uspoof.h C API</td>
* <tr>
* <td>Universal Time Scale</td> * <td>Universal Time Scale</td>
* <td>utmscale.h</td> * <td>utmscale.h</td>
* <td>utmscale.h C API</td> * <td>utmscale.h C API</td>
* </tr> * </tr>
* <tr> * <tr>
* <td>Basic Layout Engine Types and Constants</td> * <td>Basic Layout Engine Types and Constants</td>
* <td>(no C API)</td> * <td>(no C API)</td>
* <td>LETypes.h</td> * <td>LETypes.h</td>
* </tr> * </tr>
* <tr> * <tr>
 End of changes. 2 change blocks. 
1 lines changed or deleted 5 lines changed or added


 dtptngen.h   dtptngen.h 
/* /*
*************************************************************************** **** *************************************************************************** ****
* Copyright (C) 2007-2009, International Business Machines Corporation and * Copyright (C) 2007-2010, International Business Machines Corporation and
* others. All Rights Reserved. * others. All Rights Reserved.
*************************************************************************** **** *************************************************************************** ****
* *
* File DTPTNGEN.H * File DTPTNGEN.H
* *
*************************************************************************** **** *************************************************************************** ****
*/ */
#ifndef __DTPTNGEN_H__ #ifndef __DTPTNGEN_H__
#define __DTPTNGEN_H__ #define __DTPTNGEN_H__
skipping to change at line 271 skipping to change at line 271
* @param options * @param options
* Options for forcing the length of specified fields in the * Options for forcing the length of specified fields in the
* returned pattern to match those in the skeleton (when thi s * returned pattern to match those in the skeleton (when thi s
* would not happen otherwise). For default behavior, use * would not happen otherwise). For default behavior, use
* UDATPG_MATCH_NO_OPTIONS. * UDATPG_MATCH_NO_OPTIONS.
* @param status * @param status
* Output param set to success/failure code on exit, * Output param set to success/failure code on exit,
* which must not indicate a failure before the function cal l. * which must not indicate a failure before the function cal l.
* @return bestPattern * @return bestPattern
* The best pattern found from the given skeleton. * The best pattern found from the given skeleton.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UnicodeString getBestPattern(const UnicodeString& skeleton, UnicodeString getBestPattern(const UnicodeString& skeleton,
UDateTimePatternMatchOptions options, UDateTimePatternMatchOptions options,
UErrorCode& status); UErrorCode& status);
/** /**
* Adjusts the field types (width and subtype) of a pattern to match wh at is * Adjusts the field types (width and subtype) of a pattern to match wh at is
* in a skeleton. That is, if you supply a pattern like "d-M H:m", and a * in a skeleton. That is, if you supply a pattern like "d-M H:m", and a
* skeleton of "MMMMddhhmm", then the input pattern is adjusted to be * skeleton of "MMMMddhhmm", then the input pattern is adjusted to be
* "dd-MMMM hh:mm". This is used internally to get the best match for t he * "dd-MMMM hh:mm". This is used internally to get the best match for t he
skipping to change at line 317 skipping to change at line 317
* For example, "MMMdd" and "mmhh" are skeletons. * For example, "MMMdd" and "mmhh" are skeletons.
* @param options * @param options
* Options controlling whether the length of specified field s in the * Options controlling whether the length of specified field s in the
* pattern are adjusted to match those in the skeleton (when this * pattern are adjusted to match those in the skeleton (when this
* would not happen otherwise). For default behavior, use * would not happen otherwise). For default behavior, use
* UDATPG_MATCH_NO_OPTIONS. * UDATPG_MATCH_NO_OPTIONS.
* @param status * @param status
* Output param set to success/failure code on exit, * Output param set to success/failure code on exit,
* which must not indicate a failure before the function cal l. * which must not indicate a failure before the function cal l.
* @return pattern adjusted to match the skeleton fields widths and sub types. * @return pattern adjusted to match the skeleton fields widths and sub types.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UnicodeString replaceFieldTypes(const UnicodeString& pattern, UnicodeString replaceFieldTypes(const UnicodeString& pattern,
const UnicodeString& skeleton, const UnicodeString& skeleton,
UDateTimePatternMatchOptions options, UDateTimePatternMatchOptions options,
UErrorCode& status); UErrorCode& status);
/** /**
* Return a list of all the skeletons (in canonical form) from this cla ss. * Return a list of all the skeletons (in canonical form) from this cla ss.
* *
* Call getPatternForSkeleton() to get the corresponding pattern. * Call getPatternForSkeleton() to get the corresponding pattern.
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 errorcode.h   errorcode.h 
skipping to change at line 109 skipping to change at line 109
void set(UErrorCode value) { errorCode=value; } void set(UErrorCode value) { errorCode=value; }
/** Returns the UErrorCode value and resets it to U_ZERO_ERROR. @stable ICU 4.2 */ /** Returns the UErrorCode value and resets it to U_ZERO_ERROR. @stable ICU 4.2 */
UErrorCode reset(); UErrorCode reset();
/** /**
* Asserts isSuccess(). * Asserts isSuccess().
* In other words, this method checks for a failure code, * In other words, this method checks for a failure code,
* and the base class handles it like this: * and the base class handles it like this:
* \code * \code
* if(isFailure()) { handleFailure(); } * if(isFailure()) { handleFailure(); }
* \endcode * \endcode
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
void assertSuccess() const; void assertSuccess() const;
/** /**
* Return a string for the UErrorCode value. * Return a string for the UErrorCode value.
* The string will be the same as the name of the error code constant * The string will be the same as the name of the error code constant
* in the UErrorCode enum. * in the UErrorCode enum.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
const char* errorName() const; const char* errorName() const;
protected: protected:
/** /**
* Internal UErrorCode, accessible to subclasses. * Internal UErrorCode, accessible to subclasses.
* @stable ICU 4.2 * @stable ICU 4.2
*/ */
UErrorCode errorCode; UErrorCode errorCode;
/** /**
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 fmtable.h   fmtable.h 
skipping to change at line 121 skipping to change at line 121
* Creates a Formattable object of an appropriate numeric type from a * Creates a Formattable object of an appropriate numeric type from a
* a decimal number in string form. The Formattable will retain the * a decimal number in string form. The Formattable will retain the
* full precision of the input in decimal format, even when it exceeds * full precision of the input in decimal format, even when it exceeds
* what can be represented by a double of int64_t. * what can be represented by a double of int64_t.
* *
* @param number the unformatted (not localized) string representation * @param number the unformatted (not localized) string representation
* of the Decimal number. * of the Decimal number.
* @param status the error code. Possible errors include U_INVALID_FO RMAT_ERROR * @param status the error code. Possible errors include U_INVALID_FO RMAT_ERROR
* if the format of the string does not conform to that of a * if the format of the string does not conform to that of a
* decimal number. * decimal number.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
Formattable(const StringPiece &number, UErrorCode &status); Formattable(const StringPiece &number, UErrorCode &status);
/** /**
* Creates a Formattable object with a UnicodeString object to copy fro m. * Creates a Formattable object with a UnicodeString object to copy fro m.
* @param strToCopy the UnicodeString string. * @param strToCopy the UnicodeString string.
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
Formattable(const UnicodeString& strToCopy); Formattable(const UnicodeString& strToCopy);
skipping to change at line 479 skipping to change at line 479
* *
* This function is not thread safe, and therfore is not declared const , * This function is not thread safe, and therfore is not declared const ,
* even though it is logically const. * even though it is logically const.
* *
* Possible errors include U_MEMORY_ALLOCATION_ERROR, and * Possible errors include U_MEMORY_ALLOCATION_ERROR, and
* U_INVALID_STATE if the formattable object has not been set to * U_INVALID_STATE if the formattable object has not been set to
* a numeric type. * a numeric type.
* *
* @param status the error code. * @param status the error code.
* @return the unformatted string representation of a number. * @return the unformatted string representation of a number.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
StringPiece getDecimalNumber(UErrorCode &status); StringPiece getDecimalNumber(UErrorCode &status);
/** /**
* Sets the double value of this object and changes the type to * Sets the double value of this object and changes the type to
* kDouble. * kDouble.
* @param d the new double value to be set. * @param d the new double value to be set.
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
void setDouble(double d); void setDouble(double d);
skipping to change at line 568 skipping to change at line 568
* the type to to a numeric type appropriate for the number. * the type to to a numeric type appropriate for the number.
* The syntax of the number is a "numeric string" * The syntax of the number is a "numeric string"
* as defined in the Decimal Arithmetic Specification, available at * as defined in the Decimal Arithmetic Specification, available at
* http://speleotrove.com/decimal * http://speleotrove.com/decimal
* The full precision and range of the input number will be retained, * The full precision and range of the input number will be retained,
* even when it exceeds what can be represented by a double or an int64 . * even when it exceeds what can be represented by a double or an int64 .
* *
* @param numberString a string representation of the unformatted deci mal number. * @param numberString a string representation of the unformatted deci mal number.
* @param status the error code. Set to U_INVALID_FORMAT_ERROR if the * @param status the error code. Set to U_INVALID_FORMAT_ERROR if the
* incoming string is not a valid decimal number. * incoming string is not a valid decimal number.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
void setDecimalNumber(const StringPiece &numberString, void setDecimalNumber(const StringPiece &numberString,
UErrorCode &status); UErrorCode &status);
/** /**
* ICU "poor man's RTTI", returns a UClassID for the actual class. * ICU "poor man's RTTI", returns a UClassID for the actual class.
* *
* @stable ICU 2.2 * @stable ICU 2.2
*/ */
virtual UClassID getDynamicClassID() const; virtual UClassID getDynamicClassID() const;
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 format.h   format.h 
skipping to change at line 88 skipping to change at line 88
* and MessageFormat headers for further information. * and MessageFormat headers for further information.
* <P> * <P>
* If formatting is unsuccessful, a failing UErrorCode is returned when * If formatting is unsuccessful, a failing UErrorCode is returned when
* the Format cannot format the type of object, otherwise if there is * the Format cannot format the type of object, otherwise if there is
* something illformed about the the Unicode replacement character * something illformed about the the Unicode replacement character
* 0xFFFD is returned. * 0xFFFD is returned.
* <P> * <P>
* If there is no match when parsing, a parse failure UErrorCode is * If there is no match when parsing, a parse failure UErrorCode is
* retured for methods which take no ParsePosition. For the method * retured for methods which take no ParsePosition. For the method
* that takes a ParsePosition, the index parameter is left unchanged. * that takes a ParsePosition, the index parameter is left unchanged.
* The Format class can support either strict or lenient parsing where
* appropriate (see isLenient, setLenient). By default parsing is
* lenient in the Format base class; subclasses may have a different
* default (for example, in NumberFormat, parsing is strict by default
* for backwards compatibility).
* <P> * <P>
* <em>User subclasses are not supported.</em> While clients may write * <em>User subclasses are not supported.</em> While clients may write
* subclasses, such code will not necessarily work and will not be * subclasses, such code will not necessarily work and will not be
* guaranteed to work stably from release to release. * guaranteed to work stably from release to release.
*/ */
class U_I18N_API Format : public UObject { class U_I18N_API Format : public UObject {
public: public:
/** Destructor /** Destructor
* @stable ICU 2.4 * @stable ICU 2.4
skipping to change at line 181 skipping to change at line 176
* handle (e.g., if a numeric Formattable is passed to a DateFormat obj ect) * handle (e.g., if a numeric Formattable is passed to a DateFormat obj ect)
* then it returns a failing UErrorCode. * then it returns a failing UErrorCode.
* *
* @param obj The object to format. * @param obj The object to format.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. * of fields generated by this format call.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& format(const Formattable& obj, virtual UnicodeString& format(const Formattable& obj,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Parse a string to produce an object. This is a pure virtual * Parse a string to produce an object. This is a pure virtual
* method which subclasses must implement. This method allows * method which subclasses must implement. This method allows
* polymorphic parsing of strings into Formattable objects. * polymorphic parsing of strings into Formattable objects.
skipping to change at line 263 skipping to change at line 258
Locale getLocale(ULocDataLocaleType type, UErrorCode& status) const; Locale getLocale(ULocDataLocaleType type, UErrorCode& status) const;
/** Get the locale for this format object. You can choose between valid and actual locale. /** Get the locale for this format object. You can choose between valid and actual locale.
* @param type type of the locale we're looking for (valid or actual) * @param type type of the locale we're looking for (valid or actual)
* @param status error code for the operation * @param status error code for the operation
* @return the locale * @return the locale
* @internal * @internal
*/ */
const char* getLocaleID(ULocDataLocaleType type, UErrorCode &status) co nst; const char* getLocaleID(ULocDataLocaleType type, UErrorCode &status) co nst;
/**
* Controls lenient parse behavior. At the Format class level, lenient
parse
* is on by default. Format subclasses may have different default behav
ior
* for lenient parse.
*
* @see #isLenient
* @param lenient Sets lenient parse mode on (if TRUE) or off (if FALSE
).
* @draft ICU 4.6
*/
virtual void setLenient(UBool lenient);
/**
* Returns the status of lenient parse mode. At the Format class level,
* lenient parse is on by default. Format subclasses may have different
* default behavior for lenient parse.
*
* @see #setLenient
* @return Lenient parse mode status: TRUE if on, FALSE if off.
* @draft ICU 4.6
*/
virtual UBool isLenient(void) const;
protected: protected:
/** @stable ICU 2.8 */ /** @stable ICU 2.8 */
void setLocaleIDs(const char* valid, const char* actual); void setLocaleIDs(const char* valid, const char* actual);
protected: protected:
/** /**
* Default constructor for subclass use only. Does nothing. * Default constructor for subclass use only. Does nothing.
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
Format(); Format();
skipping to change at line 321 skipping to change at line 294
* @param parseError The UParseError object to fill in * @param parseError The UParseError object to fill in
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
static void syntaxError(const UnicodeString& pattern, static void syntaxError(const UnicodeString& pattern,
int32_t pos, int32_t pos,
UParseError& parseError); UParseError& parseError);
private: private:
char actualLocale[ULOC_FULLNAME_CAPACITY]; char actualLocale[ULOC_FULLNAME_CAPACITY];
char validLocale[ULOC_FULLNAME_CAPACITY]; char validLocale[ULOC_FULLNAME_CAPACITY];
UBool fLenient;
}; };
U_NAMESPACE_END U_NAMESPACE_END
#endif /* #if !UCONFIG_NO_FORMATTING */ #endif /* #if !UCONFIG_NO_FORMATTING */
#endif // _FORMAT #endif // _FORMAT
//eof //eof
 End of changes. 4 change blocks. 
32 lines changed or deleted 1 lines changed or added


 fpositer.h   fpositer.h 
skipping to change at line 51 skipping to change at line 51
#include "unicode/fieldpos.h" #include "unicode/fieldpos.h"
#include "unicode/umisc.h" #include "unicode/umisc.h"
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
class UVector32; class UVector32;
/** /**
* FieldPositionIterator returns the field ids and their start/limit positi ons generated * FieldPositionIterator returns the field ids and their start/limit positi ons generated
* by a call to Format::format. See Format, NumberFormat, DecimalFormat. * by a call to Format::format. See Format, NumberFormat, DecimalFormat.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
class U_I18N_API FieldPositionIterator : public UObject { class U_I18N_API FieldPositionIterator : public UObject {
public: public:
/** /**
* Destructor. * Destructor.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
~FieldPositionIterator(); ~FieldPositionIterator();
/** /**
* Constructs a new, empty iterator. * Constructs a new, empty iterator.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
FieldPositionIterator(void); FieldPositionIterator(void);
/** /**
* Copy constructor. If the copy failed for some reason, the new itera tor will * Copy constructor. If the copy failed for some reason, the new itera tor will
* be empty. * be empty.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
FieldPositionIterator(const FieldPositionIterator&); FieldPositionIterator(const FieldPositionIterator&);
/** /**
* Return true if another object is semantically equal to this * Return true if another object is semantically equal to this
* one. * one.
* <p> * <p>
* Return true if this FieldPositionIterator is at the same position in an * Return true if this FieldPositionIterator is at the same position in an
* equal array of run values. * equal array of run values.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UBool operator==(const FieldPositionIterator&) const; UBool operator==(const FieldPositionIterator&) const;
/** /**
* Returns the complement of the result of operator== * Returns the complement of the result of operator==
* @param rhs The FieldPositionIterator to be compared for inequality * @param rhs The FieldPositionIterator to be compared for inequality
* @return the complement of the result of operator== * @return the complement of the result of operator==
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UBool operator!=(const FieldPositionIterator& rhs) const { return !oper ator==(rhs); } UBool operator!=(const FieldPositionIterator& rhs) const { return !oper ator==(rhs); }
/** /**
* If the current position is valid, updates the FieldPosition values, advances the iterator, * If the current position is valid, updates the FieldPosition values, advances the iterator,
* and returns TRUE, otherwise returns FALSE. * and returns TRUE, otherwise returns FALSE.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UBool next(FieldPosition& fp); UBool next(FieldPosition& fp);
private: private:
friend class FieldPositionIteratorHandler; friend class FieldPositionIteratorHandler;
/** /**
* Sets the data used by the iterator, and resets the position. * Sets the data used by the iterator, and resets the position.
* Returns U_ILLEGAL_ARGUMENT_ERROR in status if the data is not valid * Returns U_ILLEGAL_ARGUMENT_ERROR in status if the data is not valid
* (length is not a multiple of 3, or start >= limit for any run). * (length is not a multiple of 3, or start >= limit for any run).
 End of changes. 7 change blocks. 
7 lines changed or deleted 7 lines changed or added


 localpointer.h   localpointer.h 
/* /*
*************************************************************************** **** *************************************************************************** ****
* *
* Copyright (C) 2009, International Business Machines * Copyright (C) 2009-2010, International Business Machines
* Corporation and others. All Rights Reserved. * Corporation and others. All Rights Reserved.
* *
*************************************************************************** **** *************************************************************************** ****
* file name: localpointer.h * file name: localpointer.h
* encoding: US-ASCII * encoding: US-ASCII
* tab size: 8 (not used) * tab size: 8 (not used)
* indentation:4 * indentation:4
* *
* created on: 2009nov13 * created on: 2009nov13
* created by: Markus W. Scherer * created by: Markus W. Scherer
skipping to change at line 61 skipping to change at line 61
* A subclass must implement methods that delete the pointer: * A subclass must implement methods that delete the pointer:
* Destructor and adoptInstead(). * Destructor and adoptInstead().
* *
* There is no operator T *() provided because the programmer must decide * There is no operator T *() provided because the programmer must decide
* whether to use getAlias() (without transfer of ownership) or orpan() * whether to use getAlias() (without transfer of ownership) or orpan()
* (with transfer of ownership and NULLing of the pointer). * (with transfer of ownership and NULLing of the pointer).
* *
* @see LocalPointer * @see LocalPointer
* @see LocalArray * @see LocalArray
* @see U_DEFINE_LOCAL_OPEN_POINTER * @see U_DEFINE_LOCAL_OPEN_POINTER
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
template<typename T> template<typename T>
class LocalPointerBase { class LocalPointerBase {
public: public:
/** /**
* Constructor takes ownership. * Constructor takes ownership.
* @param p simple pointer to an object that is adopted * @param p simple pointer to an object that is adopted
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
explicit LocalPointerBase(T *p=NULL) : ptr(p) {} explicit LocalPointerBase(T *p=NULL) : ptr(p) {}
/** /**
* Destructor deletes the object it owns. * Destructor deletes the object it owns.
* Subclass must override: Base class does nothing. * Subclass must override: Base class does nothing.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
~LocalPointerBase() { /* delete ptr; */ } ~LocalPointerBase() { /* delete ptr; */ }
/** /**
* NULL check. * NULL check.
* @return TRUE if ==NULL * @return TRUE if ==NULL
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UBool isNull() const { return ptr==NULL; } UBool isNull() const { return ptr==NULL; }
/** /**
* NULL check. * NULL check.
* @return TRUE if !=NULL * @return TRUE if !=NULL
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UBool isValid() const { return ptr!=NULL; } UBool isValid() const { return ptr!=NULL; }
/** /**
* Comparison with a simple pointer, so that existing code * Comparison with a simple pointer, so that existing code
* with ==NULL need not be changed. * with ==NULL need not be changed.
* @param other simple pointer for comparison * @param other simple pointer for comparison
* @return true if this pointer value equals other * @return true if this pointer value equals other
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
bool operator==(const T *other) const { return ptr==other; } bool operator==(const T *other) const { return ptr==other; }
/** /**
* Comparison with a simple pointer, so that existing code * Comparison with a simple pointer, so that existing code
* with !=NULL need not be changed. * with !=NULL need not be changed.
* @param other simple pointer for comparison * @param other simple pointer for comparison
* @return true if this pointer value differs from other * @return true if this pointer value differs from other
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
bool operator!=(const T *other) const { return ptr!=other; } bool operator!=(const T *other) const { return ptr!=other; }
/** /**
* Access without ownership change. * Access without ownership change.
* @return the pointer value * @return the pointer value
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
T *getAlias() const { return ptr; } T *getAlias() const { return ptr; }
/** /**
* Access without ownership change. * Access without ownership change.
* @return the pointer value as a reference * @return the pointer value as a reference
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
T &operator*() const { return *ptr; } T &operator*() const { return *ptr; }
/** /**
* Access without ownership change. * Access without ownership change.
* @return the pointer value * @return the pointer value
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
T *operator->() const { return ptr; } T *operator->() const { return ptr; }
/** /**
* Gives up ownership; the internal pointer becomes NULL. * Gives up ownership; the internal pointer becomes NULL.
* @return the pointer value; * @return the pointer value;
* caller becomes responsible for deleting the object * caller becomes responsible for deleting the object
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
T *orphan() { T *orphan() {
T *p=ptr; T *p=ptr;
ptr=NULL; ptr=NULL;
return p; return p;
} }
/** /**
* Deletes the object it owns, * Deletes the object it owns,
* and adopts (takes ownership of) the one passed in. * and adopts (takes ownership of) the one passed in.
* Subclass must override: Base class does not delete the object. * Subclass must override: Base class does not delete the object.
* @param p simple pointer to an object that is adopted * @param p simple pointer to an object that is adopted
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
void adoptInstead(T *p) { void adoptInstead(T *p) {
// delete ptr; // delete ptr;
ptr=p; ptr=p;
} }
protected: protected:
T *ptr; T *ptr;
private: private:
// No comparison operators with other LocalPointerBases. // No comparison operators with other LocalPointerBases.
bool operator==(const LocalPointerBase &other); bool operator==(const LocalPointerBase &other);
skipping to change at line 179 skipping to change at line 179
* LocalPointer<UnicodeString> s(new UnicodeString((UChar32)0x50005)); * LocalPointer<UnicodeString> s(new UnicodeString((UChar32)0x50005));
* int32_t length=s->length(); // 2 * int32_t length=s->length(); // 2
* UChar lead=s->charAt(0); // 0xd900 * UChar lead=s->charAt(0); // 0xd900
* if(some condition) { return; } // no need to explicitly delete the poin ter * if(some condition) { return; } // no need to explicitly delete the poin ter
* s.adoptInstead(new UnicodeString((UChar)0xfffc)); * s.adoptInstead(new UnicodeString((UChar)0xfffc));
* length=s->length(); // 1 * length=s->length(); // 1
* // no need to explicitly delete the pointer * // no need to explicitly delete the pointer
* \endcode * \endcode
* *
* @see LocalPointerBase * @see LocalPointerBase
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
template<typename T> template<typename T>
class LocalPointer : public LocalPointerBase<T> { class LocalPointer : public LocalPointerBase<T> {
public: public:
/** /**
* Constructor takes ownership. * Constructor takes ownership.
* @param p simple pointer to an object that is adopted * @param p simple pointer to an object that is adopted
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
explicit LocalPointer(T *p=NULL) : LocalPointerBase<T>(p) {} explicit LocalPointer(T *p=NULL) : LocalPointerBase<T>(p) {}
/** /**
* Destructor deletes the object it owns. * Destructor deletes the object it owns.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
~LocalPointer() { ~LocalPointer() {
delete LocalPointerBase<T>::ptr; delete LocalPointerBase<T>::ptr;
} }
/** /**
* Deletes the object it owns, * Deletes the object it owns,
* and adopts (takes ownership of) the one passed in. * and adopts (takes ownership of) the one passed in.
* @param p simple pointer to an object that is adopted * @param p simple pointer to an object that is adopted
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
void adoptInstead(T *p) { void adoptInstead(T *p) {
delete LocalPointerBase<T>::ptr; delete LocalPointerBase<T>::ptr;
LocalPointerBase<T>::ptr=p; LocalPointerBase<T>::ptr=p;
} }
}; };
/** /**
* "Smart pointer" class, deletes objects via the C++ array delete[] operat or. * "Smart pointer" class, deletes objects via the C++ array delete[] operat or.
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
skipping to change at line 225 skipping to change at line 225
* \code * \code
* LocalArray<UnicodeString> a(new UnicodeString[2]); * LocalArray<UnicodeString> a(new UnicodeString[2]);
* a[0].append((UChar)0x61); * a[0].append((UChar)0x61);
* if(some condition) { return; } // no need to explicitly delete the arra y * if(some condition) { return; } // no need to explicitly delete the arra y
* a.adoptInstead(new UnicodeString[4]); * a.adoptInstead(new UnicodeString[4]);
* a[3].append((UChar)0x62).append((UChar)0x63).reverse(); * a[3].append((UChar)0x62).append((UChar)0x63).reverse();
* // no need to explicitly delete the array * // no need to explicitly delete the array
* \endcode * \endcode
* *
* @see LocalPointerBase * @see LocalPointerBase
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
template<typename T> template<typename T>
class LocalArray : public LocalPointerBase<T> { class LocalArray : public LocalPointerBase<T> {
public: public:
/** /**
* Constructor takes ownership. * Constructor takes ownership.
* @param p simple pointer to an array of T objects that is adopted * @param p simple pointer to an array of T objects that is adopted
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
explicit LocalArray(T *p=NULL) : LocalPointerBase<T>(p) {} explicit LocalArray(T *p=NULL) : LocalPointerBase<T>(p) {}
/** /**
* Destructor deletes the array it owns. * Destructor deletes the array it owns.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
~LocalArray() { ~LocalArray() {
delete[] LocalPointerBase<T>::ptr; delete[] LocalPointerBase<T>::ptr;
} }
/** /**
* Deletes the array it owns, * Deletes the array it owns,
* and adopts (takes ownership of) the one passed in. * and adopts (takes ownership of) the one passed in.
* @param p simple pointer to an array of T objects that is adopted * @param p simple pointer to an array of T objects that is adopted
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
void adoptInstead(T *p) { void adoptInstead(T *p) {
delete[] LocalPointerBase<T>::ptr; delete[] LocalPointerBase<T>::ptr;
LocalPointerBase<T>::ptr=p; LocalPointerBase<T>::ptr=p;
} }
/** /**
* Array item access (writable). * Array item access (writable).
* No index bounds check. * No index bounds check.
* @param i array index * @param i array index
* @return reference to the array item * @return reference to the array item
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
T &operator[](ptrdiff_t i) const { return LocalPointerBase<T>::ptr[i]; } T &operator[](ptrdiff_t i) const { return LocalPointerBase<T>::ptr[i]; }
}; };
/** /**
* \def U_DEFINE_LOCAL_OPEN_POINTER * \def U_DEFINE_LOCAL_OPEN_POINTER
* "Smart pointer" definition macro, deletes objects via the closeFunction. * "Smart pointer" definition macro, deletes objects via the closeFunction.
* Defines a subclass of LocalPointerBase which works just * Defines a subclass of LocalPointerBase which works just
* like LocalPointer<Type> except that this subclass will use the closeFunc tion * like LocalPointer<Type> except that this subclass will use the closeFunc tion
* rather than the C++ delete operator. * rather than the C++ delete operator.
skipping to change at line 284 skipping to change at line 284
* \code * \code
* LocalUCaseMapPointer csm(ucasemap_open(localeID, options, &errorCode)); * LocalUCaseMapPointer csm(ucasemap_open(localeID, options, &errorCode));
* utf8OutLength=ucasemap_utf8ToLower(csm.getAlias(), * utf8OutLength=ucasemap_utf8ToLower(csm.getAlias(),
* utf8Out, (int32_t)sizeof(utf8Out), * utf8Out, (int32_t)sizeof(utf8Out),
* utf8In, utf8InLength, &errorCode); * utf8In, utf8InLength, &errorCode);
* if(U_FAILURE(errorCode)) { return; } // no need to explicitly delete th e UCaseMap * if(U_FAILURE(errorCode)) { return; } // no need to explicitly delete th e UCaseMap
* \endcode * \endcode
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
#define U_DEFINE_LOCAL_OPEN_POINTER(LocalPointerClassName, Type, closeFunct ion) \ #define U_DEFINE_LOCAL_OPEN_POINTER(LocalPointerClassName, Type, closeFunct ion) \
class LocalPointerClassName : public LocalPointerBase<Type> { \ class LocalPointerClassName : public LocalPointerBase<Type> { \
public: \ public: \
explicit LocalPointerClassName(Type *p=NULL) : LocalPointerBase<Typ e>(p) {} \ explicit LocalPointerClassName(Type *p=NULL) : LocalPointerBase<Typ e>(p) {} \
~LocalPointerClassName() { closeFunction(ptr); } \ ~LocalPointerClassName() { closeFunction(ptr); } \
void adoptInstead(Type *p) { \ void adoptInstead(Type *p) { \
closeFunction(ptr); \ closeFunction(ptr); \
ptr=p; \ ptr=p; \
} \ } \
 End of changes. 23 change blocks. 
23 lines changed or deleted 23 lines changed or added


 locdspnm.h   locdspnm.h 
skipping to change at line 30 skipping to change at line 30
#include "unicode/locid.h" #include "unicode/locid.h"
#include "unicode/uscript.h" #include "unicode/uscript.h"
#include "unicode/uldnames.h" #include "unicode/uldnames.h"
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* Returns display names of Locales and components of Locales. For * Returns display names of Locales and components of Locales. For
* more information on language, script, region, variant, key, and * more information on language, script, region, variant, key, and
* values, see Locale. * values, see Locale.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
class U_I18N_API LocaleDisplayNames : public UObject { class U_I18N_API LocaleDisplayNames : public UObject {
public: public:
/** /**
* Destructor. * Destructor.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual ~LocaleDisplayNames(); virtual ~LocaleDisplayNames();
/** /**
* Convenience overload of * Convenience overload of
* {@link #createInstance(const Locale& locale, UDialectHandling dialec tHandling)} * {@link #createInstance(const Locale& locale, UDialectHandling dialec tHandling)}
* that specifies STANDARD dialect handling. * that specifies STANDARD dialect handling.
* @param locale the display locale * @param locale the display locale
* @return a LocaleDisplayNames instance * @return a LocaleDisplayNames instance
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
static LocaleDisplayNames* U_EXPORT2 createInstance(const Locale& local e); static LocaleDisplayNames* U_EXPORT2 createInstance(const Locale& local e);
/** /**
* Returns an instance of LocaleDisplayNames that returns names * Returns an instance of LocaleDisplayNames that returns names
* formatted for the provided locale, using the provided * formatted for the provided locale, using the provided
* dialectHandling. * dialectHandling.
* *
* @param locale the display locale * @param locale the display locale
* @param dialectHandling how to select names for locales * @param dialectHandling how to select names for locales
* @return a LocaleDisplayNames instance * @return a LocaleDisplayNames instance
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
static LocaleDisplayNames* U_EXPORT2 createInstance(const Locale& local e, static LocaleDisplayNames* U_EXPORT2 createInstance(const Locale& local e,
UDialectHandling dia lectHandling); UDialectHandling dia lectHandling);
// getters for state // getters for state
/** /**
* Returns the locale used to determine the display names. This is * Returns the locale used to determine the display names. This is
* not necessarily the same locale passed to {@link #getInstance}. * not necessarily the same locale passed to {@link #getInstance}.
* @return the display locale * @return the display locale
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual const Locale& getLocale() const = 0; virtual const Locale& getLocale() const = 0;
/** /**
* Returns the dialect handling used in the display names. * Returns the dialect handling used in the display names.
* @return the dialect handling enum * @return the dialect handling enum
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UDialectHandling getDialectHandling() const = 0; virtual UDialectHandling getDialectHandling() const = 0;
// names for entire locales // names for entire locales
/** /**
* Returns the display name of the provided locale. * Returns the display name of the provided locale.
* @param locale the locale whose display name to return * @param locale the locale whose display name to return
* @param result receives the locale's display name * @param result receives the locale's display name
* @return the display name of the provided locale * @return the display name of the provided locale
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& localeDisplayName(const Locale& locale, virtual UnicodeString& localeDisplayName(const Locale& locale,
UnicodeString& result) const = 0; UnicodeString& result) const = 0;
/** /**
* Returns the display name of the provided locale id. * Returns the display name of the provided locale id.
* @param localeId the id of the locale whose display name to return * @param localeId the id of the locale whose display name to return
* @param result receives the locale's display name * @param result receives the locale's display name
* @return the display name of the provided locale * @return the display name of the provided locale
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& localeDisplayName(const char* localeId, virtual UnicodeString& localeDisplayName(const char* localeId,
UnicodeString& result) const = 0; UnicodeString& result) const = 0;
// names for components of a locale id // names for components of a locale id
/** /**
* Returns the display name of the provided language code. * Returns the display name of the provided language code.
* @param lang the language code * @param lang the language code
* @param result receives the language code's display name * @param result receives the language code's display name
* @return the display name of the provided language code * @return the display name of the provided language code
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& languageDisplayName(const char* lang, virtual UnicodeString& languageDisplayName(const char* lang,
UnicodeString& result) const = 0; UnicodeString& result) const = 0;
/** /**
* Returns the display name of the provided script code. * Returns the display name of the provided script code.
* @param script the script code * @param script the script code
* @param result receives the script code's display name * @param result receives the script code's display name
* @return the display name of the provided script code * @return the display name of the provided script code
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& scriptDisplayName(const char* script, virtual UnicodeString& scriptDisplayName(const char* script,
UnicodeString& result) const = 0; UnicodeString& result) const = 0;
/** /**
* Returns the display name of the provided script code. * Returns the display name of the provided script code.
* @param scriptCode the script code number * @param scriptCode the script code number
* @param result receives the script code's display name * @param result receives the script code's display name
* @return the display name of the provided script code * @return the display name of the provided script code
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& scriptDisplayName(UScriptCode scriptCode, virtual UnicodeString& scriptDisplayName(UScriptCode scriptCode,
UnicodeString& result) const = 0; UnicodeString& result) const = 0;
/** /**
* Returns the display name of the provided region code. * Returns the display name of the provided region code.
* @param region the region code * @param region the region code
* @param result receives the region code's display name * @param result receives the region code's display name
* @return the display name of the provided region code * @return the display name of the provided region code
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& regionDisplayName(const char* region, virtual UnicodeString& regionDisplayName(const char* region,
UnicodeString& result) const = 0; UnicodeString& result) const = 0;
/** /**
* Returns the display name of the provided variant. * Returns the display name of the provided variant.
* @param variant the variant string * @param variant the variant string
* @param result receives the variant's display name * @param result receives the variant's display name
* @return the display name of the provided variant * @return the display name of the provided variant
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& variantDisplayName(const char* variant, virtual UnicodeString& variantDisplayName(const char* variant,
UnicodeString& result) const = 0; UnicodeString& result) const = 0;
/** /**
* Returns the display name of the provided locale key. * Returns the display name of the provided locale key.
* @param key the locale key name * @param key the locale key name
* @param result receives the locale key's display name * @param result receives the locale key's display name
* @return the display name of the provided locale key * @return the display name of the provided locale key
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& keyDisplayName(const char* key, virtual UnicodeString& keyDisplayName(const char* key,
UnicodeString& result) const = 0; UnicodeString& result) const = 0;
/** /**
* Returns the display name of the provided value (used with the provid ed key). * Returns the display name of the provided value (used with the provid ed key).
* @param key the locale key name * @param key the locale key name
* @param value the locale key's value * @param value the locale key's value
* @param result receives the value's display name * @param result receives the value's display name
* @return the display name of the provided value * @return the display name of the provided value
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& keyValueDisplayName(const char* key, const char* value, virtual UnicodeString& keyValueDisplayName(const char* key, const char* value,
UnicodeString& result) const = 0; UnicodeString& result) const = 0;
private: private:
// No ICU "poor man's RTTI" for this class nor its subclasses. // No ICU "poor man's RTTI" for this class nor its subclasses.
virtual UClassID getDynamicClassID() const; virtual UClassID getDynamicClassID() const;
}; };
inline LocaleDisplayNames::~LocaleDisplayNames() { inline LocaleDisplayNames::~LocaleDisplayNames() {
 End of changes. 15 change blocks. 
15 lines changed or deleted 15 lines changed or added


 locid.h   locid.h 
skipping to change at line 183 skipping to change at line 183
* UnicodeString& displayName) * UnicodeString& displayName)
* </pre> * </pre>
* \htmlonly</blockquote>\endhtmlonly * \htmlonly</blockquote>\endhtmlonly
* *
* @stable ICU 2.0 * @stable ICU 2.0
* @see ResourceBundle * @see ResourceBundle
*/ */
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
class U_COMMON_API Locale : public UObject { class U_COMMON_API Locale : public UObject {
public: public:
/** Useful constant for the Root locale. @draft ICU 4.4 */ /** Useful constant for the Root locale. @stable ICU 4.4 */
static const Locale &U_EXPORT2 getRoot(void); static const Locale &U_EXPORT2 getRoot(void);
/** Useful constant for this language. @stable ICU 2.0 */ /** Useful constant for this language. @stable ICU 2.0 */
static const Locale &U_EXPORT2 getEnglish(void); static const Locale &U_EXPORT2 getEnglish(void);
/** Useful constant for this language. @stable ICU 2.0 */ /** Useful constant for this language. @stable ICU 2.0 */
static const Locale &U_EXPORT2 getFrench(void); static const Locale &U_EXPORT2 getFrench(void);
/** Useful constant for this language. @stable ICU 2.0 */ /** Useful constant for this language. @stable ICU 2.0 */
static const Locale &U_EXPORT2 getGerman(void); static const Locale &U_EXPORT2 getGerman(void);
/** Useful constant for this language. @stable ICU 2.0 */ /** Useful constant for this language. @stable ICU 2.0 */
static const Locale &U_EXPORT2 getItalian(void); static const Locale &U_EXPORT2 getItalian(void);
/** Useful constant for this language. @stable ICU 2.0 */ /** Useful constant for this language. @stable ICU 2.0 */
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 normalizer2.h   normalizer2.h 
skipping to change at line 76 skipping to change at line 76
* *
* Iterative normalization is useful when only a small portion of a * Iterative normalization is useful when only a small portion of a
* longer string needs to be processed. * longer string needs to be processed.
* For example, in ICU, iterative normalization is used by the Normalizatio nTransliterator * For example, in ICU, iterative normalization is used by the Normalizatio nTransliterator
* (to avoid replacing already-normalized text) and ucol_nextSortKeyPart() * (to avoid replacing already-normalized text) and ucol_nextSortKeyPart()
* (to process only the substring for which sort key bytes are computed). * (to process only the substring for which sort key bytes are computed).
* *
* The set of normalization boundaries returned by these functions may not be * The set of normalization boundaries returned by these functions may not be
* complete: There may be more boundaries that could be returned. * complete: There may be more boundaries that could be returned.
* Different functions may return different boundaries. * Different functions may return different boundaries.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
class U_COMMON_API Normalizer2 : public UObject { class U_COMMON_API Normalizer2 : public UObject {
public: public:
/** /**
* Returns a Normalizer2 instance which uses the specified data file * Returns a Normalizer2 instance which uses the specified data file
* (packageName/name similar to ucnv_openPackage() and ures_open()/Reso urceBundle) * (packageName/name similar to ucnv_openPackage() and ures_open()/Reso urceBundle)
* and which composes or decomposes text according to the specified mod e. * and which composes or decomposes text according to the specified mod e.
* Returns an unmodifiable singleton instance. Do not delete it. * Returns an unmodifiable singleton instance. Do not delete it.
* *
* Use packageName=NULL for data files that are part of ICU's own data. * Use packageName=NULL for data files that are part of ICU's own data.
skipping to change at line 99 skipping to change at line 99
* Use name="nfkc_cf" and UNORM2_COMPOSE for Unicode standard NFKC_CF=N FKC_Casefold. * Use name="nfkc_cf" and UNORM2_COMPOSE for Unicode standard NFKC_CF=N FKC_Casefold.
* *
* @param packageName NULL for ICU built-in data, otherwise application data package name * @param packageName NULL for ICU built-in data, otherwise application data package name
* @param name "nfc" or "nfkc" or "nfkc_cf" or name of custom data file * @param name "nfc" or "nfkc" or "nfkc_cf" or name of custom data file
* @param mode normalization mode (compose or decompose etc.) * @param mode normalization mode (compose or decompose etc.)
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return the requested Normalizer2, if successful * @return the requested Normalizer2, if successful
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
static const Normalizer2 * static const Normalizer2 *
getInstance(const char *packageName, getInstance(const char *packageName,
const char *name, const char *name,
UNormalization2Mode mode, UNormalization2Mode mode,
UErrorCode &errorCode); UErrorCode &errorCode);
/** /**
* Returns the normalized form of the source string. * Returns the normalized form of the source string.
* @param src source string * @param src source string
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return normalized src * @return normalized src
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UnicodeString UnicodeString
normalize(const UnicodeString &src, UErrorCode &errorCode) const { normalize(const UnicodeString &src, UErrorCode &errorCode) const {
UnicodeString result; UnicodeString result;
normalize(src, result, errorCode); normalize(src, result, errorCode);
return result; return result;
} }
/** /**
* Writes the normalized form of the source string to the destination s tring * Writes the normalized form of the source string to the destination s tring
* (replacing its contents) and returns the destination string. * (replacing its contents) and returns the destination string.
* The source and destination strings must be different objects. * The source and destination strings must be different objects.
* @param src source string * @param src source string
* @param dest destination string; its contents is replaced with normal ized src * @param dest destination string; its contents is replaced with normal ized src
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return dest * @return dest
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString & virtual UnicodeString &
normalize(const UnicodeString &src, normalize(const UnicodeString &src,
UnicodeString &dest, UnicodeString &dest,
UErrorCode &errorCode) const = 0; UErrorCode &errorCode) const = 0;
/** /**
* Appends the normalized form of the second string to the first string * Appends the normalized form of the second string to the first string
* (merging them at the boundary) and returns the first string. * (merging them at the boundary) and returns the first string.
* The result is normalized if the first string was normalized. * The result is normalized if the first string was normalized.
* The first and second strings must be different objects. * The first and second strings must be different objects.
* @param first string, should be normalized * @param first string, should be normalized
* @param second string, will be normalized * @param second string, will be normalized
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return first * @return first
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString & virtual UnicodeString &
normalizeSecondAndAppend(UnicodeString &first, normalizeSecondAndAppend(UnicodeString &first,
const UnicodeString &second, const UnicodeString &second,
UErrorCode &errorCode) const = 0; UErrorCode &errorCode) const = 0;
/** /**
* Appends the second string to the first string * Appends the second string to the first string
* (merging them at the boundary) and returns the first string. * (merging them at the boundary) and returns the first string.
* The result is normalized if both the strings were normalized. * The result is normalized if both the strings were normalized.
* The first and second strings must be different objects. * The first and second strings must be different objects.
* @param first string, should be normalized * @param first string, should be normalized
* @param second string, should be normalized * @param second string, should be normalized
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return first * @return first
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString & virtual UnicodeString &
append(UnicodeString &first, append(UnicodeString &first,
const UnicodeString &second, const UnicodeString &second,
UErrorCode &errorCode) const = 0; UErrorCode &errorCode) const = 0;
/** /**
* Gets the decomposition mapping of c. Equivalent to normalize(Unicode String(c)) * Gets the decomposition mapping of c. Equivalent to normalize(Unicode String(c))
* on a UNORM2_DECOMPOSE Normalizer2 instance, but much faster. * on a UNORM2_DECOMPOSE Normalizer2 instance, but much faster.
* This function is independent of the mode of the Normalizer2. * This function is independent of the mode of the Normalizer2.
skipping to change at line 202 skipping to change at line 202
* Internally, in cases where the quickCheck() method would return "may be" * Internally, in cases where the quickCheck() method would return "may be"
* (which is only possible for the two COMPOSE modes) this method * (which is only possible for the two COMPOSE modes) this method
* resolves to "yes" or "no" to provide a definitive result, * resolves to "yes" or "no" to provide a definitive result,
* at the cost of doing more work in those cases. * at the cost of doing more work in those cases.
* @param s input string * @param s input string
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return TRUE if s is normalized * @return TRUE if s is normalized
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool virtual UBool
isNormalized(const UnicodeString &s, UErrorCode &errorCode) const = 0; isNormalized(const UnicodeString &s, UErrorCode &errorCode) const = 0;
/** /**
* Tests if the string is normalized. * Tests if the string is normalized.
* For the two COMPOSE modes, the result could be "maybe" in cases that * For the two COMPOSE modes, the result could be "maybe" in cases that
* would take a little more work to resolve definitively. * would take a little more work to resolve definitively.
* Use spanQuickCheckYes() and normalizeSecondAndAppend() for a faster * Use spanQuickCheckYes() and normalizeSecondAndAppend() for a faster
* combination of quick check + normalization, to avoid * combination of quick check + normalization, to avoid
* re-checking the "yes" prefix. * re-checking the "yes" prefix.
* @param s input string * @param s input string
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return UNormalizationCheckResult * @return UNormalizationCheckResult
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UNormalizationCheckResult virtual UNormalizationCheckResult
quickCheck(const UnicodeString &s, UErrorCode &errorCode) const = 0; quickCheck(const UnicodeString &s, UErrorCode &errorCode) const = 0;
/** /**
* Returns the end of the normalized substring of the input string. * Returns the end of the normalized substring of the input string.
* In other words, with <code>end=spanQuickCheckYes(s, ec);</code> * In other words, with <code>end=spanQuickCheckYes(s, ec);</code>
* the substring <code>UnicodeString(s, 0, end)</code> * the substring <code>UnicodeString(s, 0, end)</code>
* will pass the quick check with a "yes" result. * will pass the quick check with a "yes" result.
* *
skipping to change at line 245 skipping to change at line 245
* When the goal is a normalized string and most input strings are expe cted * When the goal is a normalized string and most input strings are expe cted
* to be normalized already, then call this method, * to be normalized already, then call this method,
* and if it returns a prefix shorter than the input string, * and if it returns a prefix shorter than the input string,
* copy that prefix and use normalizeSecondAndAppend() for the remainde r. * copy that prefix and use normalizeSecondAndAppend() for the remainde r.
* @param s input string * @param s input string
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return "yes" span end index * @return "yes" span end index
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual int32_t virtual int32_t
spanQuickCheckYes(const UnicodeString &s, UErrorCode &errorCode) const = 0; spanQuickCheckYes(const UnicodeString &s, UErrorCode &errorCode) const = 0;
/** /**
* Tests if the character always has a normalization boundary before it , * Tests if the character always has a normalization boundary before it ,
* regardless of context. * regardless of context.
* If true, then the character does not normalization-interact with * If true, then the character does not normalization-interact with
* preceding characters. * preceding characters.
* In other words, a string containing this character can be normalized * In other words, a string containing this character can be normalized
* by processing portions before this character and starting from this * by processing portions before this character and starting from this
* character independently. * character independently.
* This is used for iterative normalization. See the class documentatio n for details. * This is used for iterative normalization. See the class documentatio n for details.
* @param c character to test * @param c character to test
* @return TRUE if c has a normalization boundary before it * @return TRUE if c has a normalization boundary before it
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool hasBoundaryBefore(UChar32 c) const = 0; virtual UBool hasBoundaryBefore(UChar32 c) const = 0;
/** /**
* Tests if the character always has a normalization boundary after it, * Tests if the character always has a normalization boundary after it,
* regardless of context. * regardless of context.
* If true, then the character does not normalization-interact with * If true, then the character does not normalization-interact with
* following characters. * following characters.
* In other words, a string containing this character can be normalized * In other words, a string containing this character can be normalized
* by processing portions up to this character and after this * by processing portions up to this character and after this
* character independently. * character independently.
* This is used for iterative normalization. See the class documentatio n for details. * This is used for iterative normalization. See the class documentatio n for details.
* Note that this operation may be significantly slower than hasBoundar yBefore(). * Note that this operation may be significantly slower than hasBoundar yBefore().
* @param c character to test * @param c character to test
* @return TRUE if c has a normalization boundary after it * @return TRUE if c has a normalization boundary after it
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool hasBoundaryAfter(UChar32 c) const = 0; virtual UBool hasBoundaryAfter(UChar32 c) const = 0;
/** /**
* Tests if the character is normalization-inert. * Tests if the character is normalization-inert.
* If true, then the character does not change, nor normalization-inter act with * If true, then the character does not change, nor normalization-inter act with
* preceding or following characters. * preceding or following characters.
* In other words, a string containing this character can be normalized * In other words, a string containing this character can be normalized
* by processing portions before this character and after this * by processing portions before this character and after this
* character independently. * character independently.
* This is used for iterative normalization. See the class documentatio n for details. * This is used for iterative normalization. See the class documentatio n for details.
* Note that this operation may be significantly slower than hasBoundar yBefore(). * Note that this operation may be significantly slower than hasBoundar yBefore().
* @param c character to test * @param c character to test
* @return TRUE if c is normalization-inert * @return TRUE if c is normalization-inert
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool isInert(UChar32 c) const = 0; virtual UBool isInert(UChar32 c) const = 0;
private: private:
// No ICU "poor man's RTTI" for this class nor its subclasses. // No ICU "poor man's RTTI" for this class nor its subclasses.
virtual UClassID getDynamicClassID() const; virtual UClassID getDynamicClassID() const;
}; };
/** /**
* Normalization filtered by a UnicodeSet. * Normalization filtered by a UnicodeSet.
* Normalizes portions of the text contained in the filter set and leaves * Normalizes portions of the text contained in the filter set and leaves
* portions not contained in the filter set unchanged. * portions not contained in the filter set unchanged.
* Filtering is done via UnicodeSet::span(..., USET_SPAN_SIMPLE). * Filtering is done via UnicodeSet::span(..., USET_SPAN_SIMPLE).
* Not-in-the-filter text is treated as "is normalized" and "quick check ye s". * Not-in-the-filter text is treated as "is normalized" and "quick check ye s".
* This class implements all of (and only) the Normalizer2 API. * This class implements all of (and only) the Normalizer2 API.
* An instance of this class is unmodifiable/immutable but is constructed a nd * An instance of this class is unmodifiable/immutable but is constructed a nd
* must be destructed by the owner. * must be destructed by the owner.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
class U_COMMON_API FilteredNormalizer2 : public Normalizer2 { class U_COMMON_API FilteredNormalizer2 : public Normalizer2 {
public: public:
/** /**
* Constructs a filtered normalizer wrapping any Normalizer2 instance * Constructs a filtered normalizer wrapping any Normalizer2 instance
* and a filter set. * and a filter set.
* Both are aliased and must not be modified or deleted while this obje ct * Both are aliased and must not be modified or deleted while this obje ct
* is used. * is used.
* The filter set should be frozen; otherwise the performance will suff er greatly. * The filter set should be frozen; otherwise the performance will suff er greatly.
* @param n2 wrapped Normalizer2 instance * @param n2 wrapped Normalizer2 instance
* @param filterSet UnicodeSet which determines the characters to be no rmalized * @param filterSet UnicodeSet which determines the characters to be no rmalized
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
FilteredNormalizer2(const Normalizer2 &n2, const UnicodeSet &filterSet) : FilteredNormalizer2(const Normalizer2 &n2, const UnicodeSet &filterSet) :
norm2(n2), set(filterSet) {} norm2(n2), set(filterSet) {}
/** /**
* Writes the normalized form of the source string to the destination s tring * Writes the normalized form of the source string to the destination s tring
* (replacing its contents) and returns the destination string. * (replacing its contents) and returns the destination string.
* The source and destination strings must be different objects. * The source and destination strings must be different objects.
* @param src source string * @param src source string
* @param dest destination string; its contents is replaced with normal ized src * @param dest destination string; its contents is replaced with normal ized src
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return dest * @return dest
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString & virtual UnicodeString &
normalize(const UnicodeString &src, normalize(const UnicodeString &src,
UnicodeString &dest, UnicodeString &dest,
UErrorCode &errorCode) const; UErrorCode &errorCode) const;
/** /**
* Appends the normalized form of the second string to the first string * Appends the normalized form of the second string to the first string
* (merging them at the boundary) and returns the first string. * (merging them at the boundary) and returns the first string.
* The result is normalized if the first string was normalized. * The result is normalized if the first string was normalized.
* The first and second strings must be different objects. * The first and second strings must be different objects.
* @param first string, should be normalized * @param first string, should be normalized
* @param second string, will be normalized * @param second string, will be normalized
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return first * @return first
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString & virtual UnicodeString &
normalizeSecondAndAppend(UnicodeString &first, normalizeSecondAndAppend(UnicodeString &first,
const UnicodeString &second, const UnicodeString &second,
UErrorCode &errorCode) const; UErrorCode &errorCode) const;
/** /**
* Appends the second string to the first string * Appends the second string to the first string
* (merging them at the boundary) and returns the first string. * (merging them at the boundary) and returns the first string.
* The result is normalized if both the strings were normalized. * The result is normalized if both the strings were normalized.
* The first and second strings must be different objects. * The first and second strings must be different objects.
* @param first string, should be normalized * @param first string, should be normalized
* @param second string, should be normalized * @param second string, should be normalized
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return first * @return first
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString & virtual UnicodeString &
append(UnicodeString &first, append(UnicodeString &first,
const UnicodeString &second, const UnicodeString &second,
UErrorCode &errorCode) const; UErrorCode &errorCode) const;
/** /**
* Gets the decomposition mapping of c. Equivalent to normalize(Unicode String(c)) * Gets the decomposition mapping of c. Equivalent to normalize(Unicode String(c))
* on a UNORM2_DECOMPOSE Normalizer2 instance, but much faster. * on a UNORM2_DECOMPOSE Normalizer2 instance, but much faster.
* This function is independent of the mode of the Normalizer2. * This function is independent of the mode of the Normalizer2.
skipping to change at line 403 skipping to change at line 403
/** /**
* Tests if the string is normalized. * Tests if the string is normalized.
* For details see the Normalizer2 base class documentation. * For details see the Normalizer2 base class documentation.
* @param s input string * @param s input string
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return TRUE if s is normalized * @return TRUE if s is normalized
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool virtual UBool
isNormalized(const UnicodeString &s, UErrorCode &errorCode) const; isNormalized(const UnicodeString &s, UErrorCode &errorCode) const;
/** /**
* Tests if the string is normalized. * Tests if the string is normalized.
* For details see the Normalizer2 base class documentation. * For details see the Normalizer2 base class documentation.
* @param s input string * @param s input string
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return UNormalizationCheckResult * @return UNormalizationCheckResult
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UNormalizationCheckResult virtual UNormalizationCheckResult
quickCheck(const UnicodeString &s, UErrorCode &errorCode) const; quickCheck(const UnicodeString &s, UErrorCode &errorCode) const;
/** /**
* Returns the end of the normalized substring of the input string. * Returns the end of the normalized substring of the input string.
* For details see the Normalizer2 base class documentation. * For details see the Normalizer2 base class documentation.
* @param s input string * @param s input string
* @param errorCode Standard ICU error code. Its input value must * @param errorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return "yes" span end index * @return "yes" span end index
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual int32_t virtual int32_t
spanQuickCheckYes(const UnicodeString &s, UErrorCode &errorCode) const; spanQuickCheckYes(const UnicodeString &s, UErrorCode &errorCode) const;
/** /**
* Tests if the character always has a normalization boundary before it , * Tests if the character always has a normalization boundary before it ,
* regardless of context. * regardless of context.
* For details see the Normalizer2 base class documentation. * For details see the Normalizer2 base class documentation.
* @param c character to test * @param c character to test
* @return TRUE if c has a normalization boundary before it * @return TRUE if c has a normalization boundary before it
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool hasBoundaryBefore(UChar32 c) const; virtual UBool hasBoundaryBefore(UChar32 c) const;
/** /**
* Tests if the character always has a normalization boundary after it, * Tests if the character always has a normalization boundary after it,
* regardless of context. * regardless of context.
* For details see the Normalizer2 base class documentation. * For details see the Normalizer2 base class documentation.
* @param c character to test * @param c character to test
* @return TRUE if c has a normalization boundary after it * @return TRUE if c has a normalization boundary after it
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool hasBoundaryAfter(UChar32 c) const; virtual UBool hasBoundaryAfter(UChar32 c) const;
/** /**
* Tests if the character is normalization-inert. * Tests if the character is normalization-inert.
* For details see the Normalizer2 base class documentation. * For details see the Normalizer2 base class documentation.
* @param c character to test * @param c character to test
* @return TRUE if c is normalization-inert * @return TRUE if c is normalization-inert
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool isInert(UChar32 c) const; virtual UBool isInert(UChar32 c) const;
private: private:
UnicodeString & UnicodeString &
normalize(const UnicodeString &src, normalize(const UnicodeString &src,
UnicodeString &dest, UnicodeString &dest,
USetSpanCondition spanCondition, USetSpanCondition spanCondition,
UErrorCode &errorCode) const; UErrorCode &errorCode) const;
UnicodeString & UnicodeString &
 End of changes. 23 change blocks. 
23 lines changed or deleted 23 lines changed or added


 numfmt.h   numfmt.h 
skipping to change at line 104 skipping to change at line 104
* \endcode * \endcode
* </pre> * </pre>
* You can use a NumberFormat to parse also. * You can use a NumberFormat to parse also.
* <pre> * <pre>
* \code * \code
* UErrorCode success; * UErrorCode success;
* Formattable result(-999); // initialized with error code * Formattable result(-999); // initialized with error code
* nf->parse(myString, result, success); * nf->parse(myString, result, success);
* \endcode * \endcode
* </pre> * </pre>
* Note that while lenient parsing is on by default for the Format base cla
ss,
* it is off by default for NumberFormat and its subclasses.
* <P>
* Use createInstance to get the normal number format for that country. * Use createInstance to get the normal number format for that country.
* There are other static factory methods available. Use getCurrency * There are other static factory methods available. Use getCurrency
* to get the currency number format for that country. Use getPercent * to get the currency number format for that country. Use getPercent
* to get a format for displaying percentages. With this format, a * to get a format for displaying percentages. With this format, a
* fraction from 0.53 is displayed as 53%. * fraction from 0.53 is displayed as 53%.
* <P> * <P>
* Starting from ICU 4.2, you can use createInstance() by passing in a 'sty le' * Starting from ICU 4.2, you can use createInstance() by passing in a 'sty le'
* as parameter to get the correct instance. * as parameter to get the correct instance.
* For example, * For example,
* use createInstance(...kNumberStyle...) to get the normal number format, * use createInstance(...kNumberStyle...) to get the normal number format,
skipping to change at line 275 skipping to change at line 272
* UErrorCode. * UErrorCode.
* *
* @param obj The object to format. * @param obj The object to format.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. Can be * of fields generated by this format call. Can be
* NULL. * NULL.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft 4.4 * @stable 4.4
*/ */
virtual UnicodeString& format(const Formattable& obj, virtual UnicodeString& format(const Formattable& obj,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Parse a string to produce an object. This methods handles * Parse a string to produce an object. This methods handles
* parsing of numeric strings into Formattable objects with numeric * parsing of numeric strings into Formattable objects with numeric
* types. * types.
skipping to change at line 380 skipping to change at line 377
* this method. * this method.
* *
* @param number The value to be formatted. * @param number The value to be formatted.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. * of fields generated by this format call.
* Can be NULL. * Can be NULL.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft 4.4 * @stable 4.4
*/ */
virtual UnicodeString& format(double number, virtual UnicodeString& format(double number,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Format a long number. Concrete subclasses must implement * Format a long number. Concrete subclasses must implement
* these pure virtual methods. * these pure virtual methods.
* *
* @param number The value to be formatted. * @param number The value to be formatted.
skipping to change at line 414 skipping to change at line 411
* this method. * this method.
* *
* @param number The value to be formatted. * @param number The value to be formatted.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. * of fields generated by this format call.
* Can be NULL. * Can be NULL.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft 4.4 * @stable 4.4
*/ */
virtual UnicodeString& format(int32_t number, virtual UnicodeString& format(int32_t number,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Format an int64 number. (Not abstract to retain compatibility * Format an int64 number. (Not abstract to retain compatibility
* with earlier releases, however subclasses should override this * with earlier releases, however subclasses should override this
* method as it just delegates to format(int32_t number...); * method as it just delegates to format(int32_t number...);
* *
skipping to change at line 448 skipping to change at line 445
* this method. * this method.
* *
* @param number The value to be formatted. * @param number The value to be formatted.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. * of fields generated by this format call.
* Can be NULL. * Can be NULL.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft 4.4 * @stable 4.4
*/ */
virtual UnicodeString& format(int64_t number, virtual UnicodeString& format(int64_t number,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Format a decimal number. Subclasses must implement * Format a decimal number. Subclasses must implement
* this method. The syntax of the unformatted number is a "numeric str ing" * this method. The syntax of the unformatted number is a "numeric str ing"
* as defined in the Decimal Arithmetic Specification, available at * as defined in the Decimal Arithmetic Specification, available at
* http://speleotrove.com/decimal * http://speleotrove.com/decimal
* *
* @param number The unformatted number, as a string, to be formatte d. * @param number The unformatted number, as a string, to be formatte d.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. * of fields generated by this format call.
* Can be NULL. * Can be NULL.
* @param status Output param filled with success/failure status. * @param status Output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft 4.4 * @stable 4.4
*/ */
virtual UnicodeString& format(const StringPiece &number, virtual UnicodeString& format(const StringPiece &number,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
public: public:
/** /**
* Format a decimal number. * Format a decimal number.
* The number is a DigitList wrapper onto a floating point decimal numb er. * The number is a DigitList wrapper onto a floating point decimal numb er.
* The default implementation in NumberFormat converts the decimal numb er * The default implementation in NumberFormat converts the decimal numb er
 End of changes. 6 change blocks. 
9 lines changed or deleted 5 lines changed or added


 platform.h   platform.h 
skipping to change at line 38 skipping to change at line 38
* \brief Basic types for the platform * \brief Basic types for the platform
*/ */
/* This file should be included before uvernum.h. */ /* This file should be included before uvernum.h. */
#if defined(UVERNUM_H) #if defined(UVERNUM_H)
# error Do not include unicode/uvernum.h before #including unicode/platform .h. Instead of unicode/uvernum.h, #include unicode/uversion.h # error Do not include unicode/uvernum.h before #including unicode/platform .h. Instead of unicode/uvernum.h, #include unicode/uversion.h
#endif #endif
/** /**
* Determine wheter to enable auto cleanup of libraries. * Determine wheter to enable auto cleanup of libraries.
* @draft ICU 4.4 * @internal
*/ */
#ifndef UCLN_NO_AUTO_CLEANUP #ifndef UCLN_NO_AUTO_CLEANUP
#define UCLN_NO_AUTO_CLEANUP 1 #define UCLN_NO_AUTO_CLEANUP 1
#endif #endif
/* Need platform.h when using CYGWINMSVC to get definitions above. Ignore e verything else. */ /* Need platform.h when using CYGWINMSVC to get definitions above. Ignore e verything else. */
#ifndef CYGWINMSVC #ifndef CYGWINMSVC
/** Define the platform we're on. */ /** Define the platform we're on. */
#ifndef U_LINUX #ifndef U_LINUX
skipping to change at line 90 skipping to change at line 90
#ifndef U_IOSTREAM_SOURCE #ifndef U_IOSTREAM_SOURCE
#define U_IOSTREAM_SOURCE 199711 #define U_IOSTREAM_SOURCE 199711
#endif #endif
/** /**
* \def U_HAVE_STD_STRING * \def U_HAVE_STD_STRING
* Define whether the standard C++ (STL) &lt;string&gt; header is available . * Define whether the standard C++ (STL) &lt;string&gt; header is available .
* For platforms that do not use platform.h and do not define this constant * For platforms that do not use platform.h and do not define this constant
* in their platform-specific headers, std_string.h defaults * in their platform-specific headers, std_string.h defaults
* U_HAVE_STD_STRING to 1. * U_HAVE_STD_STRING to 1.
* @draft ICU 4.2 * @internal
*/ */
#ifndef U_HAVE_STD_STRING #ifndef U_HAVE_STD_STRING
#define U_HAVE_STD_STRING 1 #define U_HAVE_STD_STRING 1
#endif #endif
/** @{ Determines whether specific types are available */ /** @{ Determines whether specific types are available */
#ifndef U_HAVE_INT8_T #ifndef U_HAVE_INT8_T
#define U_HAVE_INT8_T 1 #define U_HAVE_INT8_T 1
#endif #endif
skipping to change at line 189 skipping to change at line 189
#define U_HAVE_PLACEMENT_NEW 1 #define U_HAVE_PLACEMENT_NEW 1
#endif #endif
/* Determine whether to enable tracing. */ /* Determine whether to enable tracing. */
#ifndef U_ENABLE_TRACING #ifndef U_ENABLE_TRACING
#define U_ENABLE_TRACING 0 #define U_ENABLE_TRACING 0
#endif #endif
/** /**
* Whether to enable Dynamic loading in ICU * Whether to enable Dynamic loading in ICU
* @draft ICU 4.4 * @internal
*/ */
#ifndef U_ENABLE_DYLOAD #ifndef U_ENABLE_DYLOAD
#define U_ENABLE_DYLOAD 1 #define U_ENABLE_DYLOAD 1
#endif #endif
/** /**
* Whether to test Dynamic loading as an OS capabilty * Whether to test Dynamic loading as an OS capabilty
* @draft ICU 4.4 * @internal
*/ */
#ifndef U_CHECK_DYLOAD #ifndef U_CHECK_DYLOAD
#define U_CHECK_DYLOAD 1 #define U_CHECK_DYLOAD 1
#endif #endif
/** Do we allow ICU users to use the draft APIs by default? */ /** Do we allow ICU users to use the draft APIs by default? */
#ifndef U_DEFAULT_SHOW_DRAFT #ifndef U_DEFAULT_SHOW_DRAFT
#define U_DEFAULT_SHOW_DRAFT 1 #define U_DEFAULT_SHOW_DRAFT 1
#endif #endif
skipping to change at line 394 skipping to change at line 394
# define U_LIB_SUFFIX_C_NAME_STRING "" # define U_LIB_SUFFIX_C_NAME_STRING ""
/** /**
* 1 if a custom library suffix is set * 1 if a custom library suffix is set
* @internal * @internal
*/ */
# define U_HAVE_LIB_SUFFIX 0 # define U_HAVE_LIB_SUFFIX 0
#if U_HAVE_LIB_SUFFIX #if U_HAVE_LIB_SUFFIX
# ifndef U_ICU_ENTRY_POINT_RENAME # ifndef U_ICU_ENTRY_POINT_RENAME
/* Renaming pattern: u_strcpy_41_suffix */ /* Renaming pattern: u_strcpy_41_suffix */
# define U_ICU_ENTRY_POINT_RENAME(x) x ## _ ## 45 ## # define U_ICU_ENTRY_POINT_RENAME(x) x ## _ ## 46 ##
# define U_DEF_ICUDATA_ENTRY_POINT(major, minor) icudt####major##minor##_d at # define U_DEF_ICUDATA_ENTRY_POINT(major, minor) icudt####major##minor##_d at
# endif # endif
#endif #endif
#endif #endif
 End of changes. 5 change blocks. 
5 lines changed or deleted 5 lines changed or added


 rbnf.h   rbnf.h 
skipping to change at line 928 skipping to change at line 928
*/ */
virtual void setLenient(UBool enabled); virtual void setLenient(UBool enabled);
/** /**
* Returns true if lenient-parse mode is turned on. Lenient parsing is o ff * Returns true if lenient-parse mode is turned on. Lenient parsing is o ff
* by default. * by default.
* @return true if lenient-parse mode is turned on. * @return true if lenient-parse mode is turned on.
* @see #setLenient * @see #setLenient
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
virtual UBool isLenient(void) const; virtual inline UBool isLenient(void) const;
#endif #endif
/** /**
* Override the default rule set to use. If ruleSetName is null, reset * Override the default rule set to use. If ruleSetName is null, reset
* to the initial default rule set. If the rule set is not a public rule set name, * to the initial default rule set. If the rule set is not a public rule set name,
* U_ILLEGAL_ARGUMENT_ERROR is returned in status. * U_ILLEGAL_ARGUMENT_ERROR is returned in status.
* @param ruleSetName the name of the rule set, or null to reset the init ial default. * @param ruleSetName the name of the rule set, or null to reset the init ial default.
* @param status set to failure code when a problem occurs. * @param status set to failure code when a problem occurs.
* @stable ICU 2.6 * @stable ICU 2.6
skipping to change at line 995 skipping to change at line 995
inline NFRuleSet * getDefaultRuleSet() const; inline NFRuleSet * getDefaultRuleSet() const;
Collator * getCollator() const; Collator * getCollator() const;
DecimalFormatSymbols * getDecimalFormatSymbols() const; DecimalFormatSymbols * getDecimalFormatSymbols() const;
private: private:
NFRuleSet **ruleSets; NFRuleSet **ruleSets;
NFRuleSet *defaultRuleSet; NFRuleSet *defaultRuleSet;
Locale locale; Locale locale;
Collator* collator; Collator* collator;
DecimalFormatSymbols* decimalFormatSymbols; DecimalFormatSymbols* decimalFormatSymbols;
UBool lenient;
UnicodeString* lenientParseRules; UnicodeString* lenientParseRules;
LocalizationInfo* localizations; LocalizationInfo* localizations;
// Temporary workaround - when noParse is true, do noting in parse. // Temporary workaround - when noParse is true, do noting in parse.
// TODO: We need a real fix - see #6895/#6896 // TODO: We need a real fix - see #6895/#6896
UBool noParse; UBool noParse;
}; };
// --------------- // ---------------
skipping to change at line 1036 skipping to change at line 1037
FieldPosition pos(0); FieldPosition pos(0);
return format(number, output, pos); return format(number, output, pos);
} }
inline void inline void
RuleBasedNumberFormat::parse(const UnicodeString& text, Formattable& result , UErrorCode& status) const RuleBasedNumberFormat::parse(const UnicodeString& text, Formattable& result , UErrorCode& status) const
{ {
NumberFormat::parse(text, result, status); NumberFormat::parse(text, result, status);
} }
#if !UCONFIG_NO_COLLATION
inline UBool
RuleBasedNumberFormat::isLenient(void) const {
return lenient;
}
#endif
inline NFRuleSet* inline NFRuleSet*
RuleBasedNumberFormat::getDefaultRuleSet() const { RuleBasedNumberFormat::getDefaultRuleSet() const {
return defaultRuleSet; return defaultRuleSet;
} }
U_NAMESPACE_END U_NAMESPACE_END
/* U_HAVE_RBNF */ /* U_HAVE_RBNF */
#endif #endif
 End of changes. 3 change blocks. 
1 lines changed or deleted 11 lines changed or added


 regex.h   regex.h 
skipping to change at line 209 skipping to change at line 209
* then creating a RegexMatcher object from the pattern.</p> * then creating a RegexMatcher object from the pattern.</p>
* *
* @param regex The regular expression to be compiled. Note, the text re ferred * @param regex The regular expression to be compiled. Note, the text re ferred
* to by this UText must not be deleted during the lifetime of the * to by this UText must not be deleted during the lifetime of the
* RegexPattern object or any RegexMatcher object created f rom it. * RegexPattern object or any RegexMatcher object created f rom it.
* @param pe Receives the position (line and column nubers) of any er ror * @param pe Receives the position (line and column nubers) of any er ror
* within the regular expression.) * within the regular expression.)
* @param status A reference to a UErrorCode to receive any errors. * @param status A reference to a UErrorCode to receive any errors.
* @return A regexPattern object for the compiled pattern. * @return A regexPattern object for the compiled pattern.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
static RegexPattern * U_EXPORT2 compile( UText *regex, static RegexPattern * U_EXPORT2 compile( UText *regex,
UParseError &pe, UParseError &pe,
UErrorCode &status); UErrorCode &status);
/** /**
* Compiles the regular expression in string form into a RegexPattern * Compiles the regular expression in string form into a RegexPattern
* object using the specified match mode flags. These compile methods, * object using the specified match mode flags. These compile methods,
* rather than the constructors, are the usual way that RegexPattern obj ects * rather than the constructors, are the usual way that RegexPattern obj ects
* are created. * are created.
skipping to change at line 268 skipping to change at line 268
* *
* @param regex The regular expression to be compiled. Note, the text re ferred * @param regex The regular expression to be compiled. Note, the text re ferred
* to by this UText must not be deleted during the lifetime of the * to by this UText must not be deleted during the lifetime of the
* RegexPattern object or any RegexMatcher object created f rom it. * RegexPattern object or any RegexMatcher object created f rom it.
* @param flags The match mode flags to be used. * @param flags The match mode flags to be used.
* @param pe Receives the position (line and column numbers) of any e rror * @param pe Receives the position (line and column numbers) of any e rror
* within the regular expression.) * within the regular expression.)
* @param status A reference to a UErrorCode to receive any errors. * @param status A reference to a UErrorCode to receive any errors.
* @return A regexPattern object for the compiled pattern. * @return A regexPattern object for the compiled pattern.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
static RegexPattern * U_EXPORT2 compile( UText *regex, static RegexPattern * U_EXPORT2 compile( UText *regex,
uint32_t flags, uint32_t flags,
UParseError &pe, UParseError &pe,
UErrorCode &status); UErrorCode &status);
/** /**
* Compiles the regular expression in string form into a RegexPattern * Compiles the regular expression in string form into a RegexPattern
* object using the specified match mode flags. These compile methods, * object using the specified match mode flags. These compile methods,
* rather than the constructors, are the usual way that RegexPattern obj ects * rather than the constructors, are the usual way that RegexPattern obj ects
skipping to change at line 323 skipping to change at line 323
* from a pattern string instead of than separately compiling the pat tern and * from a pattern string instead of than separately compiling the pat tern and
* then creating a RegexMatcher object from the pattern.</p> * then creating a RegexMatcher object from the pattern.</p>
* *
* @param regex The regular expression to be compiled. Note, the text re ferred * @param regex The regular expression to be compiled. Note, the text re ferred
* to by this UText must not be deleted during the lifetime of the * to by this UText must not be deleted during the lifetime of the
* RegexPattern object or any RegexMatcher object created f rom it. * RegexPattern object or any RegexMatcher object created f rom it.
* @param flags The match mode flags to be used. * @param flags The match mode flags to be used.
* @param status A reference to a UErrorCode to receive any errors. * @param status A reference to a UErrorCode to receive any errors.
* @return A regexPattern object for the compiled pattern. * @return A regexPattern object for the compiled pattern.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
static RegexPattern * U_EXPORT2 compile( UText *regex, static RegexPattern * U_EXPORT2 compile( UText *regex,
uint32_t flags, uint32_t flags,
UErrorCode &status); UErrorCode &status);
/** /**
* Get the match mode flags that were used when compiling this pattern. * Get the match mode flags that were used when compiling this pattern.
* @return the match mode flags * @return the match mode flags
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
skipping to change at line 358 skipping to change at line 358
* @param status A reference to a UErrorCode to receive any errors. * @param status A reference to a UErrorCode to receive any errors.
* @return A RegexMatcher object for this pattern and input. * @return A RegexMatcher object for this pattern and input.
* *
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
virtual RegexMatcher *matcher(const UnicodeString &input, virtual RegexMatcher *matcher(const UnicodeString &input,
UErrorCode &status) const; UErrorCode &status) const;
/** /**
* Flag to disambiguate RegexPattern::matcher signature * Flag to disambiguate RegexPattern::matcher signature
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
enum PatternIsUTextFlag { PATTERN_IS_UTEXT }; enum PatternIsUTextFlag { PATTERN_IS_UTEXT };
/** /**
* Creates a RegexMatcher that will match the given input against this p attern. The * Creates a RegexMatcher that will match the given input against this p attern. The
* RegexMatcher can then be used to perform match, find or replace opera tions * RegexMatcher can then be used to perform match, find or replace opera tions
* on the input. Note that a RegexPattern object must not be deleted wh ile * on the input. Note that a RegexPattern object must not be deleted wh ile
* RegexMatchers created from it still exist and might possibly be used again. * RegexMatchers created from it still exist and might possibly be used again.
* <p> * <p>
* The matcher will make a shallow clone of the supplied input text, and all regexp * The matcher will make a shallow clone of the supplied input text, and all regexp
* pattern matching operations happen on this clone. While read-only op erations on * pattern matching operations happen on this clone. While read-only op erations on
* the supplied text are permitted, it is critical that the underlying s tring not be * the supplied text are permitted, it is critical that the underlying s tring not be
* altered or deleted before use by the regular expression operations is complete. * altered or deleted before use by the regular expression operations is complete.
* *
* @param input The input text to which the regular expression will b e applied. * @param input The input text to which the regular expression will b e applied.
* @param flag Must be RegexPattern::PATTERN_IS_UTEXT; used to disam biguate * @param flag Must be RegexPattern::PATTERN_IS_UTEXT; used to disam biguate
* method signature. * method signature.
* @param status A reference to a UErrorCode to receive any errors. * @param status A reference to a UErrorCode to receive any errors.
* @return A RegexMatcher object for this pattern and input. * @return A RegexMatcher object for this pattern and input.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
virtual RegexMatcher *matcher(UText *input, virtual RegexMatcher *matcher(UText *input,
PatternIsUTextFlag flag, PatternIsUTextFlag flag,
UErrorCode &status) const; UErrorCode &status) const;
private: private:
/** /**
* Cause a compilation error if an application accidently attempts to * Cause a compilation error if an application accidently attempts to
* create a matcher with a (UChar *) string as input rather than * create a matcher with a (UChar *) string as input rather than
* a UnicodeString. Avoids a dangling reference to a temporary strin g. * a UnicodeString. Avoids a dangling reference to a temporary strin g.
skipping to change at line 447 skipping to change at line 447
* both compiles the reguluar expression and applies it in a single oper ation. * both compiles the reguluar expression and applies it in a single oper ation.
* Note that if the same pattern needs to be applied repeatedly, this me thod will be * Note that if the same pattern needs to be applied repeatedly, this me thod will be
* less efficient than creating and reusing a RegexMatcher object. * less efficient than creating and reusing a RegexMatcher object.
* *
* @param regex The regular expression * @param regex The regular expression
* @param input The string data to be matched * @param input The string data to be matched
* @param pe Receives the position of any syntax errors within the regul ar expression * @param pe Receives the position of any syntax errors within the regul ar expression
* @param status A reference to a UErrorCode to receive any errors. * @param status A reference to a UErrorCode to receive any errors.
* @return True if the regular expression exactly matches the full input string. * @return True if the regular expression exactly matches the full input string.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
static UBool U_EXPORT2 matches(UText *regex, static UBool U_EXPORT2 matches(UText *regex,
UText *input, UText *input,
UParseError &pe, UParseError &pe,
UErrorCode &status); UErrorCode &status);
/** /**
* Returns the regular expression from which this pattern was compiled. This method will work * Returns the regular expression from which this pattern was compiled. This method will work
* even if the pattern was compiled from a UText. * even if the pattern was compiled from a UText.
* *
skipping to change at line 529 skipping to change at line 529
* that field. This new UText is not guaranteed to be mu table. * that field. This new UText is not guaranteed to be mu table.
* @param destCapacity The number of elements in the destination array . * @param destCapacity The number of elements in the destination array .
* If the number of fields found is less than destCapaci ty, the * If the number of fields found is less than destCapaci ty, the
* extra strings in the destination array are not altere d. * extra strings in the destination array are not altere d.
* If the number of destination strings is less than the number * If the number of destination strings is less than the number
* of fields, the trailing part of the input string, inc luding any * of fields, the trailing part of the input string, inc luding any
* field delimiters, is placed in the last destination s tring. * field delimiters, is placed in the last destination s tring.
* @param status A reference to a UErrorCode to receive any errors. * @param status A reference to a UErrorCode to receive any errors.
* @return The number of fields into which the input string was split. * @return The number of fields into which the input string was split.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
virtual int32_t split(UText *input, virtual int32_t split(UText *input,
UText *dest[], UText *dest[],
int32_t destCapacity, int32_t destCapacity,
UErrorCode &status) const; UErrorCode &status) const;
/** /**
* ICU "poor man's RTTI", returns a UClassID for the actual class. * ICU "poor man's RTTI", returns a UClassID for the actual class.
* *
* @stable ICU 2.4 * @stable ICU 2.4
skipping to change at line 656 skipping to change at line 656
* a RegexPattern object. Note that if several RegexMatchers need to be * a RegexPattern object. Note that if several RegexMatchers need to be
* created for the same expression, it will be more efficient to * created for the same expression, it will be more efficient to
* separately create and cache a RegexPattern object, and use * separately create and cache a RegexPattern object, and use
* its matcher() method to create the RegexMatcher objects. * its matcher() method to create the RegexMatcher objects.
* *
* @param regexp The regular expression to be compiled. * @param regexp The regular expression to be compiled.
* @param flags Regular expression options, such as case insensitive matching. * @param flags Regular expression options, such as case insensitive matching.
* @see UREGEX_CASE_INSENSITIVE * @see UREGEX_CASE_INSENSITIVE
* @param status Any errors are reported by setting this UErrorCode v ariable. * @param status Any errors are reported by setting this UErrorCode v ariable.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
RegexMatcher(UText *regexp, uint32_t flags, UErrorCode &status); RegexMatcher(UText *regexp, uint32_t flags, UErrorCode &status);
/** /**
* Construct a RegexMatcher for a regular expression. * Construct a RegexMatcher for a regular expression.
* This is a convenience method that avoids the need to explicitly cre ate * This is a convenience method that avoids the need to explicitly cre ate
* a RegexPattern object. Note that if several RegexMatchers need to be * a RegexPattern object. Note that if several RegexMatchers need to be
* created for the same expression, it will be more efficient to * created for the same expression, it will be more efficient to
* separately create and cache a RegexPattern object, and use * separately create and cache a RegexPattern object, and use
* its matcher() method to create the RegexMatcher objects. * its matcher() method to create the RegexMatcher objects.
skipping to change at line 703 skipping to change at line 703
* pattern matching operations happen on this clone. While read-only operations on * pattern matching operations happen on this clone. While read-only operations on
* the supplied text are permitted, it is critical that the underlying string not be * the supplied text are permitted, it is critical that the underlying string not be
* altered or deleted before use by the regular expression operations is complete. * altered or deleted before use by the regular expression operations is complete.
* *
* @param regexp The Regular Expression to be compiled. * @param regexp The Regular Expression to be compiled.
* @param input The string to match. The matcher retains a shallow clone of the text. * @param input The string to match. The matcher retains a shallow clone of the text.
* @param flags Regular expression options, such as case insensitive matching. * @param flags Regular expression options, such as case insensitive matching.
* @see UREGEX_CASE_INSENSITIVE * @see UREGEX_CASE_INSENSITIVE
* @param status Any errors are reported by setting this UErrorCode v ariable. * @param status Any errors are reported by setting this UErrorCode v ariable.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
RegexMatcher(UText *regexp, UText *input, RegexMatcher(UText *regexp, UText *input,
uint32_t flags, UErrorCode &status); uint32_t flags, UErrorCode &status);
private: private:
/** /**
* Cause a compilation error if an application accidently attempts to * Cause a compilation error if an application accidently attempts to
* create a matcher with a (UChar *) string as input rather than * create a matcher with a (UChar *) string as input rather than
* a UnicodeString. Avoids a dangling reference to a temporary str ing. * a UnicodeString. Avoids a dangling reference to a temporary str ing.
* <p> * <p>
skipping to change at line 1011 skipping to change at line 1011
* Resets this matcher with a new input string. This allows instances of RegexMatcher * Resets this matcher with a new input string. This allows instances of RegexMatcher
* to be reused, which is more efficient than creating a new RegexMa tcher for * to be reused, which is more efficient than creating a new RegexMa tcher for
* each input string to be processed. * each input string to be processed.
* @param input The new string on which subsequent pattern matches wil l operate. * @param input The new string on which subsequent pattern matches wil l operate.
* The matcher makes a shallow clone of the given text; o wnership of the * The matcher makes a shallow clone of the given text; o wnership of the
* original string remains with the caller. Because no de ep copy of the * original string remains with the caller. Because no de ep copy of the
* text is made, it is essential that the caller not modi fy the string * text is made, it is essential that the caller not modi fy the string
* until after regexp operations on it are done. * until after regexp operations on it are done.
* @return this RegexMatcher. * @return this RegexMatcher.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
virtual RegexMatcher &reset(UText *input); virtual RegexMatcher &reset(UText *input);
private: private:
/** /**
* Cause a compilation error if an application accidently attempts to * Cause a compilation error if an application accidently attempts to
* reset a matcher with a (UChar *) string as input rather than * reset a matcher with a (UChar *) string as input rather than
* a UnicodeString. Avoids a dangling reference to a temporary str ing. * a UnicodeString. Avoids a dangling reference to a temporary str ing.
* <p> * <p>
* To efficiently work with UChar *strings, wrap the data in a UnicodeS tring * To efficiently work with UChar *strings, wrap the data in a UnicodeS tring
skipping to change at line 1047 skipping to change at line 1047
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
virtual const UnicodeString &input() const; virtual const UnicodeString &input() const;
/** /**
* Returns the input string being matched. This is the live input tex t; it should not be * Returns the input string being matched. This is the live input tex t; it should not be
* altered or deleted. This method will work even if the input was ori ginally supplied as * altered or deleted. This method will work even if the input was ori ginally supplied as
* a UnicodeString. * a UnicodeString.
* @return the input text * @return the input text
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
virtual UText *inputText() const; virtual UText *inputText() const;
/** /**
* Returns the input string being matched, either by copying it into t he provided * Returns the input string being matched, either by copying it into t he provided
* UText parameter or by returning a shallow clone of the live input. Note that copying * UText parameter or by returning a shallow clone of the live input. Note that copying
* the entire input may cause significant performance and memory issue s. * the entire input may cause significant performance and memory issue s.
* @param dest The UText into which the input should be copied, or NUL L to create a new UText * @param dest The UText into which the input should be copied, or NUL L to create a new UText
* @return dest if non-NULL, a shallow copy of the input text otherwis e * @return dest if non-NULL, a shallow copy of the input text otherwis e
* *
skipping to change at line 1244 skipping to change at line 1244
* replacement string. The replacement string may contain references to * replacement string. The replacement string may contain references to
* capture groups. * capture groups.
* *
* @param replacement a string containing the replacement text. * @param replacement a string containing the replacement text.
* @param dest a mutable UText in which the results are plac ed. * @param dest a mutable UText in which the results are plac ed.
* If NULL, a new UText will be created (which may not be mutable). * If NULL, a new UText will be created (which may not be mutable).
* @param status a reference to a UErrorCode to receive any er rors. * @param status a reference to a UErrorCode to receive any er rors.
* @return a string containing the results of the find a nd replace. * @return a string containing the results of the find a nd replace.
* If a pre-allocated UText was provided, it wi ll always be used and returned. * If a pre-allocated UText was provided, it wi ll always be used and returned.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
virtual UText *replaceAll(UText *replacement, UText *dest, UErrorCode & status); virtual UText *replaceAll(UText *replacement, UText *dest, UErrorCode & status);
/** /**
* Replaces the first substring of the input that matches * Replaces the first substring of the input that matches
* the pattern with the replacement string. This is a convenience * the pattern with the replacement string. This is a convenience
* function that provides a complete find-and-replace operation. * function that provides a complete find-and-replace operation.
* *
* <p>This function first resets this RegexMatcher. It then scans the in put string * <p>This function first resets this RegexMatcher. It then scans the in put string
* looking for a match of the pattern. Input that is not part * looking for a match of the pattern. Input that is not part
skipping to change at line 1292 skipping to change at line 1292
* would begin) after completing a replaceFirst() is not specified. The * would begin) after completing a replaceFirst() is not specified. The
* RegexMatcher should be reset before doing additional find() operat ions.</p> * RegexMatcher should be reset before doing additional find() operat ions.</p>
* *
* @param replacement a string containing the replacement text. * @param replacement a string containing the replacement text.
* @param dest a mutable UText in which the results are plac ed. * @param dest a mutable UText in which the results are plac ed.
* If NULL, a new UText will be created (which may not be mutable). * If NULL, a new UText will be created (which may not be mutable).
* @param status a reference to a UErrorCode to receive any er rors. * @param status a reference to a UErrorCode to receive any er rors.
* @return a string containing the results of the find a nd replace. * @return a string containing the results of the find a nd replace.
* If a pre-allocated UText was provided, it wi ll always be used and returned. * If a pre-allocated UText was provided, it wi ll always be used and returned.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
virtual UText *replaceFirst(UText *replacement, UText *dest, UErrorCode &status); virtual UText *replaceFirst(UText *replacement, UText *dest, UErrorCode &status);
/** /**
* Implements a replace operation intended to be used as part of an * Implements a replace operation intended to be used as part of an
* incremental find-and-replace. * incremental find-and-replace.
* *
* <p>The input string, starting from the end of the previous replacem ent and ending at * <p>The input string, starting from the end of the previous replacem ent and ending at
* the start of the current match, is appended to the destination stri ng. Then the * the start of the current match, is appended to the destination stri ng. Then the
* replacement string is appended to the output string, * replacement string is appended to the output string,
skipping to change at line 1351 skipping to change at line 1351
* the input text that matched the regexp pattern . The replacement * the input text that matched the regexp pattern . The replacement
* text may contain references to captured text f rom the input. * text may contain references to captured text f rom the input.
* @param status A reference to a UErrorCode to receive any err ors. Possible * @param status A reference to a UErrorCode to receive any err ors. Possible
* errors are U_REGEX_INVALID_STATE if no match has been * errors are U_REGEX_INVALID_STATE if no match has been
* attempted or the last match failed, and U_INDE X_OUTOFBOUNDS_ERROR * attempted or the last match failed, and U_INDE X_OUTOFBOUNDS_ERROR
* if the replacement text specifies a capture gr oup that * if the replacement text specifies a capture gr oup that
* does not exist in the pattern. * does not exist in the pattern.
* *
* @return this RegexMatcher * @return this RegexMatcher
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
virtual RegexMatcher &appendReplacement(UText *dest, virtual RegexMatcher &appendReplacement(UText *dest,
UText *replacement, UErrorCode &status); UText *replacement, UErrorCode &status);
/** /**
* As the final step in a find-and-replace operation, append the remaind er * As the final step in a find-and-replace operation, append the remaind er
* of the input string, starting at the position following the last appe ndReplacement(), * of the input string, starting at the position following the last appe ndReplacement(),
* to the destination string. <code>appendTail()</code> is intended to b e invoked after one * to the destination string. <code>appendTail()</code> is intended to b e invoked after one
* or more invocations of the <code>RegexMatcher::appendReplacement()</c ode>. * or more invocations of the <code>RegexMatcher::appendReplacement()</c ode>.
* *
skipping to change at line 1431 skipping to change at line 1431
* that field. This new UText is not guaranteed to be mu table. * that field. This new UText is not guaranteed to be mu table.
* @param destCapacity The number of elements in the destination array . * @param destCapacity The number of elements in the destination array .
* If the number of fields found is less than destCapaci ty, the * If the number of fields found is less than destCapaci ty, the
* extra strings in the destination array are not altere d. * extra strings in the destination array are not altere d.
* If the number of destination strings is less than the number * If the number of destination strings is less than the number
* of fields, the trailing part of the input string, inc luding any * of fields, the trailing part of the input string, inc luding any
* field delimiters, is placed in the last destination s tring. * field delimiters, is placed in the last destination s tring.
* @param status A reference to a UErrorCode to receive any errors. * @param status A reference to a UErrorCode to receive any errors.
* @return The number of fields into which the input string was split. * @return The number of fields into which the input string was split.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
virtual int32_t split(UText *input, virtual int32_t split(UText *input,
UText *dest[], UText *dest[],
int32_t destCapacity, int32_t destCapacity,
UErrorCode &status); UErrorCode &status);
/** /**
* Set a processing time limit for match operations with this Matcher. * Set a processing time limit for match operations with this Matcher.
* *
* Some patterns, when matching certain strings, can run in exponentia l time. * Some patterns, when matching certain strings, can run in exponentia l time.
skipping to change at line 1563 skipping to change at line 1563
* callback function. * callback function.
* @param context Out parameter, receives the user context poin ter that * @param context Out parameter, receives the user context poin ter that
* was set when uregex_setFindProgressCallback() was called. * was set when uregex_setFindProgressCallback() was called.
* @param status A reference to a UErrorCode to receive any er rors. * @param status A reference to a UErrorCode to receive any er rors.
* @draft ICU 4.6 * @draft ICU 4.6
*/ */
virtual void getFindProgressCallback(URegexFindProgressCallback *& callback, virtual void getFindProgressCallback(URegexFindProgressCallback *& callback,
const void *&context, const void *&context,
UErrorCode &status); UErrorCode &status);
/**
* inline version of ReportFindProgress() to eliminate function calls w
here a check for
* the callback suffices.
*
* @draft ICU 4.6
*/
#define REGEXFINDPROGRESS_INTERRUPT(pos, status) \
(fFindProgressCallbackFn != NULL) && (ReportFindProgress(pos, status) =
= FALSE)
/** /**
* setTrace Debug function, enable/disable tracing of the matching engine. * setTrace Debug function, enable/disable tracing of the matching engine.
* For internal ICU development use only. DO NO USE!!!! * For internal ICU development use only. DO NO USE!!!!
* @internal * @internal
*/ */
void setTrace(UBool state); void setTrace(UBool state);
/** /**
* ICU "poor man's RTTI", returns a UClassID for this class. * ICU "poor man's RTTI", returns a UClassID for this class.
* *
 End of changes. 16 change blocks. 
26 lines changed or deleted 15 lines changed or added


 selfmt.h   selfmt.h 
skipping to change at line 181 skipping to change at line 181
* delete msgFmt; * delete msgFmt;
* *
* \endhtmlonly * \endhtmlonly
* </p> * </p>
* *
* Produces the output:<br> * Produces the output:<br>
* \htmlonly * \htmlonly
* <code>Kirti est all&#x00E9;e &#x00E0; Paris.</code> * <code>Kirti est all&#x00E9;e &#x00E0; Paris.</code>
* \endhtmlonly * \endhtmlonly
* *
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
class U_I18N_API SelectFormat : public Format { class U_I18N_API SelectFormat : public Format {
public: public:
/** /**
* Creates a new <code>SelectFormat</code> for a given pattern string. * Creates a new <code>SelectFormat</code> for a given pattern string.
* @param pattern the pattern for this <code>SelectFormat</code>. * @param pattern the pattern for this <code>SelectFormat</code>.
* errors are returned to status if the pattern is inva lid. * errors are returned to status if the pattern is inva lid.
* @param status output param set to success/failure code on exit, wh ich * @param status output param set to success/failure code on exit, wh ich
* must not indicate a failure before the function call . * must not indicate a failure before the function call .
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
SelectFormat(const UnicodeString& pattern, UErrorCode& status); SelectFormat(const UnicodeString& pattern, UErrorCode& status);
/** /**
* copy constructor. * copy constructor.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
SelectFormat(const SelectFormat& other); SelectFormat(const SelectFormat& other);
/** /**
* Destructor. * Destructor.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual ~SelectFormat(); virtual ~SelectFormat();
/** /**
* Sets the pattern used by this select format. * Sets the pattern used by this select format.
* for the keyword rules. * for the keyword rules.
* Patterns and their interpretation are specified in the class descrip tion. * Patterns and their interpretation are specified in the class descrip tion.
* *
* @param pattern the pattern for this select format * @param pattern the pattern for this select format
* errors are returned to status if the pattern is inval id. * errors are returned to status if the pattern is inval id.
* @param status output param set to success/failure code on exit, whi ch * @param status output param set to success/failure code on exit, whi ch
* must not indicate a failure before the function call. * must not indicate a failure before the function call.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
void applyPattern(const UnicodeString& pattern, UErrorCode& status); void applyPattern(const UnicodeString& pattern, UErrorCode& status);
using Format::format; using Format::format;
/** /**
* Selects the phrase for the given keyword * Selects the phrase for the given keyword
* *
* @param keyword The keyword that is used to select an alternative. * @param keyword The keyword that is used to select an alternative.
* @param appendTo output parameter to receive result. * @param appendTo output parameter to receive result.
* result is appended to existing contents. * result is appended to existing contents.
* @param pos On input: an alignment field, if desired. * @param pos On input: an alignment field, if desired.
* On output: the offsets of the alignment field. * On output: the offsets of the alignment field.
* @param status output param set to success/failure code on exit, whi ch * @param status output param set to success/failure code on exit, whi ch
* must not indicate a failure before the function call . * must not indicate a failure before the function call .
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UnicodeString& format(const UnicodeString& keyword, UnicodeString& format(const UnicodeString& keyword,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPosition& pos, FieldPosition& pos,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Assignment operator * Assignment operator
* *
* @param other the SelectFormat object to copy from. * @param other the SelectFormat object to copy from.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
SelectFormat& operator=(const SelectFormat& other); SelectFormat& operator=(const SelectFormat& other);
/** /**
* Return true if another object is semantically equal to this one. * Return true if another object is semantically equal to this one.
* *
* @param other the SelectFormat object to be compared with. * @param other the SelectFormat object to be compared with.
* @return true if other is semantically equal to this. * @return true if other is semantically equal to this.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool operator==(const Format& other) const; virtual UBool operator==(const Format& other) const;
/** /**
* Return true if another object is semantically unequal to this one. * Return true if another object is semantically unequal to this one.
* *
* @param other the SelectFormat object to be compared with. * @param other the SelectFormat object to be compared with.
* @return true if other is semantically unequal to this. * @return true if other is semantically unequal to this.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UBool operator!=(const Format& other) const; virtual UBool operator!=(const Format& other) const;
/** /**
* Clones this Format object polymorphically. The caller owns the * Clones this Format object polymorphically. The caller owns the
* result and should delete it when done. * result and should delete it when done.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual Format* clone(void) const; virtual Format* clone(void) const;
/** /**
* Format an object to produce a string. * Format an object to produce a string.
* This method handles keyword strings. * This method handles keyword strings.
* If the Formattable object is not a <code>UnicodeString</code>, * If the Formattable object is not a <code>UnicodeString</code>,
* then it returns a failing UErrorCode. * then it returns a failing UErrorCode.
* *
* @param obj A keyword string that is used to select an alternat ive. * @param obj A keyword string that is used to select an alternat ive.
* @param appendTo output parameter to receive result. * @param appendTo output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param pos On input: an alignment field, if desired. * @param pos On input: an alignment field, if desired.
* On output: the offsets of the alignment field. * On output: the offsets of the alignment field.
* @param status output param filled with success/failure status. * @param status output param filled with success/failure status.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UnicodeString& format(const Formattable& obj, UnicodeString& format(const Formattable& obj,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPosition& pos, FieldPosition& pos,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Returns the pattern from applyPattern() or constructor. * Returns the pattern from applyPattern() or constructor.
* *
* @param appendTo output parameter to receive result. * @param appendTo output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @return the UnicodeString with inserted pattern. * @return the UnicodeString with inserted pattern.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UnicodeString& toPattern(UnicodeString& appendTo); UnicodeString& toPattern(UnicodeString& appendTo);
/** /**
* This method is not yet supported by <code>SelectFormat</code>. * This method is not yet supported by <code>SelectFormat</code>.
* <P> * <P>
* Before calling, set parse_pos.index to the offset you want to start * Before calling, set parse_pos.index to the offset you want to start
* parsing at in the source. After calling, parse_pos.index is the end of * parsing at in the source. After calling, parse_pos.index is the end of
* the text you parsed. If error occurs, index is unchanged. * the text you parsed. If error occurs, index is unchanged.
* <P> * <P>
skipping to change at line 325 skipping to change at line 325
* See Format::parseObject() for more. * See Format::parseObject() for more.
* *
* @param source The string to be parsed into an object. * @param source The string to be parsed into an object.
* @param result Formattable to be set to the parse result. * @param result Formattable to be set to the parse result.
* If parse fails, return contents are undefined. * If parse fails, return contents are undefined.
* @param parse_pos The position to start parsing at. Upon return * @param parse_pos The position to start parsing at. Upon return
* this param is set to the position after the * this param is set to the position after the
* last character successfully parsed. If the * last character successfully parsed. If the
* source is not parsed successfully, this param * source is not parsed successfully, this param
* will remain unchanged. * will remain unchanged.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual void parseObject(const UnicodeString& source, virtual void parseObject(const UnicodeString& source,
Formattable& result, Formattable& result,
ParsePosition& parse_pos) const; ParsePosition& parse_pos) const;
/** /**
* ICU "poor man's RTTI", returns a UClassID for this class. * ICU "poor man's RTTI", returns a UClassID for this class.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
static UClassID U_EXPORT2 getStaticClassID(void); static UClassID U_EXPORT2 getStaticClassID(void);
/** /**
* ICU "poor man's RTTI", returns a UClassID for the actual class. * ICU "poor man's RTTI", returns a UClassID for the actual class.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UClassID getDynamicClassID() const; virtual UClassID getDynamicClassID() const;
private: private:
typedef enum classesForSelectFormat{ typedef enum classesForSelectFormat{
tStartKeyword, tStartKeyword,
tContinueKeyword, tContinueKeyword,
tLeftBrace, tLeftBrace,
tRightBrace, tRightBrace,
tSpace, tSpace,
tOther tOther
}CharacterClass; }CharacterClass;
UnicodeString pattern; UnicodeString pattern;
//Hash to store the keyword, phrase pairs. //Hash to store the keyword, phrase pairs.
Hashtable *parsedValuesHash; Hashtable *parsedValuesHash;
SelectFormat(); // default constructor not implemented. SelectFormat(); // default constructor not implemented.
void init(UErrorCode& status); void initHashTable(UErrorCode &status);
void cleanHashTable();
//For the applyPattern , classifies char.s in one of the characterClass . //For the applyPattern , classifies char.s in one of the characterClass .
CharacterClass classifyCharacter(UChar ch) const; CharacterClass classifyCharacter(UChar ch) const;
//Checks if the "other" keyword is present in pattern. //Checks if the "other" keyword is present in pattern.
UBool checkSufficientDefinition(); UBool checkSufficientDefinition();
//Checks if the keyword passed is valid. //Checks if the keyword passed is valid.
UBool checkValidKeyword(const UnicodeString& argKeyword) const; UBool checkValidKeyword(const UnicodeString& argKeyword) const;
void parsingFailure(); void parsingFailure();
void copyHashtable(Hashtable *other, UErrorCode& status); void copyHashtable(Hashtable *other, UErrorCode& status);
}; };
 End of changes. 16 change blocks. 
16 lines changed or deleted 18 lines changed or added


 smpdtfmt.h   smpdtfmt.h 
skipping to change at line 408 skipping to change at line 408
* *
* @param cal Calendar set to the date and time to be formatted * @param cal Calendar set to the date and time to be formatted
* into a date/time string. * into a date/time string.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. Field val ues * of fields generated by this format call. Field val ues
* are defined in UDateFormatField. * are defined in UDateFormatField.
* @param status Input/output param set to success/failure code. * @param status Input/output param set to success/failure code.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& format( Calendar& cal, virtual UnicodeString& format( Calendar& cal,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Format a date or time, which is the standard millis since 24:00 GMT, Jan * Format a date or time, which is the standard millis since 24:00 GMT, Jan
* 1, 1970. Overrides DateFormat pure virtual method. * 1, 1970. Overrides DateFormat pure virtual method.
* <P> * <P>
skipping to change at line 457 skipping to change at line 457
* into a date-time string. If the type of the Format table * into a date-time string. If the type of the Format table
* is a numeric type, it is treated as if it were an * is a numeric type, it is treated as if it were an
* instance of Date. * instance of Date.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over positions * @param posIter On return, can be used to iterate over positions
* of fields generated by this format call. Field val ues * of fields generated by this format call. Field val ues
* are defined in UDateFormatField. * are defined in UDateFormatField.
* @param status Input/output param set to success/failure code. * @param status Input/output param set to success/failure code.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
virtual UnicodeString& format( const Formattable& obj, virtual UnicodeString& format( const Formattable& obj,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Redeclared DateFormat method. * Redeclared DateFormat method.
* @param date the Date value to be formatted. * @param date the Date value to be formatted.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
skipping to change at line 488 skipping to change at line 488
/** /**
* Redeclared DateFormat method. * Redeclared DateFormat method.
* @param date the Date value to be formatted. * @param date the Date value to be formatted.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
* Result is appended to existing contents. * Result is appended to existing contents.
* @param posIter On return, can be used to iterate over position s * @param posIter On return, can be used to iterate over position s
* of fields generated by this format call. Field values * of fields generated by this format call. Field values
* are defined in UDateFormatField. * are defined in UDateFormatField.
* @param status Input/output param set to success/failure code. * @param status Input/output param set to success/failure code.
* @return Reference to 'appendTo' parameter. * @return Reference to 'appendTo' parameter.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UnicodeString& format(UDate date, UnicodeString& format(UDate date,
UnicodeString& appendTo, UnicodeString& appendTo,
FieldPositionIterator* posIter, FieldPositionIterator* posIter,
UErrorCode& status) const; UErrorCode& status) const;
/** /**
* Redeclared DateFormat method. * Redeclared DateFormat method.
* @param obj Object to be formatted. * @param obj Object to be formatted.
* @param appendTo Output parameter to receive result. * @param appendTo Output parameter to receive result.
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 std_string.h   std_string.h 
skipping to change at line 31 skipping to change at line 31
* \file * \file
* \brief C++ API: Central ICU header for including the C++ standard &lt;st ring&gt; * \brief C++ API: Central ICU header for including the C++ standard &lt;st ring&gt;
* header and for related definitions. * header and for related definitions.
*/ */
#include "unicode/utypes.h" #include "unicode/utypes.h"
/** /**
* \def U_HAVE_STD_STRING * \def U_HAVE_STD_STRING
* Define whether the standard C++ (STL) &lt;string&gt; header is available . * Define whether the standard C++ (STL) &lt;string&gt; header is available .
* @draft ICU 4.2 * @internal
*/ */
#ifndef U_HAVE_STD_STRING #ifndef U_HAVE_STD_STRING
#define U_HAVE_STD_STRING 1 #define U_HAVE_STD_STRING 1
#endif #endif
#if U_HAVE_STD_STRING #if U_HAVE_STD_STRING
#include <string> #include <string>
/** /**
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 tblcoll.h   tblcoll.h 
skipping to change at line 665 skipping to change at line 665
virtual ECollationStrength getStrength(void) const; virtual ECollationStrength getStrength(void) const;
/** /**
* Sets the minimum strength to be used in comparison or transformation. * Sets the minimum strength to be used in comparison or transformation.
* @see RuleBasedCollator#getStrength * @see RuleBasedCollator#getStrength
* @param newStrength the new comparison level. * @param newStrength the new comparison level.
* @deprecated ICU 2.6 Use setAttribute(UCOL_STRENGTH...) instead * @deprecated ICU 2.6 Use setAttribute(UCOL_STRENGTH...) instead
*/ */
virtual void setStrength(ECollationStrength newStrength); virtual void setStrength(ECollationStrength newStrength);
/**
* Get the current reordering of scripts (if one has been set).
* @param dest The array to fill with the script ordering.
* @param destCapacity The length of dest. If it is 0, then dest may be
NULL and the function will only return the length of the result without wr
iting any of the result string (pre-flighting).
* @param pErrorCode Must be a valid pointer to an error code value, wh
ich must not indicate a failure before the function call.
* @return The length of the array of the script ordering.
* @see ucol_getReorderCodes
* @internal
*/
virtual int32_t getReorderCodes(int32_t* dest,
int32_t destCapacity,
UErrorCode& status) const;
/**
* Set the ordering of scripts for this collator.
* @param reorderCodes An array of script codes in the new order.
* @param reorderCodesLength The length of reorderCodes.
* @see ucol_setReorderCodes
* @internal
*/
virtual void setReorderCodes(const int32_t* reorderCodes,
int32_t reorderCodesLength,
UErrorCode& status);
private: private:
// private static constants ------------------------------------------- ---- // private static constants ------------------------------------------- ----
enum { enum {
/* need look up in .commit() */ /* need look up in .commit() */
CHARINDEX = 0x70000000, CHARINDEX = 0x70000000,
/* Expand index follows */ /* Expand index follows */
EXPANDCHARINDEX = 0x7E000000, EXPANDCHARINDEX = 0x7E000000,
/* contract indexes follows */ /* contract indexes follows */
 End of changes. 1 change blocks. 
0 lines changed or deleted 27 lines changed or added


 timezone.h   timezone.h 
skipping to change at line 461 skipping to change at line 461
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
SHORT = 1, SHORT = 1,
/** /**
* Selector for long display name * Selector for long display name
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
LONG, LONG,
/** /**
* Selector for short generic display name * Selector for short generic display name
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
SHORT_GENERIC, SHORT_GENERIC,
/** /**
* Selector for long generic display name * Selector for long generic display name
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
LONG_GENERIC, LONG_GENERIC,
/** /**
* Selector for short display name derived * Selector for short display name derived
* from time zone offset * from time zone offset
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
SHORT_GMT, SHORT_GMT,
/** /**
* Selector for long display name derived * Selector for long display name derived
* from time zone offset * from time zone offset
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
LONG_GMT, LONG_GMT,
/** /**
* Selector for short display name derived * Selector for short display name derived
* from the time zone's fallback name * from the time zone's fallback name
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
SHORT_COMMONLY_USED, SHORT_COMMONLY_USED,
/** /**
* Selector for long display name derived * Selector for long display name derived
* from the time zone's fallback name * from the time zone's fallback name
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
GENERIC_LOCATION GENERIC_LOCATION
}; };
/** /**
* Returns a name of this time zone suitable for presentation to the us er * Returns a name of this time zone suitable for presentation to the us er
* in the default locale. * in the default locale.
* This method returns the long name, not including daylight savings. * This method returns the long name, not including daylight savings.
* If the display name is not available for the locale, * If the display name is not available for the locale,
* then this method returns a string in the format * then this method returns a string in the format
 End of changes. 6 change blocks. 
6 lines changed or deleted 6 lines changed or added


 tmutfmt.h   tmutfmt.h 
skipping to change at line 236 skipping to change at line 236
void initDataMembers(UErrorCode& status); void initDataMembers(UErrorCode& status);
// initialize fTimeUnitToCountToPatterns from current locale's resource . // initialize fTimeUnitToCountToPatterns from current locale's resource .
void readFromCurrentLocale(EStyle style, const char* key, UErrorCode& s tatus); void readFromCurrentLocale(EStyle style, const char* key, UErrorCode& s tatus);
// check completeness of fTimeUnitToCountToPatterns against all time un its, // check completeness of fTimeUnitToCountToPatterns against all time un its,
// and all plural rules, fill in fallback as necessary. // and all plural rules, fill in fallback as necessary.
void checkConsistency(EStyle style, const char* key, UErrorCode& status ); void checkConsistency(EStyle style, const char* key, UErrorCode& status );
// fill in fTimeUnitToCountToPatterns from locale fall-back chain // fill in fTimeUnitToCountToPatterns from locale fall-back chain
void searchInLocaleChain(EStyle style, const char* key, void searchInLocaleChain(EStyle style, const char* key, const char* loc aleName,
TimeUnit::UTimeUnitFields field, const char*, TimeUnit::UTimeUnitFields field, const char*,
const char*, Hashtable*, UErrorCode&); const char*, Hashtable*, UErrorCode&);
// initialize hash table // initialize hash table
Hashtable* initHash(UErrorCode& status); Hashtable* initHash(UErrorCode& status);
// delete hash table // delete hash table
void deleteHash(Hashtable* htable); void deleteHash(Hashtable* htable);
// copy hash table // copy hash table
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 ubidi.h   ubidi.h 
skipping to change at line 30 skipping to change at line 30
#include "unicode/utypes.h" #include "unicode/utypes.h"
#include "unicode/uchar.h" #include "unicode/uchar.h"
#include "unicode/localpointer.h" #include "unicode/localpointer.h"
/** /**
*\file *\file
* \brief C API: Bidi algorithm * \brief C API: Bidi algorithm
* *
* <h2>Bidi algorithm for ICU</h2> * <h2>Bidi algorithm for ICU</h2>
* *
* This is an implementation of the Unicode Bidirectional algorithm. * This is an implementation of the Unicode Bidirectional Algorithm.
* The algorithm is defined in the * The algorithm is defined in the
* <a href="http://www.unicode.org/unicode/reports/tr9/">Unicode Standard A * <a href="http://www.unicode.org/unicode/reports/tr9/">Unicode Standard A
nnex #9</a>, nnex #9</a>.<p>
* version 13, also described in The Unicode Standard, Version 4.0 .<p>
* *
* Note: Libraries that perform a bidirectional algorithm and * Note: Libraries that perform a bidirectional algorithm and
* reorder strings accordingly are sometimes called "Storage Layout Engines ". * reorder strings accordingly are sometimes called "Storage Layout Engines ".
* ICU's Bidi and shaping (u_shapeArabic()) APIs can be used at the core of such * ICU's Bidi and shaping (u_shapeArabic()) APIs can be used at the core of such
* "Storage Layout Engines". * "Storage Layout Engines".
* *
* <h3>General remarks about the API:</h3> * <h3>General remarks about the API:</h3>
* *
* In functions with an error code parameter, * In functions with an error code parameter,
* the <code>pErrorCode</code> pointer must be valid * the <code>pErrorCode</code> pointer must be valid
skipping to change at line 566 skipping to change at line 565
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUBiDiPointer * \class LocalUBiDiPointer
* "Smart pointer" class, closes a UBiDi via ubidi_close(). * "Smart pointer" class, closes a UBiDi via ubidi_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUBiDiPointer, UBiDi, ubidi_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUBiDiPointer, UBiDi, ubidi_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Modify the operation of the Bidi algorithm such that it * Modify the operation of the Bidi algorithm such that it
* approximates an "inverse Bidi" algorithm. This function * approximates an "inverse Bidi" algorithm. This function
 End of changes. 3 change blocks. 
5 lines changed or deleted 4 lines changed or added


 ubrk.h   ubrk.h 
skipping to change at line 288 skipping to change at line 288
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUBreakIteratorPointer * \class LocalUBreakIteratorPointer
* "Smart pointer" class, closes a UBreakIterator via ubrk_close(). * "Smart pointer" class, closes a UBreakIterator via ubrk_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUBreakIteratorPointer, UBreakIterator, ubr k_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUBreakIteratorPointer, UBreakIterator, ubr k_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Sets an existing iterator to point to a new piece of text * Sets an existing iterator to point to a new piece of text
* @param bi The iterator to use * @param bi The iterator to use
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 ucal.h   ucal.h 
skipping to change at line 161 skipping to change at line 161
*/ */
enum UCalendarType { enum UCalendarType {
/** /**
* Despite the name, UCAL_TRADITIONAL designates the locale's default cal endar, * Despite the name, UCAL_TRADITIONAL designates the locale's default cal endar,
* which may be the Gregorian calendar or some other calendar. * which may be the Gregorian calendar or some other calendar.
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
UCAL_TRADITIONAL, UCAL_TRADITIONAL,
/** /**
* A better name for UCAL_TRADITIONAL. * A better name for UCAL_TRADITIONAL.
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
UCAL_DEFAULT = UCAL_TRADITIONAL, UCAL_DEFAULT = UCAL_TRADITIONAL,
/** /**
* Unambiguously designates the Gregorian calendar for the locale. * Unambiguously designates the Gregorian calendar for the locale.
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
UCAL_GREGORIAN UCAL_GREGORIAN
}; };
/** @stable ICU 2.0 */ /** @stable ICU 2.0 */
skipping to change at line 659 skipping to change at line 659
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUCalendarPointer * \class LocalUCalendarPointer
* "Smart pointer" class, closes a UCalendar via ucal_close(). * "Smart pointer" class, closes a UCalendar via ucal_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUCalendarPointer, UCalendar, ucal_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUCalendarPointer, UCalendar, ucal_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Open a copy of a UCalendar. * Open a copy of a UCalendar.
* This function performs a deep copy. * This function performs a deep copy.
skipping to change at line 1201 skipping to change at line 1201
* @return a string enumeration over keyword values for the given key and t he locale. * @return a string enumeration over keyword values for the given key and t he locale.
* @stable ICU 4.2 * @stable ICU 4.2
*/ */
U_STABLE UEnumeration* U_EXPORT2 U_STABLE UEnumeration* U_EXPORT2
ucal_getKeywordValuesForLocale(const char* key, ucal_getKeywordValuesForLocale(const char* key,
const char* locale, const char* locale,
UBool commonlyUsed, UBool commonlyUsed,
UErrorCode* status); UErrorCode* status);
/** Weekday types, as returned by ucal_getDayOfWeekType(). /** Weekday types, as returned by ucal_getDayOfWeekType().
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
enum UCalendarWeekdayType { enum UCalendarWeekdayType {
/** /**
* Designates a full weekday (no part of the day is included in the weeke nd). * Designates a full weekday (no part of the day is included in the weeke nd).
* @stable ICU 4.4
*/ */
UCAL_WEEKDAY, UCAL_WEEKDAY,
/** /**
* Designates a full weekend day (the entire day is included in the weeke nd). * Designates a full weekend day (the entire day is included in the weeke nd).
* @stable ICU 4.4
*/ */
UCAL_WEEKEND, UCAL_WEEKEND,
/** /**
* Designates a day that starts as a weekday and transitions to the weeke nd. * Designates a day that starts as a weekday and transitions to the weeke nd.
* Call ucal_getWeekendTransition() to get the time of transition. * Call ucal_getWeekendTransition() to get the time of transition.
* @stable ICU 4.4
*/ */
UCAL_WEEKEND_ONSET, UCAL_WEEKEND_ONSET,
/** /**
* Designates a day that starts as the weekend and transitions to a weekd ay. * Designates a day that starts as the weekend and transitions to a weekd ay.
* Call ucal_getWeekendTransition() to get the time of transition. * Call ucal_getWeekendTransition() to get the time of transition.
* @stable ICU 4.4
*/ */
UCAL_WEEKEND_CEASE UCAL_WEEKEND_CEASE
}; };
/** @draft ICU 4.4 */ /** @stable ICU 4.4 */
typedef enum UCalendarWeekdayType UCalendarWeekdayType; typedef enum UCalendarWeekdayType UCalendarWeekdayType;
/** /**
* Returns whether the given day of the week is a weekday, a * Returns whether the given day of the week is a weekday, a
* weekend day, or a day that transitions from one to the other, * weekend day, or a day that transitions from one to the other,
* in this calendar system. If a transition occurs at midnight, * in this calendar system. If a transition occurs at midnight,
* then the days before and after the transition will have the * then the days before and after the transition will have the
* type UCAL_WEEKDAY or UCAL_WEEKEND. If a transition occurs at a time * type UCAL_WEEKDAY or UCAL_WEEKEND. If a transition occurs at a time
* other than midnight, then the day of the transition will have * other than midnight, then the day of the transition will have
* the type UCAL_WEEKEND_ONSET or UCAL_WEEKEND_CEASE. In this case, the * the type UCAL_WEEKEND_ONSET or UCAL_WEEKEND_CEASE. In this case, the
* method getWeekendTransition() will return the point of * method getWeekendTransition() will return the point of
* transition. * transition.
* @param cal The UCalendar to query. * @param cal The UCalendar to query.
* @param dayOfWeek The day of the week whose type is desired (UCAL_SUNDAY. .UCAL_SATURDAY). * @param dayOfWeek The day of the week whose type is desired (UCAL_SUNDAY. .UCAL_SATURDAY).
* @param status The error code for the operation. * @param status The error code for the operation.
* @return The UCalendarWeekdayType for the day of the week. * @return The UCalendarWeekdayType for the day of the week.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UCalendarWeekdayType U_EXPORT2 U_STABLE UCalendarWeekdayType U_EXPORT2
ucal_getDayOfWeekType(const UCalendar *cal, UCalendarDaysOfWeek dayOfWeek, UErrorCode* status); ucal_getDayOfWeekType(const UCalendar *cal, UCalendarDaysOfWeek dayOfWeek, UErrorCode* status);
/** /**
* Returns the time during the day at which the weekend begins or ends in * Returns the time during the day at which the weekend begins or ends in
* this calendar system. If ucal_getDayOfWeekType() rerturns UCAL_WEEKEND_ ONSET * this calendar system. If ucal_getDayOfWeekType() rerturns UCAL_WEEKEND_ ONSET
* for the specified dayOfWeek, return the time at which the weekend begins . * for the specified dayOfWeek, return the time at which the weekend begins .
* If ucal_getDayOfWeekType() returns UCAL_WEEKEND_CEASE for the specified dayOfWeek, * If ucal_getDayOfWeekType() returns UCAL_WEEKEND_CEASE for the specified dayOfWeek,
* return the time at which the weekend ends. If ucal_getDayOfWeekType() re turns * return the time at which the weekend ends. If ucal_getDayOfWeekType() re turns
* some other UCalendarWeekdayType for the specified dayOfWeek, is it an er ror condition * some other UCalendarWeekdayType for the specified dayOfWeek, is it an er ror condition
* (U_ILLEGAL_ARGUMENT_ERROR). * (U_ILLEGAL_ARGUMENT_ERROR).
* @param cal The UCalendar to query. * @param cal The UCalendar to query.
* @param dayOfWeek The day of the week for which the weekend transition ti me is * @param dayOfWeek The day of the week for which the weekend transition ti me is
* desired (UCAL_SUNDAY..UCAL_SATURDAY). * desired (UCAL_SUNDAY..UCAL_SATURDAY).
* @param status The error code for the operation. * @param status The error code for the operation.
* @return The milliseconds after midnight at which the weekend begins or e nds. * @return The milliseconds after midnight at which the weekend begins or e nds.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
ucal_getWeekendTransition(const UCalendar *cal, UCalendarDaysOfWeek dayOfWe ek, UErrorCode *status); ucal_getWeekendTransition(const UCalendar *cal, UCalendarDaysOfWeek dayOfWe ek, UErrorCode *status);
/** /**
* Returns TRUE if the given UDate is in the weekend in * Returns TRUE if the given UDate is in the weekend in
* this calendar system. * this calendar system.
* @param cal The UCalendar to query. * @param cal The UCalendar to query.
* @param date The UDate in question. * @param date The UDate in question.
* @param status The error code for the operation. * @param status The error code for the operation.
* @return TRUE if the given UDate is in the weekend in * @return TRUE if the given UDate is in the weekend in
* this calendar system, FALSE otherwise. * this calendar system, FALSE otherwise.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UBool U_EXPORT2 U_STABLE UBool U_EXPORT2
ucal_isWeekend(const UCalendar *cal, UDate date, UErrorCode *status); ucal_isWeekend(const UCalendar *cal, UDate date, UErrorCode *status);
#endif /* #if !UCONFIG_NO_FORMATTING */ #endif /* #if !UCONFIG_NO_FORMATTING */
#endif #endif
 End of changes. 14 change blocks. 
10 lines changed or deleted 14 lines changed or added


 ucasemap.h   ucasemap.h 
skipping to change at line 91 skipping to change at line 91
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUCaseMapPointer * \class LocalUCaseMapPointer
* "Smart pointer" class, closes a UCaseMap via ucasemap_close(). * "Smart pointer" class, closes a UCaseMap via ucasemap_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUCaseMapPointer, UCaseMap, ucasemap_close) ; U_DEFINE_LOCAL_OPEN_POINTER(LocalUCaseMapPointer, UCaseMap, ucasemap_close) ;
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Get the locale ID that is used for language-dependent case mappings. * Get the locale ID that is used for language-dependent case mappings.
* @param csm UCaseMap service object. * @param csm UCaseMap service object.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 ucnv.h   ucnv.h 
/* /*
********************************************************************** **********************************************************************
* Copyright (C) 1999-2009, International Business Machines * Copyright (C) 1999-2010, International Business Machines
* Corporation and others. All Rights Reserved. * Corporation and others. All Rights Reserved.
********************************************************************** **********************************************************************
* ucnv.h: * ucnv.h:
* External APIs for the ICU's codeset conversion library * External APIs for the ICU's codeset conversion library
* Bertrand A. Damiba * Bertrand A. Damiba
* *
* Modification History: * Modification History:
* *
* Date Name Description * Date Name Description
* 04/04/99 helena Fixed internal header inclusion. * 04/04/99 helena Fixed internal header inclusion.
skipping to change at line 536 skipping to change at line 536
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUConverterPointer * \class LocalUConverterPointer
* "Smart pointer" class, closes a UConverter via ucnv_close(). * "Smart pointer" class, closes a UConverter via ucnv_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUConverterPointer, UConverter, ucnv_close) ; U_DEFINE_LOCAL_OPEN_POINTER(LocalUConverterPointer, UConverter, ucnv_close) ;
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Fills in the output parameter, subChars, with the substitution character s * Fills in the output parameter, subChars, with the substitution character s
* as multiple bytes. * as multiple bytes.
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 ucnvsel.h   ucnvsel.h 
skipping to change at line 102 skipping to change at line 102
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUConverterSelectorPointer * \class LocalUConverterSelectorPointer
* "Smart pointer" class, closes a UConverterSelector via ucnvsel_close(). * "Smart pointer" class, closes a UConverterSelector via ucnvsel_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUConverterSelectorPointer, UConverterSelec tor, ucnvsel_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUConverterSelectorPointer, UConverterSelec tor, ucnvsel_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Open a selector from its serialized form. * Open a selector from its serialized form.
* The buffer must remain valid and unchanged for the lifetime of the selec tor. * The buffer must remain valid and unchanged for the lifetime of the selec tor.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 ucsdet.h   ucsdet.h 
/* /*
********************************************************************** **********************************************************************
* Copyright (C) 2005-2009, International Business Machines * Copyright (C) 2005-2010, International Business Machines
* Corporation and others. All Rights Reserved. * Corporation and others. All Rights Reserved.
********************************************************************** **********************************************************************
* file name: ucsdet.h * file name: ucsdet.h
* encoding: US-ASCII * encoding: US-ASCII
* indentation:4 * indentation:4
* *
* created on: 2005Aug04 * created on: 2005Aug04
* created by: Andy Heninger * created by: Andy Heninger
* *
* ICU Character Set Detection, API for C * ICU Character Set Detection, API for C
skipping to change at line 97 skipping to change at line 97
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUCharsetDetectorPointer * \class LocalUCharsetDetectorPointer
* "Smart pointer" class, closes a UCharsetDetector via ucsdet_close(). * "Smart pointer" class, closes a UCharsetDetector via ucsdet_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUCharsetDetectorPointer, UCharsetDetector, ucsdet_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUCharsetDetectorPointer, UCharsetDetector, ucsdet_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Set the input byte data whose charset is to detected. * Set the input byte data whose charset is to detected.
* *
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 udat.h   udat.h 
skipping to change at line 502 skipping to change at line 502
UDAT_FIELD_COUNT = 30 UDAT_FIELD_COUNT = 30
} UDateFormatField; } UDateFormatField;
/** /**
* Maps from a UDateFormatField to the corresponding UCalendarDateFields. * Maps from a UDateFormatField to the corresponding UCalendarDateFields.
* Note: since the mapping is many-to-one, there is no inverse mapping. * Note: since the mapping is many-to-one, there is no inverse mapping.
* @param field the UDateFormatField. * @param field the UDateFormatField.
* @return the UCalendarDateField. This will be UCAL_FIELD_COUNT in case * @return the UCalendarDateField. This will be UCAL_FIELD_COUNT in case
* of error (e.g., the input field is UDAT_FIELD_COUNT). * of error (e.g., the input field is UDAT_FIELD_COUNT).
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UCalendarDateFields U_EXPORT2 U_STABLE UCalendarDateFields U_EXPORT2
udat_toCalendarDateField(UDateFormatField field); udat_toCalendarDateField(UDateFormatField field);
/** /**
* Open a new UDateFormat for formatting and parsing dates and times. * Open a new UDateFormat for formatting and parsing dates and times.
* A UDateFormat may be used to format dates in calls to {@link #udat_forma t }, * A UDateFormat may be used to format dates in calls to {@link #udat_forma t },
* and to parse dates in calls to {@link #udat_parse }. * and to parse dates in calls to {@link #udat_parse }.
* @param timeStyle The style used to format times; one of UDAT_FULL, UDAT_ LONG, * @param timeStyle The style used to format times; one of UDAT_FULL, UDAT_ LONG,
* UDAT_MEDIUM, UDAT_SHORT, UDAT_DEFAULT, or UDAT_NONE (relative time style s * UDAT_MEDIUM, UDAT_SHORT, UDAT_DEFAULT, or UDAT_NONE (relative time style s
* are not currently supported) * are not currently supported)
* @param dateStyle The style used to format dates; one of UDAT_FULL, UDAT_ LONG, * @param dateStyle The style used to format dates; one of UDAT_FULL, UDAT_ LONG,
skipping to change at line 558 skipping to change at line 558
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUDateFormatPointer * \class LocalUDateFormatPointer
* "Smart pointer" class, closes a UDateFormat via udat_close(). * "Smart pointer" class, closes a UDateFormat via udat_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUDateFormatPointer, UDateFormat, udat_clos e); U_DEFINE_LOCAL_OPEN_POINTER(LocalUDateFormatPointer, UDateFormat, udat_clos e);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Open a copy of a UDateFormat. * Open a copy of a UDateFormat.
* This function performs a deep copy. * This function performs a deep copy.
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 udata.h   udata.h 
skipping to change at line 270 skipping to change at line 270
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUDataMemoryPointer * \class LocalUDataMemoryPointer
* "Smart pointer" class, closes a UDataMemory via udata_close(). * "Smart pointer" class, closes a UDataMemory via udata_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUDataMemoryPointer, UDataMemory, udata_clo se); U_DEFINE_LOCAL_OPEN_POINTER(LocalUDataMemoryPointer, UDataMemory, udata_clo se);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Get the pointer to the actual data inside the data memory. * Get the pointer to the actual data inside the data memory.
* The data is read-only. * The data is read-only.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 udatpg.h   udatpg.h 
skipping to change at line 95 skipping to change at line 95
UDATPG_ZONE_FIELD, UDATPG_ZONE_FIELD,
/** @stable ICU 3.8 */ /** @stable ICU 3.8 */
UDATPG_FIELD_COUNT UDATPG_FIELD_COUNT
} UDateTimePatternField; } UDateTimePatternField;
/** /**
* Masks to control forcing the length of specified fields in the returned * Masks to control forcing the length of specified fields in the returned
* pattern to match those in the skeleton (when this would not happen * pattern to match those in the skeleton (when this would not happen
* otherwise). These may be combined to force the length of multiple fields . * otherwise). These may be combined to force the length of multiple fields .
* Used with udatpg_getBestPatternWithOptions, udatpg_replaceFieldTypesWith Options. * Used with udatpg_getBestPatternWithOptions, udatpg_replaceFieldTypesWith Options.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
typedef enum UDateTimePatternMatchOptions { typedef enum UDateTimePatternMatchOptions {
/** @draft ICU 4.4 */ /** @stable ICU 4.4 */
UDATPG_MATCH_NO_OPTIONS = 0, UDATPG_MATCH_NO_OPTIONS = 0,
/** @draft ICU 4.4 */ /** @stable ICU 4.4 */
UDATPG_MATCH_HOUR_FIELD_LENGTH = 1 << UDATPG_HOUR_FIELD, UDATPG_MATCH_HOUR_FIELD_LENGTH = 1 << UDATPG_HOUR_FIELD,
/** @internal ICU 4.4 */ /** @internal ICU 4.4 */
UDATPG_MATCH_MINUTE_FIELD_LENGTH = 1 << UDATPG_MINUTE_FIELD, UDATPG_MATCH_MINUTE_FIELD_LENGTH = 1 << UDATPG_MINUTE_FIELD,
/** @internal ICU 4.4 */ /** @internal ICU 4.4 */
UDATPG_MATCH_SECOND_FIELD_LENGTH = 1 << UDATPG_SECOND_FIELD, UDATPG_MATCH_SECOND_FIELD_LENGTH = 1 << UDATPG_SECOND_FIELD,
/** @draft ICU 4.4 */ /** @stable ICU 4.4 */
UDATPG_MATCH_ALL_FIELDS_LENGTH = (1 << UDATPG_FIELD_COUNT) - 1 UDATPG_MATCH_ALL_FIELDS_LENGTH = (1 << UDATPG_FIELD_COUNT) - 1
} UDateTimePatternMatchOptions; } UDateTimePatternMatchOptions;
/** /**
* Status return values from udatpg_addPattern(). * Status return values from udatpg_addPattern().
* @stable ICU 3.8 * @stable ICU 3.8
*/ */
typedef enum UDateTimePatternConflict { typedef enum UDateTimePatternConflict {
/** @stable ICU 3.8 */ /** @stable ICU 3.8 */
UDATPG_NO_CONFLICT, UDATPG_NO_CONFLICT,
skipping to change at line 165 skipping to change at line 165
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUDateTimePatternGeneratorPointer * \class LocalUDateTimePatternGeneratorPointer
* "Smart pointer" class, closes a UDateTimePatternGenerator via udatpg_clo se(). * "Smart pointer" class, closes a UDateTimePatternGenerator via udatpg_clo se().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUDateTimePatternGeneratorPointer, UDateTim ePatternGenerator, udatpg_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUDateTimePatternGeneratorPointer, UDateTim ePatternGenerator, udatpg_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Create a copy pf a generator. * Create a copy pf a generator.
* @param dtpg a pointer to UDateTimePatternGenerator to be copied. * @param dtpg a pointer to UDateTimePatternGenerator to be copied.
skipping to change at line 241 skipping to change at line 241
* would not happen otherwise). For default behavior, use * would not happen otherwise). For default behavior, use
* UDATPG_MATCH_NO_OPTIONS. * UDATPG_MATCH_NO_OPTIONS.
* @param bestPattern * @param bestPattern
* The best pattern found from the given skeleton. * The best pattern found from the given skeleton.
* @param capacity * @param capacity
* the capacity of bestPattern. * the capacity of bestPattern.
* @param pErrorCode * @param pErrorCode
* a pointer to the UErrorCode which must not indicate a * a pointer to the UErrorCode which must not indicate a
* failure before the function call. * failure before the function call.
* @return the length of bestPattern. * @return the length of bestPattern.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
udatpg_getBestPatternWithOptions(UDateTimePatternGenerator *dtpg, udatpg_getBestPatternWithOptions(UDateTimePatternGenerator *dtpg,
const UChar *skeleton, int32_t length, const UChar *skeleton, int32_t length,
UDateTimePatternMatchOptions options, UDateTimePatternMatchOptions options,
UChar *bestPattern, int32_t capacity, UChar *bestPattern, int32_t capacity,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Get a unique skeleton from a given pattern. For example, * Get a unique skeleton from a given pattern. For example,
* both "MMM-dd" and "dd/MMM" produce the skeleton "MMMdd". * both "MMM-dd" and "dd/MMM" produce the skeleton "MMMdd".
* *
skipping to change at line 534 skipping to change at line 534
* @param options * @param options
* Options controlling whether the length of specified fields in the * Options controlling whether the length of specified fields in the
* pattern are adjusted to match those in the skeleton (when thi s * pattern are adjusted to match those in the skeleton (when thi s
* would not happen otherwise). For default behavior, use * would not happen otherwise). For default behavior, use
* UDATPG_MATCH_NO_OPTIONS. * UDATPG_MATCH_NO_OPTIONS.
* @param dest pattern adjusted to match the skeleton fields widths and su btypes. * @param dest pattern adjusted to match the skeleton fields widths and su btypes.
* @param destCapacity the capacity of dest. * @param destCapacity the capacity of dest.
* @param pErrorCode a pointer to the UErrorCode which must not indicate a * @param pErrorCode a pointer to the UErrorCode which must not indicate a
* failure before the function call. * failure before the function call.
* @return the length of dest. * @return the length of dest.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
udatpg_replaceFieldTypesWithOptions(UDateTimePatternGenerator *dtpg, udatpg_replaceFieldTypesWithOptions(UDateTimePatternGenerator *dtpg,
const UChar *pattern, int32_t patternLe ngth, const UChar *pattern, int32_t patternLe ngth,
const UChar *skeleton, int32_t skeleton Length, const UChar *skeleton, int32_t skeleton Length,
UDateTimePatternMatchOptions options, UDateTimePatternMatchOptions options,
UChar *dest, int32_t destCapacity, UChar *dest, int32_t destCapacity,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Return a UEnumeration list of all the skeletons in canonical form. * Return a UEnumeration list of all the skeletons in canonical form.
* Call udatpg_getPatternForSkeleton() to get the corresponding pattern. * Call udatpg_getPatternForSkeleton() to get the corresponding pattern.
 End of changes. 9 change blocks. 
9 lines changed or deleted 9 lines changed or added


 udeprctd.h   udeprctd.h 
skipping to change at line 37 skipping to change at line 37
# define ucol_getContractions ucol_getContractions_DEPRECATED_API_DO _NOT_USE # define ucol_getContractions ucol_getContractions_DEPRECATED_API_DO _NOT_USE
# define ucol_getLocale ucol_getLocale_DEPRECATED_API_DO_NOT_USE # define ucol_getLocale ucol_getLocale_DEPRECATED_API_DO_NOT_USE
# define ures_countArrayItems ures_countArrayItems_DEPRECATED_API_DO _NOT_USE # define ures_countArrayItems ures_countArrayItems_DEPRECATED_API_DO _NOT_USE
# define ures_getLocale ures_getLocale_DEPRECATED_API_DO_NOT_USE # define ures_getLocale ures_getLocale_DEPRECATED_API_DO_NOT_USE
# define ures_getVersionNumber ures_getVersionNumber_DEPRECATED_API_ DO_NOT_USE # define ures_getVersionNumber ures_getVersionNumber_DEPRECATED_API_ DO_NOT_USE
# define utrans_getAvailableID utrans_getAvailableID_DEPRECATED_API_ DO_NOT_USE # define utrans_getAvailableID utrans_getAvailableID_DEPRECATED_API_ DO_NOT_USE
# define utrans_getID utrans_getID_DEPRECATED_API_DO_NOT_USE # define utrans_getID utrans_getID_DEPRECATED_API_DO_NOT_USE
# define utrans_open utrans_open_DEPRECATED_API_DO_NOT_USE # define utrans_open utrans_open_DEPRECATED_API_DO_NOT_USE
# define utrans_unregister utrans_unregister_DEPRECATED_API_DO_NOT_U SE # define utrans_unregister utrans_unregister_DEPRECATED_API_DO_NOT_U SE
# else # else
# define ucol_getContractions_4_5 ucol_getContractions_DEPRECATED_AP # define ucol_getContractions_4_6 ucol_getContractions_DEPRECATED_AP
I_DO_NOT_USE I_DO_NOT_USE
# define ucol_getLocale_4_5 ucol_getLocale_DEPRECATED_API_DO_NOT_USE # define ucol_getLocale_4_6 ucol_getLocale_DEPRECATED_API_DO_NOT_USE
# define ures_countArrayItems_4_5 ures_countArrayItems_DEPRECATED_AP # define ures_countArrayItems_4_6 ures_countArrayItems_DEPRECATED_AP
I_DO_NOT_USE I_DO_NOT_USE
# define ures_getLocale_4_5 ures_getLocale_DEPRECATED_API_DO_NOT_USE # define ures_getLocale_4_6 ures_getLocale_DEPRECATED_API_DO_NOT_USE
# define ures_getVersionNumber_4_5 ures_getVersionNumber_DEPRECATED_ # define ures_getVersionNumber_4_6 ures_getVersionNumber_DEPRECATED_
API_DO_NOT_USE API_DO_NOT_USE
# define utrans_getAvailableID_4_5 utrans_getAvailableID_DEPRECATED_ # define utrans_getAvailableID_4_6 utrans_getAvailableID_DEPRECATED_
API_DO_NOT_USE API_DO_NOT_USE
# define utrans_getID_4_5 utrans_getID_DEPRECATED_API_DO_NOT_USE # define utrans_getID_4_6 utrans_getID_DEPRECATED_API_DO_NOT_USE
# define utrans_open_4_5 utrans_open_DEPRECATED_API_DO_NOT_USE # define utrans_open_4_6 utrans_open_DEPRECATED_API_DO_NOT_USE
# define utrans_unregister_4_5 utrans_unregister_DEPRECATED_API_DO_N # define utrans_unregister_4_6 utrans_unregister_DEPRECATED_API_DO_N
OT_USE OT_USE
# endif /* U_DISABLE_RENAMING */ # endif /* U_DISABLE_RENAMING */
#endif /* U_HIDE_DEPRECATED_API */ #endif /* U_HIDE_DEPRECATED_API */
#endif /* UDEPRCTD_H */ #endif /* UDEPRCTD_H */
 End of changes. 1 change blocks. 
14 lines changed or deleted 14 lines changed or added


 udraft.h   udraft.h 
skipping to change at line 27 skipping to change at line 27
* THIS FILE IS MACHINE-GENERATED, DON'T PLAY WITH IT IF YOU DON'T KNOW WHA T * THIS FILE IS MACHINE-GENERATED, DON'T PLAY WITH IT IF YOU DON'T KNOW WHA T
* YOU ARE DOING, OTHERWISE VERY BAD THINGS WILL HAPPEN! * YOU ARE DOING, OTHERWISE VERY BAD THINGS WILL HAPPEN!
*/ */
#ifndef UDRAFT_H #ifndef UDRAFT_H
#define UDRAFT_H #define UDRAFT_H
#ifdef U_HIDE_DRAFT_API #ifdef U_HIDE_DRAFT_API
# if U_DISABLE_RENAMING # if U_DISABLE_RENAMING
# define bamuScriptCode bamuScriptCode_DRAFT_API_DO_NOT_USE # define ubidi_getBaseDirection ubidi_getBaseDirection_DRAFT_API_DO_
# define u_fadopt u_fadopt_DRAFT_API_DO_NOT_USE NOT_USE
# define u_strFromJavaModifiedUTF8WithSub u_strFromJavaModifiedUTF8W
ithSub_DRAFT_API_DO_NOT_USE
# define u_strToJavaModifiedUTF8 u_strToJavaModifiedUTF8_DRAFT_API_D
O_NOT_USE
# define ucal_getDayOfWeekType ucal_getDayOfWeekType_DRAFT_API_DO_NO
T_USE
# define ucal_getWeekendTransition ucal_getWeekendTransition_DRAFT_A
PI_DO_NOT_USE
# define ucal_isWeekend ucal_isWeekend_DRAFT_API_DO_NOT_USE
# define udat_toCalendarDateField udat_toCalendarDateField_DRAFT_API
_DO_NOT_USE
# define udatpg_getBestPatternWithOptions udatpg_getBestPatternWithO
ptions_DRAFT_API_DO_NOT_USE
# define udatpg_replaceFieldTypesWithOptions udatpg_replaceFieldType
sWithOptions_DRAFT_API_DO_NOT_USE
# define uidna_close uidna_close_DRAFT_API_DO_NOT_USE # define uidna_close uidna_close_DRAFT_API_DO_NOT_USE
# define uidna_labelToASCII uidna_labelToASCII_DRAFT_API_DO_NOT_USE # define uidna_labelToASCII uidna_labelToASCII_DRAFT_API_DO_NOT_USE
# define uidna_labelToASCII_UTF8 uidna_labelToASCII_UTF8_DRAFT_API_D O_NOT_USE # define uidna_labelToASCII_UTF8 uidna_labelToASCII_UTF8_DRAFT_API_D O_NOT_USE
# define uidna_labelToUnicode uidna_labelToUnicode_DRAFT_API_DO_NOT_ USE # define uidna_labelToUnicode uidna_labelToUnicode_DRAFT_API_DO_NOT_ USE
# define uidna_labelToUnicodeUTF8 uidna_labelToUnicodeUTF8_DRAFT_API _DO_NOT_USE # define uidna_labelToUnicodeUTF8 uidna_labelToUnicodeUTF8_DRAFT_API _DO_NOT_USE
# define uidna_nameToASCII uidna_nameToASCII_DRAFT_API_DO_NOT_USE # define uidna_nameToASCII uidna_nameToASCII_DRAFT_API_DO_NOT_USE
# define uidna_nameToASCII_UTF8 uidna_nameToASCII_UTF8_DRAFT_API_DO_ NOT_USE # define uidna_nameToASCII_UTF8 uidna_nameToASCII_UTF8_DRAFT_API_DO_ NOT_USE
# define uidna_nameToUnicode uidna_nameToUnicode_DRAFT_API_DO_NOT_US E # define uidna_nameToUnicode uidna_nameToUnicode_DRAFT_API_DO_NOT_US E
# define uidna_nameToUnicodeUTF8 uidna_nameToUnicodeUTF8_DRAFT_API_D O_NOT_USE # define uidna_nameToUnicodeUTF8 uidna_nameToUnicodeUTF8_DRAFT_API_D O_NOT_USE
# define uidna_openUTS46 uidna_openUTS46_DRAFT_API_DO_NOT_USE # define uidna_openUTS46 uidna_openUTS46_DRAFT_API_DO_NOT_USE
# define uldn_close uldn_close_DRAFT_API_DO_NOT_USE
# define uldn_getDialectHandling uldn_getDialectHandling_DRAFT_API_D
O_NOT_USE
# define uldn_getLocale uldn_getLocale_DRAFT_API_DO_NOT_USE
# define uldn_keyDisplayName uldn_keyDisplayName_DRAFT_API_DO_NOT_US
E
# define uldn_keyValueDisplayName uldn_keyValueDisplayName_DRAFT_API
_DO_NOT_USE
# define uldn_languageDisplayName uldn_languageDisplayName_DRAFT_API
_DO_NOT_USE
# define uldn_localeDisplayName uldn_localeDisplayName_DRAFT_API_DO_
NOT_USE
# define uldn_open uldn_open_DRAFT_API_DO_NOT_USE
# define uldn_regionDisplayName uldn_regionDisplayName_DRAFT_API_DO_
NOT_USE
# define uldn_scriptCodeDisplayName uldn_scriptCodeDisplayName_DRAFT
_API_DO_NOT_USE
# define uldn_scriptDisplayName uldn_scriptDisplayName_DRAFT_API_DO_
NOT_USE
# define uldn_variantDisplayName uldn_variantDisplayName_DRAFT_API_D
O_NOT_USE
# define uloc_forLanguageTag uloc_forLanguageTag_DRAFT_API_DO_NOT_US E # define uloc_forLanguageTag uloc_forLanguageTag_DRAFT_API_DO_NOT_US E
# define uloc_toLanguageTag uloc_toLanguageTag_DRAFT_API_DO_NOT_USE # define uloc_toLanguageTag uloc_toLanguageTag_DRAFT_API_DO_NOT_USE
# define unorm2_append unorm2_append_DRAFT_API_DO_NOT_USE
# define unorm2_close unorm2_close_DRAFT_API_DO_NOT_USE
# define unorm2_getDecomposition unorm2_getDecomposition_DRAFT_API_D O_NOT_USE # define unorm2_getDecomposition unorm2_getDecomposition_DRAFT_API_D O_NOT_USE
# define unorm2_getInstance unorm2_getInstance_DRAFT_API_DO_NOT_USE # define uregex_end64 uregex_end64_DRAFT_API_DO_NOT_USE
# define unorm2_hasBoundaryAfter unorm2_hasBoundaryAfter_DRAFT_API_D # define uregex_find64 uregex_find64_DRAFT_API_DO_NOT_USE
O_NOT_USE
# define unorm2_hasBoundaryBefore unorm2_hasBoundaryBefore_DRAFT_API
_DO_NOT_USE
# define unorm2_isInert unorm2_isInert_DRAFT_API_DO_NOT_USE
# define unorm2_isNormalized unorm2_isNormalized_DRAFT_API_DO_NOT_US
E
# define unorm2_normalize unorm2_normalize_DRAFT_API_DO_NOT_USE
# define unorm2_normalizeSecondAndAppend unorm2_normalizeSecondAndAp
pend_DRAFT_API_DO_NOT_USE
# define unorm2_openFiltered unorm2_openFiltered_DRAFT_API_DO_NOT_US
E
# define unorm2_quickCheck unorm2_quickCheck_DRAFT_API_DO_NOT_USE
# define unorm2_spanQuickCheckYes unorm2_spanQuickCheckYes_DRAFT_API
_DO_NOT_USE
# define unum_formatDecimal unum_formatDecimal_DRAFT_API_DO_NOT_USE
# define unum_parseDecimal unum_parseDecimal_DRAFT_API_DO_NOT_USE
# define uregex_getFindProgressCallback uregex_getFindProgressCallba ck_DRAFT_API_DO_NOT_USE # define uregex_getFindProgressCallback uregex_getFindProgressCallba ck_DRAFT_API_DO_NOT_USE
# define uregex_lookingAt64 uregex_lookingAt64_DRAFT_API_DO_NOT_USE
# define uregex_matches64 uregex_matches64_DRAFT_API_DO_NOT_USE
# define uregex_patternUText uregex_patternUText_DRAFT_API_DO_NOT_US
E
# define uregex_regionEnd64 uregex_regionEnd64_DRAFT_API_DO_NOT_USE
# define uregex_regionStart64 uregex_regionStart64_DRAFT_API_DO_NOT_
USE
# define uregex_reset64 uregex_reset64_DRAFT_API_DO_NOT_USE
# define uregex_setFindProgressCallback uregex_setFindProgressCallba ck_DRAFT_API_DO_NOT_USE # define uregex_setFindProgressCallback uregex_setFindProgressCallba ck_DRAFT_API_DO_NOT_USE
# define uregex_setRegion64 uregex_setRegion64_DRAFT_API_DO_NOT_USE
# define uregex_setRegionAndStart uregex_setRegionAndStart_DRAFT_API
_DO_NOT_USE
# define uregex_start64 uregex_start64_DRAFT_API_DO_NOT_USE
# define uscript_getScriptExtensions uscript_getScriptExtensions_DRA
FT_API_DO_NOT_USE
# define uscript_hasScript uscript_hasScript_DRAFT_API_DO_NOT_USE
# else # else
# define bamuScriptCode_4_5 bamuScriptCode_DRAFT_API_DO_NOT_USE # define ubidi_getBaseDirection_4_6 ubidi_getBaseDirection_DRAFT_API
# define u_fadopt_4_5 u_fadopt_DRAFT_API_DO_NOT_USE _DO_NOT_USE
# define u_strFromJavaModifiedUTF8WithSub_4_5 u_strFromJavaModifiedU # define uidna_close_4_6 uidna_close_DRAFT_API_DO_NOT_USE
TF8WithSub_DRAFT_API_DO_NOT_USE # define uidna_labelToASCII_4_6 uidna_labelToASCII_DRAFT_API_DO_NOT_
# define u_strToJavaModifiedUTF8_4_5 u_strToJavaModifiedUTF8_DRAFT_A USE
PI_DO_NOT_USE # define uidna_labelToASCII_UTF8_4_6 uidna_labelToASCII_UTF8_DRAFT_A
# define ucal_getDayOfWeekType_4_5 ucal_getDayOfWeekType_DRAFT_API_D PI_DO_NOT_USE
O_NOT_USE # define uidna_labelToUnicodeUTF8_4_6 uidna_labelToUnicodeUTF8_DRAFT
# define ucal_getWeekendTransition_4_5 ucal_getWeekendTransition_DRA _API_DO_NOT_USE
FT_API_DO_NOT_USE # define uidna_labelToUnicode_4_6 uidna_labelToUnicode_DRAFT_API_DO_
# define ucal_isWeekend_4_5 ucal_isWeekend_DRAFT_API_DO_NOT_USE NOT_USE
# define udat_toCalendarDateField_4_5 udat_toCalendarDateField_DRAFT # define uidna_nameToASCII_4_6 uidna_nameToASCII_DRAFT_API_DO_NOT_US
_API_DO_NOT_USE E
# define udatpg_getBestPatternWithOptions_4_5 udatpg_getBestPatternW # define uidna_nameToASCII_UTF8_4_6 uidna_nameToASCII_UTF8_DRAFT_API
ithOptions_DRAFT_API_DO_NOT_USE _DO_NOT_USE
# define udatpg_replaceFieldTypesWithOptions_4_5 udatpg_replaceField # define uidna_nameToUnicodeUTF8_4_6 uidna_nameToUnicodeUTF8_DRAFT_A
TypesWithOptions_DRAFT_API_DO_NOT_USE PI_DO_NOT_USE
# define uidna_close_4_5 uidna_close_DRAFT_API_DO_NOT_USE # define uidna_nameToUnicode_4_6 uidna_nameToUnicode_DRAFT_API_DO_NO
# define uidna_labelToASCII_4_5 uidna_labelToASCII_DRAFT_API_DO_NOT_ T_USE
USE # define uidna_openUTS46_4_6 uidna_openUTS46_DRAFT_API_DO_NOT_USE
# define uidna_labelToASCII_UTF8_4_5 uidna_labelToASCII_UTF8_DRAFT_A # define uloc_forLanguageTag_4_6 uloc_forLanguageTag_DRAFT_API_DO_NO
PI_DO_NOT_USE T_USE
# define uidna_labelToUnicodeUTF8_4_5 uidna_labelToUnicodeUTF8_DRAFT # define uloc_toLanguageTag_4_6 uloc_toLanguageTag_DRAFT_API_DO_NOT_
_API_DO_NOT_USE USE
# define uidna_labelToUnicode_4_5 uidna_labelToUnicode_DRAFT_API_DO_ # define unorm2_getDecomposition_4_6 unorm2_getDecomposition_DRAFT_A
NOT_USE PI_DO_NOT_USE
# define uidna_nameToASCII_4_5 uidna_nameToASCII_DRAFT_API_DO_NOT_US # define uregex_end64_4_6 uregex_end64_DRAFT_API_DO_NOT_USE
E # define uregex_find64_4_6 uregex_find64_DRAFT_API_DO_NOT_USE
# define uidna_nameToASCII_UTF8_4_5 uidna_nameToASCII_UTF8_DRAFT_API # define uregex_getFindProgressCallback_4_6 uregex_getFindProgressCa
_DO_NOT_USE llback_DRAFT_API_DO_NOT_USE
# define uidna_nameToUnicodeUTF8_4_5 uidna_nameToUnicodeUTF8_DRAFT_A # define uregex_lookingAt64_4_6 uregex_lookingAt64_DRAFT_API_DO_NOT_
PI_DO_NOT_USE USE
# define uidna_nameToUnicode_4_5 uidna_nameToUnicode_DRAFT_API_DO_NO # define uregex_matches64_4_6 uregex_matches64_DRAFT_API_DO_NOT_USE
T_USE # define uregex_patternUText_4_6 uregex_patternUText_DRAFT_API_DO_NO
# define uidna_openUTS46_4_5 uidna_openUTS46_DRAFT_API_DO_NOT_USE T_USE
# define uldn_close_4_5 uldn_close_DRAFT_API_DO_NOT_USE # define uregex_regionEnd64_4_6 uregex_regionEnd64_DRAFT_API_DO_NOT_
# define uldn_getDialectHandling_4_5 uldn_getDialectHandling_DRAFT_A USE
PI_DO_NOT_USE # define uregex_regionStart64_4_6 uregex_regionStart64_DRAFT_API_DO_
# define uldn_getLocale_4_5 uldn_getLocale_DRAFT_API_DO_NOT_USE NOT_USE
# define uldn_keyDisplayName_4_5 uldn_keyDisplayName_DRAFT_API_DO_NO # define uregex_reset64_4_6 uregex_reset64_DRAFT_API_DO_NOT_USE
T_USE # define uregex_setFindProgressCallback_4_6 uregex_setFindProgressCa
# define uldn_keyValueDisplayName_4_5 uldn_keyValueDisplayName_DRAFT llback_DRAFT_API_DO_NOT_USE
_API_DO_NOT_USE # define uregex_setRegion64_4_6 uregex_setRegion64_DRAFT_API_DO_NOT_
# define uldn_languageDisplayName_4_5 uldn_languageDisplayName_DRAFT USE
_API_DO_NOT_USE # define uregex_setRegionAndStart_4_6 uregex_setRegionAndStart_DRAFT
# define uldn_localeDisplayName_4_5 uldn_localeDisplayName_DRAFT_API _API_DO_NOT_USE
_DO_NOT_USE # define uregex_start64_4_6 uregex_start64_DRAFT_API_DO_NOT_USE
# define uldn_open_4_5 uldn_open_DRAFT_API_DO_NOT_USE # define uscript_getScriptExtensions_4_6 uscript_getScriptExtensions
# define uldn_regionDisplayName_4_5 uldn_regionDisplayName_DRAFT_API _DRAFT_API_DO_NOT_USE
_DO_NOT_USE # define uscript_hasScript_4_6 uscript_hasScript_DRAFT_API_DO_NOT_US
# define uldn_scriptCodeDisplayName_4_5 uldn_scriptCodeDisplayName_D E
RAFT_API_DO_NOT_USE
# define uldn_scriptDisplayName_4_5 uldn_scriptDisplayName_DRAFT_API
_DO_NOT_USE
# define uldn_variantDisplayName_4_5 uldn_variantDisplayName_DRAFT_A
PI_DO_NOT_USE
# define uloc_forLanguageTag_4_5 uloc_forLanguageTag_DRAFT_API_DO_NO
T_USE
# define uloc_toLanguageTag_4_5 uloc_toLanguageTag_DRAFT_API_DO_NOT_
USE
# define unorm2_append_4_5 unorm2_append_DRAFT_API_DO_NOT_USE
# define unorm2_close_4_5 unorm2_close_DRAFT_API_DO_NOT_USE
# define unorm2_getDecomposition_4_5 unorm2_getDecomposition_DRAFT_A
PI_DO_NOT_USE
# define unorm2_getInstance_4_5 unorm2_getInstance_DRAFT_API_DO_NOT_
USE
# define unorm2_hasBoundaryAfter_4_5 unorm2_hasBoundaryAfter_DRAFT_A
PI_DO_NOT_USE
# define unorm2_hasBoundaryBefore_4_5 unorm2_hasBoundaryBefore_DRAFT
_API_DO_NOT_USE
# define unorm2_isInert_4_5 unorm2_isInert_DRAFT_API_DO_NOT_USE
# define unorm2_isNormalized_4_5 unorm2_isNormalized_DRAFT_API_DO_NO
T_USE
# define unorm2_normalizeSecondAndAppend_4_5 unorm2_normalizeSecondA
ndAppend_DRAFT_API_DO_NOT_USE
# define unorm2_normalize_4_5 unorm2_normalize_DRAFT_API_DO_NOT_USE
# define unorm2_openFiltered_4_5 unorm2_openFiltered_DRAFT_API_DO_NO
T_USE
# define unorm2_quickCheck_4_5 unorm2_quickCheck_DRAFT_API_DO_NOT_US
E
# define unorm2_spanQuickCheckYes_4_5 unorm2_spanQuickCheckYes_DRAFT
_API_DO_NOT_USE
# define unum_formatDecimal_4_5 unum_formatDecimal_DRAFT_API_DO_NOT_
USE
# define unum_parseDecimal_4_5 unum_parseDecimal_DRAFT_API_DO_NOT_US
E
# define uregex_getFindProgressCallback_4_5 uregex_getFindProgressCa
llback_DRAFT_API_DO_NOT_USE
# define uregex_setFindProgressCallback_4_5 uregex_setFindProgressCa
llback_DRAFT_API_DO_NOT_USE
# endif /* U_DISABLE_RENAMING */ # endif /* U_DISABLE_RENAMING */
#endif /* U_HIDE_DRAFT_API */ #endif /* U_HIDE_DRAFT_API */
#endif /* UDRAFT_H */ #endif /* UDRAFT_H */
 End of changes. 7 change blocks. 
148 lines changed or deleted 70 lines changed or added


 uenum.h   uenum.h 
/* /*
*************************************************************************** **** *************************************************************************** ****
* *
* Copyright (C) 2002-2009, International Business Machines * Copyright (C) 2002-2010, International Business Machines
* Corporation and others. All Rights Reserved. * Corporation and others. All Rights Reserved.
* *
*************************************************************************** **** *************************************************************************** ****
* file name: uenum.h * file name: uenum.h
* encoding: US-ASCII * encoding: US-ASCII
* tab size: 8 (not used) * tab size: 8 (not used)
* indentation:2 * indentation:2
* *
* created on: 2002jul08 * created on: 2002jul08
* created by: Vladimir Weinstein * created by: Vladimir Weinstein
skipping to change at line 62 skipping to change at line 62
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUEnumerationPointer * \class LocalUEnumerationPointer
* "Smart pointer" class, closes a UEnumeration via uenum_close(). * "Smart pointer" class, closes a UEnumeration via uenum_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUEnumerationPointer, UEnumeration, uenum_c lose); U_DEFINE_LOCAL_OPEN_POINTER(LocalUEnumerationPointer, UEnumeration, uenum_c lose);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Returns the number of elements that the iterator traverses. If * Returns the number of elements that the iterator traverses. If
* the iterator is out-of-sync with its service, status is set to * the iterator is out-of-sync with its service, status is set to
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 uintrnal.h   uintrnal.h 
skipping to change at line 43 skipping to change at line 43
# define bms_setTargetString bms_setTargetString_INTERNAL_API_DO_NOT _USE # define bms_setTargetString bms_setTargetString_INTERNAL_API_DO_NOT _USE
# define pl_addFontRun pl_addFontRun_INTERNAL_API_DO_NOT_USE # define pl_addFontRun pl_addFontRun_INTERNAL_API_DO_NOT_USE
# define pl_addLocaleRun pl_addLocaleRun_INTERNAL_API_DO_NOT_USE # define pl_addLocaleRun pl_addLocaleRun_INTERNAL_API_DO_NOT_USE
# define pl_addValueRun pl_addValueRun_INTERNAL_API_DO_NOT_USE # define pl_addValueRun pl_addValueRun_INTERNAL_API_DO_NOT_USE
# define pl_close pl_close_INTERNAL_API_DO_NOT_USE # define pl_close pl_close_INTERNAL_API_DO_NOT_USE
# define pl_closeFontRuns pl_closeFontRuns_INTERNAL_API_DO_NOT_USE # define pl_closeFontRuns pl_closeFontRuns_INTERNAL_API_DO_NOT_USE
# define pl_closeLine pl_closeLine_INTERNAL_API_DO_NOT_USE # define pl_closeLine pl_closeLine_INTERNAL_API_DO_NOT_USE
# define pl_closeLocaleRuns pl_closeLocaleRuns_INTERNAL_API_DO_NOT_U SE # define pl_closeLocaleRuns pl_closeLocaleRuns_INTERNAL_API_DO_NOT_U SE
# define pl_closeValueRuns pl_closeValueRuns_INTERNAL_API_DO_NOT_USE # define pl_closeValueRuns pl_closeValueRuns_INTERNAL_API_DO_NOT_USE
# define pl_countLineRuns pl_countLineRuns_INTERNAL_API_DO_NOT_USE # define pl_countLineRuns pl_countLineRuns_INTERNAL_API_DO_NOT_USE
# define pl_create pl_create_INTERNAL_API_DO_NOT_USE
# define pl_getAscent pl_getAscent_INTERNAL_API_DO_NOT_USE # define pl_getAscent pl_getAscent_INTERNAL_API_DO_NOT_USE
# define pl_getDescent pl_getDescent_INTERNAL_API_DO_NOT_USE # define pl_getDescent pl_getDescent_INTERNAL_API_DO_NOT_USE
# define pl_getFontRunCount pl_getFontRunCount_INTERNAL_API_DO_NOT_U SE # define pl_getFontRunCount pl_getFontRunCount_INTERNAL_API_DO_NOT_U SE
# define pl_getFontRunFont pl_getFontRunFont_INTERNAL_API_DO_NOT_USE # define pl_getFontRunFont pl_getFontRunFont_INTERNAL_API_DO_NOT_USE
# define pl_getFontRunLastLimit pl_getFontRunLastLimit_INTERNAL_API_ DO_NOT_USE # define pl_getFontRunLastLimit pl_getFontRunLastLimit_INTERNAL_API_ DO_NOT_USE
# define pl_getFontRunLimit pl_getFontRunLimit_INTERNAL_API_DO_NOT_U SE # define pl_getFontRunLimit pl_getFontRunLimit_INTERNAL_API_DO_NOT_U SE
# define pl_getLeading pl_getLeading_INTERNAL_API_DO_NOT_USE # define pl_getLeading pl_getLeading_INTERNAL_API_DO_NOT_USE
# define pl_getLineAscent pl_getLineAscent_INTERNAL_API_DO_NOT_USE # define pl_getLineAscent pl_getLineAscent_INTERNAL_API_DO_NOT_USE
# define pl_getLineDescent pl_getLineDescent_INTERNAL_API_DO_NOT_USE # define pl_getLineDescent pl_getLineDescent_INTERNAL_API_DO_NOT_USE
# define pl_getLineLeading pl_getLineLeading_INTERNAL_API_DO_NOT_USE # define pl_getLineLeading pl_getLineLeading_INTERNAL_API_DO_NOT_USE
skipping to change at line 75 skipping to change at line 74
# define pl_getValueRunValue pl_getValueRunValue_INTERNAL_API_DO_NOT _USE # define pl_getValueRunValue pl_getValueRunValue_INTERNAL_API_DO_NOT _USE
# define pl_getVisualRunAscent pl_getVisualRunAscent_INTERNAL_API_DO _NOT_USE # define pl_getVisualRunAscent pl_getVisualRunAscent_INTERNAL_API_DO _NOT_USE
# define pl_getVisualRunDescent pl_getVisualRunDescent_INTERNAL_API_ DO_NOT_USE # define pl_getVisualRunDescent pl_getVisualRunDescent_INTERNAL_API_ DO_NOT_USE
# define pl_getVisualRunDirection pl_getVisualRunDirection_INTERNAL_ API_DO_NOT_USE # define pl_getVisualRunDirection pl_getVisualRunDirection_INTERNAL_ API_DO_NOT_USE
# define pl_getVisualRunFont pl_getVisualRunFont_INTERNAL_API_DO_NOT _USE # define pl_getVisualRunFont pl_getVisualRunFont_INTERNAL_API_DO_NOT _USE
# define pl_getVisualRunGlyphCount pl_getVisualRunGlyphCount_INTERNA L_API_DO_NOT_USE # define pl_getVisualRunGlyphCount pl_getVisualRunGlyphCount_INTERNA L_API_DO_NOT_USE
# define pl_getVisualRunGlyphToCharMap pl_getVisualRunGlyphToCharMap _INTERNAL_API_DO_NOT_USE # define pl_getVisualRunGlyphToCharMap pl_getVisualRunGlyphToCharMap _INTERNAL_API_DO_NOT_USE
# define pl_getVisualRunGlyphs pl_getVisualRunGlyphs_INTERNAL_API_DO _NOT_USE # define pl_getVisualRunGlyphs pl_getVisualRunGlyphs_INTERNAL_API_DO _NOT_USE
# define pl_getVisualRunLeading pl_getVisualRunLeading_INTERNAL_API_ DO_NOT_USE # define pl_getVisualRunLeading pl_getVisualRunLeading_INTERNAL_API_ DO_NOT_USE
# define pl_getVisualRunPositions pl_getVisualRunPositions_INTERNAL_ API_DO_NOT_USE # define pl_getVisualRunPositions pl_getVisualRunPositions_INTERNAL_ API_DO_NOT_USE
# define pl_isComplex pl_isComplex_INTERNAL_API_DO_NOT_USE
# define pl_line pl_line_INTERNAL_API_DO_NOT_USE # define pl_line pl_line_INTERNAL_API_DO_NOT_USE
# define pl_nextLine pl_nextLine_INTERNAL_API_DO_NOT_USE # define pl_nextLine pl_nextLine_INTERNAL_API_DO_NOT_USE
# define pl_openEmptyFontRuns pl_openEmptyFontRuns_INTERNAL_API_DO_N OT_USE # define pl_openEmptyFontRuns pl_openEmptyFontRuns_INTERNAL_API_DO_N OT_USE
# define pl_openEmptyLocaleRuns pl_openEmptyLocaleRuns_INTERNAL_API_ DO_NOT_USE # define pl_openEmptyLocaleRuns pl_openEmptyLocaleRuns_INTERNAL_API_ DO_NOT_USE
# define pl_openEmptyValueRuns pl_openEmptyValueRuns_INTERNAL_API_DO _NOT_USE # define pl_openEmptyValueRuns pl_openEmptyValueRuns_INTERNAL_API_DO _NOT_USE
# define pl_openFontRuns pl_openFontRuns_INTERNAL_API_DO_NOT_USE # define pl_openFontRuns pl_openFontRuns_INTERNAL_API_DO_NOT_USE
# define pl_openLocaleRuns pl_openLocaleRuns_INTERNAL_API_DO_NOT_USE # define pl_openLocaleRuns pl_openLocaleRuns_INTERNAL_API_DO_NOT_USE
# define pl_openValueRuns pl_openValueRuns_INTERNAL_API_DO_NOT_USE # define pl_openValueRuns pl_openValueRuns_INTERNAL_API_DO_NOT_USE
# define pl_paragraph pl_paragraph_INTERNAL_API_DO_NOT_USE # define pl_paragraph pl_paragraph_INTERNAL_API_DO_NOT_USE
# define pl_reflow pl_reflow_INTERNAL_API_DO_NOT_USE # define pl_reflow pl_reflow_INTERNAL_API_DO_NOT_USE
skipping to change at line 99 skipping to change at line 97
# define pl_visualRun pl_visualRun_INTERNAL_API_DO_NOT_USE # define pl_visualRun pl_visualRun_INTERNAL_API_DO_NOT_USE
# define ucd_close ucd_close_INTERNAL_API_DO_NOT_USE # define ucd_close ucd_close_INTERNAL_API_DO_NOT_USE
# define ucd_flushCache ucd_flushCache_INTERNAL_API_DO_NOT_USE # define ucd_flushCache ucd_flushCache_INTERNAL_API_DO_NOT_USE
# define ucd_freeCache ucd_freeCache_INTERNAL_API_DO_NOT_USE # define ucd_freeCache ucd_freeCache_INTERNAL_API_DO_NOT_USE
# define ucd_getCollator ucd_getCollator_INTERNAL_API_DO_NOT_USE # define ucd_getCollator ucd_getCollator_INTERNAL_API_DO_NOT_USE
# define ucd_open ucd_open_INTERNAL_API_DO_NOT_USE # define ucd_open ucd_open_INTERNAL_API_DO_NOT_USE
# define ucol_equals ucol_equals_INTERNAL_API_DO_NOT_USE # define ucol_equals ucol_equals_INTERNAL_API_DO_NOT_USE
# define ucol_forceHanImplicit ucol_forceHanImplicit_INTERNAL_API_DO _NOT_USE # define ucol_forceHanImplicit ucol_forceHanImplicit_INTERNAL_API_DO _NOT_USE
# define ucol_forgetUCA ucol_forgetUCA_INTERNAL_API_DO_NOT_USE # define ucol_forgetUCA ucol_forgetUCA_INTERNAL_API_DO_NOT_USE
# define ucol_getAttributeOrDefault ucol_getAttributeOrDefault_INTER NAL_API_DO_NOT_USE # define ucol_getAttributeOrDefault ucol_getAttributeOrDefault_INTER NAL_API_DO_NOT_USE
# define ucol_getReorderCodes ucol_getReorderCodes_INTERNAL_API_DO_N OT_USE
# define ucol_getUnsafeSet ucol_getUnsafeSet_INTERNAL_API_DO_NOT_USE # define ucol_getUnsafeSet ucol_getUnsafeSet_INTERNAL_API_DO_NOT_USE
# define ucol_nextProcessed ucol_nextProcessed_INTERNAL_API_DO_NOT_U SE # define ucol_nextProcessed ucol_nextProcessed_INTERNAL_API_DO_NOT_U SE
# define ucol_prepareShortStringOpen ucol_prepareShortStringOpen_INT ERNAL_API_DO_NOT_USE # define ucol_prepareShortStringOpen ucol_prepareShortStringOpen_INT ERNAL_API_DO_NOT_USE
# define ucol_previousProcessed ucol_previousProcessed_INTERNAL_API_ DO_NOT_USE # define ucol_previousProcessed ucol_previousProcessed_INTERNAL_API_ DO_NOT_USE
# define ucol_setReorderCodes ucol_setReorderCodes_INTERNAL_API_DO_N OT_USE
# define udat_applyPatternRelative udat_applyPatternRelative_INTERNA L_API_DO_NOT_USE # define udat_applyPatternRelative udat_applyPatternRelative_INTERNA L_API_DO_NOT_USE
# define udat_toPatternRelativeDate udat_toPatternRelativeDate_INTER NAL_API_DO_NOT_USE # define udat_toPatternRelativeDate udat_toPatternRelativeDate_INTER NAL_API_DO_NOT_USE
# define udat_toPatternRelativeTime udat_toPatternRelativeTime_INTER NAL_API_DO_NOT_USE # define udat_toPatternRelativeTime udat_toPatternRelativeTime_INTER NAL_API_DO_NOT_USE
# define uplug_getConfiguration uplug_getConfiguration_INTERNAL_API_ DO_NOT_USE # define uplug_getConfiguration uplug_getConfiguration_INTERNAL_API_ DO_NOT_USE
# define uplug_getContext uplug_getContext_INTERNAL_API_DO_NOT_USE # define uplug_getContext uplug_getContext_INTERNAL_API_DO_NOT_USE
# define uplug_getCurrentLevel uplug_getCurrentLevel_INTERNAL_API_DO _NOT_USE # define uplug_getCurrentLevel uplug_getCurrentLevel_INTERNAL_API_DO _NOT_USE
# define uplug_getLibrary uplug_getLibrary_INTERNAL_API_DO_NOT_USE # define uplug_getLibrary uplug_getLibrary_INTERNAL_API_DO_NOT_USE
# define uplug_getLibraryName uplug_getLibraryName_INTERNAL_API_DO_N OT_USE # define uplug_getLibraryName uplug_getLibraryName_INTERNAL_API_DO_N OT_USE
# define uplug_getPlugLevel uplug_getPlugLevel_INTERNAL_API_DO_NOT_U SE # define uplug_getPlugLevel uplug_getPlugLevel_INTERNAL_API_DO_NOT_U SE
# define uplug_getPlugLoadStatus uplug_getPlugLoadStatus_INTERNAL_AP I_DO_NOT_USE # define uplug_getPlugLoadStatus uplug_getPlugLoadStatus_INTERNAL_AP I_DO_NOT_USE
skipping to change at line 125 skipping to change at line 125
# define uplug_loadPlugFromEntrypoint uplug_loadPlugFromEntrypoint_I NTERNAL_API_DO_NOT_USE # define uplug_loadPlugFromEntrypoint uplug_loadPlugFromEntrypoint_I NTERNAL_API_DO_NOT_USE
# define uplug_loadPlugFromLibrary uplug_loadPlugFromLibrary_INTERNA L_API_DO_NOT_USE # define uplug_loadPlugFromLibrary uplug_loadPlugFromLibrary_INTERNA L_API_DO_NOT_USE
# define uplug_nextPlug uplug_nextPlug_INTERNAL_API_DO_NOT_USE # define uplug_nextPlug uplug_nextPlug_INTERNAL_API_DO_NOT_USE
# define uplug_removePlug uplug_removePlug_INTERNAL_API_DO_NOT_USE # define uplug_removePlug uplug_removePlug_INTERNAL_API_DO_NOT_USE
# define uplug_setContext uplug_setContext_INTERNAL_API_DO_NOT_USE # define uplug_setContext uplug_setContext_INTERNAL_API_DO_NOT_USE
# define uplug_setPlugLevel uplug_setPlugLevel_INTERNAL_API_DO_NOT_U SE # define uplug_setPlugLevel uplug_setPlugLevel_INTERNAL_API_DO_NOT_U SE
# define uplug_setPlugName uplug_setPlugName_INTERNAL_API_DO_NOT_USE # define uplug_setPlugName uplug_setPlugName_INTERNAL_API_DO_NOT_USE
# define uplug_setPlugNoUnload uplug_setPlugNoUnload_INTERNAL_API_DO _NOT_USE # define uplug_setPlugNoUnload uplug_setPlugNoUnload_INTERNAL_API_DO _NOT_USE
# define uprv_getDefaultCodepage uprv_getDefaultCodepage_INTERNAL_AP I_DO_NOT_USE # define uprv_getDefaultCodepage uprv_getDefaultCodepage_INTERNAL_AP I_DO_NOT_USE
# define uprv_getDefaultLocaleID uprv_getDefaultLocaleID_INTERNAL_AP I_DO_NOT_USE # define uprv_getDefaultLocaleID uprv_getDefaultLocaleID_INTERNAL_AP I_DO_NOT_USE
# define uregex_appendReplacementUText uregex_appendReplacementUText
_INTERNAL_API_DO_NOT_USE
# define uregex_appendTailUText uregex_appendTailUText_INTERNAL_API_
DO_NOT_USE
# define uregex_getUText uregex_getUText_INTERNAL_API_DO_NOT_USE
# define uregex_groupUText uregex_groupUText_INTERNAL_API_DO_NOT_USE
# define uregex_openUText uregex_openUText_INTERNAL_API_DO_NOT_USE
# define uregex_patternUText uregex_patternUText_INTERNAL_API_DO_NOT
_USE
# define uregex_replaceAllUText uregex_replaceAllUText_INTERNAL_API_
DO_NOT_USE
# define uregex_replaceFirstUText uregex_replaceFirstUText_INTERNAL_
API_DO_NOT_USE
# define uregex_setUText uregex_setUText_INTERNAL_API_DO_NOT_USE
# define uregex_splitUText uregex_splitUText_INTERNAL_API_DO_NOT_USE
# define ures_openFillIn ures_openFillIn_INTERNAL_API_DO_NOT_USE # define ures_openFillIn ures_openFillIn_INTERNAL_API_DO_NOT_USE
# define usearch_search usearch_search_INTERNAL_API_DO_NOT_USE # define usearch_search usearch_search_INTERNAL_API_DO_NOT_USE
# define usearch_searchBackwards usearch_searchBackwards_INTERNAL_AP I_DO_NOT_USE # define usearch_searchBackwards usearch_searchBackwards_INTERNAL_AP I_DO_NOT_USE
# define utext_caseCompare utext_caseCompare_INTERNAL_API_DO_NOT_USE # define utext_caseCompare utext_caseCompare_INTERNAL_API_DO_NOT_USE
# define utext_caseCompareNativeLimit utext_caseCompareNativeLimit_I NTERNAL_API_DO_NOT_USE # define utext_caseCompareNativeLimit utext_caseCompareNativeLimit_I NTERNAL_API_DO_NOT_USE
# define utext_compare utext_compare_INTERNAL_API_DO_NOT_USE # define utext_compare utext_compare_INTERNAL_API_DO_NOT_USE
# define utext_compareNativeLimit utext_compareNativeLimit_INTERNAL_ API_DO_NOT_USE # define utext_compareNativeLimit utext_compareNativeLimit_INTERNAL_ API_DO_NOT_USE
# define utf8_appendCharSafeBody utf8_appendCharSafeBody_INTERNAL_AP I_DO_NOT_USE # define utf8_appendCharSafeBody utf8_appendCharSafeBody_INTERNAL_AP I_DO_NOT_USE
# define utf8_back1SafeBody utf8_back1SafeBody_INTERNAL_API_DO_NOT_U SE # define utf8_back1SafeBody utf8_back1SafeBody_INTERNAL_API_DO_NOT_U SE
# define utf8_countTrailBytes utf8_countTrailBytes_INTERNAL_API_DO_N OT_USE # define utf8_countTrailBytes utf8_countTrailBytes_INTERNAL_API_DO_N OT_USE
# define utf8_nextCharSafeBody utf8_nextCharSafeBody_INTERNAL_API_DO _NOT_USE # define utf8_nextCharSafeBody utf8_nextCharSafeBody_INTERNAL_API_DO _NOT_USE
# define utf8_prevCharSafeBody utf8_prevCharSafeBody_INTERNAL_API_DO _NOT_USE # define utf8_prevCharSafeBody utf8_prevCharSafeBody_INTERNAL_API_DO _NOT_USE
# else # else
# define RegexPatternDump_4_5 RegexPatternDump_INTERNAL_API_DO_NOT_U # define RegexPatternDump_4_6 RegexPatternDump_INTERNAL_API_DO_NOT_U
SE SE
# define bms_close_4_5 bms_close_INTERNAL_API_DO_NOT_USE # define bms_close_4_6 bms_close_INTERNAL_API_DO_NOT_USE
# define bms_empty_4_5 bms_empty_INTERNAL_API_DO_NOT_USE # define bms_empty_4_6 bms_empty_INTERNAL_API_DO_NOT_USE
# define bms_getData_4_5 bms_getData_INTERNAL_API_DO_NOT_USE # define bms_getData_4_6 bms_getData_INTERNAL_API_DO_NOT_USE
# define bms_open_4_5 bms_open_INTERNAL_API_DO_NOT_USE # define bms_open_4_6 bms_open_INTERNAL_API_DO_NOT_USE
# define bms_search_4_5 bms_search_INTERNAL_API_DO_NOT_USE # define bms_search_4_6 bms_search_INTERNAL_API_DO_NOT_USE
# define bms_setTargetString_4_5 bms_setTargetString_INTERNAL_API_DO # define bms_setTargetString_4_6 bms_setTargetString_INTERNAL_API_DO
_NOT_USE _NOT_USE
# define pl_addFontRun_4_5 pl_addFontRun_INTERNAL_API_DO_NOT_USE # define pl_addFontRun_4_6 pl_addFontRun_INTERNAL_API_DO_NOT_USE
# define pl_addLocaleRun_4_5 pl_addLocaleRun_INTERNAL_API_DO_NOT_USE # define pl_addLocaleRun_4_6 pl_addLocaleRun_INTERNAL_API_DO_NOT_USE
# define pl_addValueRun_4_5 pl_addValueRun_INTERNAL_API_DO_NOT_USE # define pl_addValueRun_4_6 pl_addValueRun_INTERNAL_API_DO_NOT_USE
# define pl_closeFontRuns_4_5 pl_closeFontRuns_INTERNAL_API_DO_NOT_U # define pl_close_4_6 pl_close_INTERNAL_API_DO_NOT_USE
SE # define pl_closeFontRuns_4_6 pl_closeFontRuns_INTERNAL_API_DO_NOT_U
# define pl_closeLine_4_5 pl_closeLine_INTERNAL_API_DO_NOT_USE SE
# define pl_closeLocaleRuns_4_5 pl_closeLocaleRuns_INTERNAL_API_DO_N # define pl_closeLine_4_6 pl_closeLine_INTERNAL_API_DO_NOT_USE
OT_USE # define pl_closeLocaleRuns_4_6 pl_closeLocaleRuns_INTERNAL_API_DO_N
# define pl_closeValueRuns_4_5 pl_closeValueRuns_INTERNAL_API_DO_NOT OT_USE
_USE # define pl_closeValueRuns_4_6 pl_closeValueRuns_INTERNAL_API_DO_NOT
# define pl_close_4_5 pl_close_INTERNAL_API_DO_NOT_USE _USE
# define pl_countLineRuns_4_5 pl_countLineRuns_INTERNAL_API_DO_NOT_U # define pl_countLineRuns_4_6 pl_countLineRuns_INTERNAL_API_DO_NOT_U
SE SE
# define pl_create_4_5 pl_create_INTERNAL_API_DO_NOT_USE # define pl_getAscent_4_6 pl_getAscent_INTERNAL_API_DO_NOT_USE
# define pl_getAscent_4_5 pl_getAscent_INTERNAL_API_DO_NOT_USE # define pl_getDescent_4_6 pl_getDescent_INTERNAL_API_DO_NOT_USE
# define pl_getDescent_4_5 pl_getDescent_INTERNAL_API_DO_NOT_USE # define pl_getFontRunCount_4_6 pl_getFontRunCount_INTERNAL_API_DO_N
# define pl_getFontRunCount_4_5 pl_getFontRunCount_INTERNAL_API_DO_N OT_USE
OT_USE # define pl_getFontRunFont_4_6 pl_getFontRunFont_INTERNAL_API_DO_NOT
# define pl_getFontRunFont_4_5 pl_getFontRunFont_INTERNAL_API_DO_NOT _USE
_USE # define pl_getFontRunLastLimit_4_6 pl_getFontRunLastLimit_INTERNAL_
# define pl_getFontRunLastLimit_4_5 pl_getFontRunLastLimit_INTERNAL_ API_DO_NOT_USE
API_DO_NOT_USE # define pl_getFontRunLimit_4_6 pl_getFontRunLimit_INTERNAL_API_DO_N
# define pl_getFontRunLimit_4_5 pl_getFontRunLimit_INTERNAL_API_DO_N OT_USE
OT_USE # define pl_getLeading_4_6 pl_getLeading_INTERNAL_API_DO_NOT_USE
# define pl_getLeading_4_5 pl_getLeading_INTERNAL_API_DO_NOT_USE # define pl_getLineAscent_4_6 pl_getLineAscent_INTERNAL_API_DO_NOT_U
# define pl_getLineAscent_4_5 pl_getLineAscent_INTERNAL_API_DO_NOT_U SE
SE # define pl_getLineDescent_4_6 pl_getLineDescent_INTERNAL_API_DO_NOT
# define pl_getLineDescent_4_5 pl_getLineDescent_INTERNAL_API_DO_NOT _USE
_USE # define pl_getLineLeading_4_6 pl_getLineLeading_INTERNAL_API_DO_NOT
# define pl_getLineLeading_4_5 pl_getLineLeading_INTERNAL_API_DO_NOT _USE
_USE # define pl_getLineVisualRun_4_6 pl_getLineVisualRun_INTERNAL_API_DO
# define pl_getLineVisualRun_4_5 pl_getLineVisualRun_INTERNAL_API_DO _NOT_USE
_NOT_USE # define pl_getLineWidth_4_6 pl_getLineWidth_INTERNAL_API_DO_NOT_USE
# define pl_getLineWidth_4_5 pl_getLineWidth_INTERNAL_API_DO_NOT_USE # define pl_getLocaleRunCount_4_6 pl_getLocaleRunCount_INTERNAL_API_
# define pl_getLocaleRunCount_4_5 pl_getLocaleRunCount_INTERNAL_API_ DO_NOT_USE
DO_NOT_USE # define pl_getLocaleRunLastLimit_4_6 pl_getLocaleRunLastLimit_INTER
# define pl_getLocaleRunLastLimit_4_5 pl_getLocaleRunLastLimit_INTER NAL_API_DO_NOT_USE
NAL_API_DO_NOT_USE # define pl_getLocaleRunLimit_4_6 pl_getLocaleRunLimit_INTERNAL_API_
# define pl_getLocaleRunLimit_4_5 pl_getLocaleRunLimit_INTERNAL_API_ DO_NOT_USE
DO_NOT_USE # define pl_getLocaleRunLocale_4_6 pl_getLocaleRunLocale_INTERNAL_AP
# define pl_getLocaleRunLocale_4_5 pl_getLocaleRunLocale_INTERNAL_AP I_DO_NOT_USE
I_DO_NOT_USE # define pl_getParagraphLevel_4_6 pl_getParagraphLevel_INTERNAL_API_
# define pl_getParagraphLevel_4_5 pl_getParagraphLevel_INTERNAL_API_ DO_NOT_USE
DO_NOT_USE # define pl_getTextDirection_4_6 pl_getTextDirection_INTERNAL_API_DO
# define pl_getTextDirection_4_5 pl_getTextDirection_INTERNAL_API_DO _NOT_USE
_NOT_USE # define pl_getValueRunCount_4_6 pl_getValueRunCount_INTERNAL_API_DO
# define pl_getValueRunCount_4_5 pl_getValueRunCount_INTERNAL_API_DO _NOT_USE
_NOT_USE # define pl_getValueRunLastLimit_4_6 pl_getValueRunLastLimit_INTERNA
# define pl_getValueRunLastLimit_4_5 pl_getValueRunLastLimit_INTERNA L_API_DO_NOT_USE
L_API_DO_NOT_USE # define pl_getValueRunLimit_4_6 pl_getValueRunLimit_INTERNAL_API_DO
# define pl_getValueRunLimit_4_5 pl_getValueRunLimit_INTERNAL_API_DO _NOT_USE
_NOT_USE # define pl_getValueRunValue_4_6 pl_getValueRunValue_INTERNAL_API_DO
# define pl_getValueRunValue_4_5 pl_getValueRunValue_INTERNAL_API_DO _NOT_USE
_NOT_USE # define pl_getVisualRunAscent_4_6 pl_getVisualRunAscent_INTERNAL_AP
# define pl_getVisualRunAscent_4_5 pl_getVisualRunAscent_INTERNAL_AP I_DO_NOT_USE
I_DO_NOT_USE # define pl_getVisualRunDescent_4_6 pl_getVisualRunDescent_INTERNAL_
# define pl_getVisualRunDescent_4_5 pl_getVisualRunDescent_INTERNAL_ API_DO_NOT_USE
API_DO_NOT_USE # define pl_getVisualRunDirection_4_6 pl_getVisualRunDirection_INTER
# define pl_getVisualRunDirection_4_5 pl_getVisualRunDirection_INTER NAL_API_DO_NOT_USE
NAL_API_DO_NOT_USE # define pl_getVisualRunFont_4_6 pl_getVisualRunFont_INTERNAL_API_DO
# define pl_getVisualRunFont_4_5 pl_getVisualRunFont_INTERNAL_API_DO _NOT_USE
_NOT_USE # define pl_getVisualRunGlyphCount_4_6 pl_getVisualRunGlyphCount_INT
# define pl_getVisualRunGlyphCount_4_5 pl_getVisualRunGlyphCount_INT ERNAL_API_DO_NOT_USE
ERNAL_API_DO_NOT_USE # define pl_getVisualRunGlyphToCharMap_4_6 pl_getVisualRunGlyphToCha
# define pl_getVisualRunGlyphToCharMap_4_5 pl_getVisualRunGlyphToCha rMap_INTERNAL_API_DO_NOT_USE
rMap_INTERNAL_API_DO_NOT_USE # define pl_getVisualRunGlyphs_4_6 pl_getVisualRunGlyphs_INTERNAL_AP
# define pl_getVisualRunGlyphs_4_5 pl_getVisualRunGlyphs_INTERNAL_AP I_DO_NOT_USE
I_DO_NOT_USE # define pl_getVisualRunLeading_4_6 pl_getVisualRunLeading_INTERNAL_
# define pl_getVisualRunLeading_4_5 pl_getVisualRunLeading_INTERNAL_ API_DO_NOT_USE
API_DO_NOT_USE # define pl_getVisualRunPositions_4_6 pl_getVisualRunPositions_INTER
# define pl_getVisualRunPositions_4_5 pl_getVisualRunPositions_INTER NAL_API_DO_NOT_USE
NAL_API_DO_NOT_USE # define pl_line_4_6 pl_line_INTERNAL_API_DO_NOT_USE
# define pl_isComplex_4_5 pl_isComplex_INTERNAL_API_DO_NOT_USE # define pl_nextLine_4_6 pl_nextLine_INTERNAL_API_DO_NOT_USE
# define pl_line_4_5 pl_line_INTERNAL_API_DO_NOT_USE # define pl_openEmptyFontRuns_4_6 pl_openEmptyFontRuns_INTERNAL_API_
# define pl_nextLine_4_5 pl_nextLine_INTERNAL_API_DO_NOT_USE DO_NOT_USE
# define pl_openEmptyFontRuns_4_5 pl_openEmptyFontRuns_INTERNAL_API_ # define pl_openEmptyLocaleRuns_4_6 pl_openEmptyLocaleRuns_INTERNAL_
DO_NOT_USE API_DO_NOT_USE
# define pl_openEmptyLocaleRuns_4_5 pl_openEmptyLocaleRuns_INTERNAL_ # define pl_openEmptyValueRuns_4_6 pl_openEmptyValueRuns_INTERNAL_AP
API_DO_NOT_USE I_DO_NOT_USE
# define pl_openEmptyValueRuns_4_5 pl_openEmptyValueRuns_INTERNAL_AP # define pl_openFontRuns_4_6 pl_openFontRuns_INTERNAL_API_DO_NOT_USE
I_DO_NOT_USE # define pl_openLocaleRuns_4_6 pl_openLocaleRuns_INTERNAL_API_DO_NOT
# define pl_openFontRuns_4_5 pl_openFontRuns_INTERNAL_API_DO_NOT_USE _USE
# define pl_openLocaleRuns_4_5 pl_openLocaleRuns_INTERNAL_API_DO_NOT # define pl_openValueRuns_4_6 pl_openValueRuns_INTERNAL_API_DO_NOT_U
_USE SE
# define pl_openValueRuns_4_5 pl_openValueRuns_INTERNAL_API_DO_NOT_U # define pl_paragraph_4_6 pl_paragraph_INTERNAL_API_DO_NOT_USE
SE # define pl_reflow_4_6 pl_reflow_INTERNAL_API_DO_NOT_USE
# define pl_paragraph_4_5 pl_paragraph_INTERNAL_API_DO_NOT_USE # define pl_resetFontRuns_4_6 pl_resetFontRuns_INTERNAL_API_DO_NOT_U
# define pl_reflow_4_5 pl_reflow_INTERNAL_API_DO_NOT_USE SE
# define pl_resetFontRuns_4_5 pl_resetFontRuns_INTERNAL_API_DO_NOT_U # define pl_resetLocaleRuns_4_6 pl_resetLocaleRuns_INTERNAL_API_DO_N
SE OT_USE
# define pl_resetLocaleRuns_4_5 pl_resetLocaleRuns_INTERNAL_API_DO_N # define pl_resetValueRuns_4_6 pl_resetValueRuns_INTERNAL_API_DO_NOT
OT_USE _USE
# define pl_resetValueRuns_4_5 pl_resetValueRuns_INTERNAL_API_DO_NOT # define pl_visualRun_4_6 pl_visualRun_INTERNAL_API_DO_NOT_USE
_USE # define ucd_close_4_6 ucd_close_INTERNAL_API_DO_NOT_USE
# define pl_visualRun_4_5 pl_visualRun_INTERNAL_API_DO_NOT_USE # define ucd_flushCache_4_6 ucd_flushCache_INTERNAL_API_DO_NOT_USE
# define ucd_close_4_5 ucd_close_INTERNAL_API_DO_NOT_USE # define ucd_freeCache_4_6 ucd_freeCache_INTERNAL_API_DO_NOT_USE
# define ucd_flushCache_4_5 ucd_flushCache_INTERNAL_API_DO_NOT_USE # define ucd_getCollator_4_6 ucd_getCollator_INTERNAL_API_DO_NOT_USE
# define ucd_freeCache_4_5 ucd_freeCache_INTERNAL_API_DO_NOT_USE # define ucd_open_4_6 ucd_open_INTERNAL_API_DO_NOT_USE
# define ucd_getCollator_4_5 ucd_getCollator_INTERNAL_API_DO_NOT_USE # define ucol_equals_4_6 ucol_equals_INTERNAL_API_DO_NOT_USE
# define ucd_open_4_5 ucd_open_INTERNAL_API_DO_NOT_USE # define ucol_forceHanImplicit_4_6 ucol_forceHanImplicit_INTERNAL_AP
# define ucol_equals_4_5 ucol_equals_INTERNAL_API_DO_NOT_USE I_DO_NOT_USE
# define ucol_forceHanImplicit_4_5 ucol_forceHanImplicit_INTERNAL_AP # define ucol_forgetUCA_4_6 ucol_forgetUCA_INTERNAL_API_DO_NOT_USE
I_DO_NOT_USE # define ucol_getAttributeOrDefault_4_6 ucol_getAttributeOrDefault_I
# define ucol_forgetUCA_4_5 ucol_forgetUCA_INTERNAL_API_DO_NOT_USE NTERNAL_API_DO_NOT_USE
# define ucol_getAttributeOrDefault_4_5 ucol_getAttributeOrDefault_I # define ucol_getReorderCodes_4_6 ucol_getReorderCodes_INTERNAL_API_
NTERNAL_API_DO_NOT_USE DO_NOT_USE
# define ucol_getUnsafeSet_4_5 ucol_getUnsafeSet_INTERNAL_API_DO_NOT # define ucol_getUnsafeSet_4_6 ucol_getUnsafeSet_INTERNAL_API_DO_NOT
_USE _USE
# define ucol_nextProcessed_4_5 ucol_nextProcessed_INTERNAL_API_DO_N # define ucol_nextProcessed_4_6 ucol_nextProcessed_INTERNAL_API_DO_N
OT_USE OT_USE
# define ucol_prepareShortStringOpen_4_5 ucol_prepareShortStringOpen # define ucol_prepareShortStringOpen_4_6 ucol_prepareShortStringOpen
_INTERNAL_API_DO_NOT_USE _INTERNAL_API_DO_NOT_USE
# define ucol_previousProcessed_4_5 ucol_previousProcessed_INTERNAL_ # define ucol_previousProcessed_4_6 ucol_previousProcessed_INTERNAL_
API_DO_NOT_USE API_DO_NOT_USE
# define udat_applyPatternRelative_4_5 udat_applyPatternRelative_INT # define ucol_setReorderCodes_4_6 ucol_setReorderCodes_INTERNAL_API_
ERNAL_API_DO_NOT_USE DO_NOT_USE
# define udat_toPatternRelativeDate_4_5 udat_toPatternRelativeDate_I # define udat_applyPatternRelative_4_6 udat_applyPatternRelative_INT
NTERNAL_API_DO_NOT_USE ERNAL_API_DO_NOT_USE
# define udat_toPatternRelativeTime_4_5 udat_toPatternRelativeTime_I # define udat_toPatternRelativeDate_4_6 udat_toPatternRelativeDate_I
NTERNAL_API_DO_NOT_USE NTERNAL_API_DO_NOT_USE
# define uplug_getConfiguration_4_5 uplug_getConfiguration_INTERNAL_ # define udat_toPatternRelativeTime_4_6 udat_toPatternRelativeTime_I
API_DO_NOT_USE NTERNAL_API_DO_NOT_USE
# define uplug_getContext_4_5 uplug_getContext_INTERNAL_API_DO_NOT_U # define uplug_getConfiguration_4_6 uplug_getConfiguration_INTERNAL_
SE API_DO_NOT_USE
# define uplug_getCurrentLevel_4_5 uplug_getCurrentLevel_INTERNAL_AP # define uplug_getContext_4_6 uplug_getContext_INTERNAL_API_DO_NOT_U
I_DO_NOT_USE SE
# define uplug_getLibraryName_4_5 uplug_getLibraryName_INTERNAL_API_ # define uplug_getCurrentLevel_4_6 uplug_getCurrentLevel_INTERNAL_AP
DO_NOT_USE I_DO_NOT_USE
# define uplug_getLibrary_4_5 uplug_getLibrary_INTERNAL_API_DO_NOT_U # define uplug_getLibrary_4_6 uplug_getLibrary_INTERNAL_API_DO_NOT_U
SE SE
# define uplug_getPlugLevel_4_5 uplug_getPlugLevel_INTERNAL_API_DO_N # define uplug_getLibraryName_4_6 uplug_getLibraryName_INTERNAL_API_
OT_USE DO_NOT_USE
# define uplug_getPlugLoadStatus_4_5 uplug_getPlugLoadStatus_INTERNA # define uplug_getPlugLevel_4_6 uplug_getPlugLevel_INTERNAL_API_DO_N
L_API_DO_NOT_USE OT_USE
# define uplug_getPlugName_4_5 uplug_getPlugName_INTERNAL_API_DO_NOT # define uplug_getPlugLoadStatus_4_6 uplug_getPlugLoadStatus_INTERNA
_USE L_API_DO_NOT_USE
# define uplug_getSymbolName_4_5 uplug_getSymbolName_INTERNAL_API_DO # define uplug_getPlugName_4_6 uplug_getPlugName_INTERNAL_API_DO_NOT
_NOT_USE _USE
# define uplug_loadPlugFromEntrypoint_4_5 uplug_loadPlugFromEntrypoi # define uplug_getSymbolName_4_6 uplug_getSymbolName_INTERNAL_API_DO
nt_INTERNAL_API_DO_NOT_USE _NOT_USE
# define uplug_loadPlugFromLibrary_4_5 uplug_loadPlugFromLibrary_INT # define uplug_loadPlugFromEntrypoint_4_6 uplug_loadPlugFromEntrypoi
ERNAL_API_DO_NOT_USE nt_INTERNAL_API_DO_NOT_USE
# define uplug_nextPlug_4_5 uplug_nextPlug_INTERNAL_API_DO_NOT_USE # define uplug_loadPlugFromLibrary_4_6 uplug_loadPlugFromLibrary_INT
# define uplug_removePlug_4_5 uplug_removePlug_INTERNAL_API_DO_NOT_U ERNAL_API_DO_NOT_USE
SE # define uplug_nextPlug_4_6 uplug_nextPlug_INTERNAL_API_DO_NOT_USE
# define uplug_setContext_4_5 uplug_setContext_INTERNAL_API_DO_NOT_U # define uplug_removePlug_4_6 uplug_removePlug_INTERNAL_API_DO_NOT_U
SE SE
# define uplug_setPlugLevel_4_5 uplug_setPlugLevel_INTERNAL_API_DO_N # define uplug_setContext_4_6 uplug_setContext_INTERNAL_API_DO_NOT_U
OT_USE SE
# define uplug_setPlugName_4_5 uplug_setPlugName_INTERNAL_API_DO_NOT # define uplug_setPlugLevel_4_6 uplug_setPlugLevel_INTERNAL_API_DO_N
_USE OT_USE
# define uplug_setPlugNoUnload_4_5 uplug_setPlugNoUnload_INTERNAL_AP # define uplug_setPlugName_4_6 uplug_setPlugName_INTERNAL_API_DO_NOT
I_DO_NOT_USE _USE
# define uprv_getDefaultCodepage_4_5 uprv_getDefaultCodepage_INTERNA # define uplug_setPlugNoUnload_4_6 uplug_setPlugNoUnload_INTERNAL_AP
L_API_DO_NOT_USE I_DO_NOT_USE
# define uprv_getDefaultLocaleID_4_5 uprv_getDefaultLocaleID_INTERNA # define uprv_getDefaultCodepage_4_6 uprv_getDefaultCodepage_INTERNA
L_API_DO_NOT_USE L_API_DO_NOT_USE
# define uregex_appendReplacementUText_4_5 uregex_appendReplacementU # define uprv_getDefaultLocaleID_4_6 uprv_getDefaultLocaleID_INTERNA
Text_INTERNAL_API_DO_NOT_USE L_API_DO_NOT_USE
# define uregex_appendTailUText_4_5 uregex_appendTailUText_INTERNAL_ # define ures_openFillIn_4_6 ures_openFillIn_INTERNAL_API_DO_NOT_USE
API_DO_NOT_USE # define usearch_search_4_6 usearch_search_INTERNAL_API_DO_NOT_USE
# define uregex_getUText_4_5 uregex_getUText_INTERNAL_API_DO_NOT_USE # define usearch_searchBackwards_4_6 usearch_searchBackwards_INTERNA
# define uregex_groupUText_4_5 uregex_groupUText_INTERNAL_API_DO_NOT L_API_DO_NOT_USE
_USE # define utext_caseCompareNativeLimit_4_6 utext_caseCompareNativeLim
# define uregex_openUText_4_5 uregex_openUText_INTERNAL_API_DO_NOT_U it_INTERNAL_API_DO_NOT_USE
SE # define utext_caseCompare_4_6 utext_caseCompare_INTERNAL_API_DO_NOT
# define uregex_patternUText_4_5 uregex_patternUText_INTERNAL_API_DO _USE
_NOT_USE # define utext_compareNativeLimit_4_6 utext_compareNativeLimit_INTER
# define uregex_replaceAllUText_4_5 uregex_replaceAllUText_INTERNAL_ NAL_API_DO_NOT_USE
API_DO_NOT_USE # define utext_compare_4_6 utext_compare_INTERNAL_API_DO_NOT_USE
# define uregex_replaceFirstUText_4_5 uregex_replaceFirstUText_INTER # define utf8_appendCharSafeBody_4_6 utf8_appendCharSafeBody_INTERNA
NAL_API_DO_NOT_USE L_API_DO_NOT_USE
# define uregex_setUText_4_5 uregex_setUText_INTERNAL_API_DO_NOT_USE # define utf8_back1SafeBody_4_6 utf8_back1SafeBody_INTERNAL_API_DO_N
# define uregex_splitUText_4_5 uregex_splitUText_INTERNAL_API_DO_NOT OT_USE
_USE # define utf8_countTrailBytes_4_6 utf8_countTrailBytes_INTERNAL_API_
# define ures_openFillIn_4_5 ures_openFillIn_INTERNAL_API_DO_NOT_USE DO_NOT_USE
# define usearch_searchBackwards_4_5 usearch_searchBackwards_INTERNA # define utf8_nextCharSafeBody_4_6 utf8_nextCharSafeBody_INTERNAL_AP
L_API_DO_NOT_USE I_DO_NOT_USE
# define usearch_search_4_5 usearch_search_INTERNAL_API_DO_NOT_USE # define utf8_prevCharSafeBody_4_6 utf8_prevCharSafeBody_INTERNAL_AP
# define utext_caseCompareNativeLimit_4_5 utext_caseCompareNativeLim I_DO_NOT_USE
it_INTERNAL_API_DO_NOT_USE
# define utext_caseCompare_4_5 utext_caseCompare_INTERNAL_API_DO_NOT
_USE
# define utext_compareNativeLimit_4_5 utext_compareNativeLimit_INTER
NAL_API_DO_NOT_USE
# define utext_compare_4_5 utext_compare_INTERNAL_API_DO_NOT_USE
# define utf8_appendCharSafeBody_4_5 utf8_appendCharSafeBody_INTERNA
L_API_DO_NOT_USE
# define utf8_back1SafeBody_4_5 utf8_back1SafeBody_INTERNAL_API_DO_N
OT_USE
# define utf8_countTrailBytes_4_5 utf8_countTrailBytes_INTERNAL_API_
DO_NOT_USE
# define utf8_nextCharSafeBody_4_5 utf8_nextCharSafeBody_INTERNAL_AP
I_DO_NOT_USE
# define utf8_prevCharSafeBody_4_5 utf8_prevCharSafeBody_INTERNAL_AP
I_DO_NOT_USE
# endif /* U_DISABLE_RENAMING */ # endif /* U_DISABLE_RENAMING */
#endif /* U_HIDE_INTERNAL_API */ #endif /* U_HIDE_INTERNAL_API */
#endif /* UINTRNAL_H */ #endif /* UINTRNAL_H */
 End of changes. 6 change blocks. 
222 lines changed or deleted 191 lines changed or added


 uldnames.h   uldnames.h 
skipping to change at line 22 skipping to change at line 22
* \file * \file
* \brief C++ API: Provides display names of Locale ids and their component s. * \brief C++ API: Provides display names of Locale ids and their component s.
*/ */
#include "unicode/utypes.h" #include "unicode/utypes.h"
#include "unicode/localpointer.h" #include "unicode/localpointer.h"
#include "unicode/uscript.h" #include "unicode/uscript.h"
/** /**
* Enum used in LocaleDisplayNames::createInstance. * Enum used in LocaleDisplayNames::createInstance.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
typedef enum { typedef enum {
/** /**
* Use standard names when generating a locale name, * Use standard names when generating a locale name,
* e.g. en_GB displays as 'English (United Kingdom)'. * e.g. en_GB displays as 'English (United Kingdom)'.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
ULDN_STANDARD_NAMES = 0, ULDN_STANDARD_NAMES = 0,
/** /**
* Use dialect names, when generating a locale name, * Use dialect names, when generating a locale name,
* e.g. en_GB displays as 'British English'. * e.g. en_GB displays as 'British English'.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
ULDN_DIALECT_NAMES ULDN_DIALECT_NAMES
} UDialectHandling; } UDialectHandling;
/** /**
* Opaque C service object type for the locale display names API * Opaque C service object type for the locale display names API
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
struct ULocaleDisplayNames; struct ULocaleDisplayNames;
/** /**
* C typedef for struct ULocaleDisplayNames. * C typedef for struct ULocaleDisplayNames.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
typedef struct ULocaleDisplayNames ULocaleDisplayNames; typedef struct ULocaleDisplayNames ULocaleDisplayNames;
#if !UCONFIG_NO_FORMATTING #if !UCONFIG_NO_FORMATTING
/** /**
* Returns an instance of LocaleDisplayNames that returns names * Returns an instance of LocaleDisplayNames that returns names
* formatted for the provided locale, using the provided * formatted for the provided locale, using the provided
* dialectHandling. The usual value for dialectHandling is * dialectHandling. The usual value for dialectHandling is
* ULOC_STANDARD_NAMES. * ULOC_STANDARD_NAMES.
* *
* @param locale the display locale * @param locale the display locale
* @param dialectHandling how to select names for locales * @param dialectHandling how to select names for locales
* @return a ULocaleDisplayNames instance * @return a ULocaleDisplayNames instance
* @param pErrorCode the status code * @param pErrorCode the status code
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT ULocaleDisplayNames * U_EXPORT2 U_STABLE ULocaleDisplayNames * U_EXPORT2
uldn_open(const char * locale, uldn_open(const char * locale,
UDialectHandling dialectHandling, UDialectHandling dialectHandling,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Closes a ULocaleDisplayNames instance obtained from uldn_open(). * Closes a ULocaleDisplayNames instance obtained from uldn_open().
* @param ldn the ULocaleDisplayNames instance to be closed * @param ldn the ULocaleDisplayNames instance to be closed
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT void U_EXPORT2 U_STABLE void U_EXPORT2
uldn_close(ULocaleDisplayNames *ldn); uldn_close(ULocaleDisplayNames *ldn);
#if U_SHOW_CPLUSPLUS_API #if U_SHOW_CPLUSPLUS_API
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalULocaleDisplayNamesPointer * \class LocalULocaleDisplayNamesPointer
* "Smart pointer" class, closes a ULocaleDisplayNames via uldn_close(). * "Smart pointer" class, closes a ULocaleDisplayNames via uldn_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalULocaleDisplayNamesPointer, ULocaleDisplay Names, uldn_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalULocaleDisplayNamesPointer, ULocaleDisplay Names, uldn_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/* getters for state */ /* getters for state */
/** /**
* Returns the locale used to determine the display names. This is * Returns the locale used to determine the display names. This is
* not necessarily the same locale passed to {@link #uldn_open}. * not necessarily the same locale passed to {@link #uldn_open}.
* @param ldn the LocaleDisplayNames instance * @param ldn the LocaleDisplayNames instance
* @return the display locale * @return the display locale
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT const char * U_EXPORT2 U_STABLE const char * U_EXPORT2
uldn_getLocale(const ULocaleDisplayNames *ldn); uldn_getLocale(const ULocaleDisplayNames *ldn);
/** /**
* Returns the dialect handling used in the display names. * Returns the dialect handling used in the display names.
* @param ldn the LocaleDisplayNames instance * @param ldn the LocaleDisplayNames instance
* @return the dialect handling enum * @return the dialect handling enum
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UDialectHandling U_EXPORT2 U_STABLE UDialectHandling U_EXPORT2
uldn_getDialectHandling(const ULocaleDisplayNames *ldn); uldn_getDialectHandling(const ULocaleDisplayNames *ldn);
/* names for entire locales */ /* names for entire locales */
/** /**
* Returns the display name of the provided locale. * Returns the display name of the provided locale.
* @param ldn the LocaleDisplayNames instance * @param ldn the LocaleDisplayNames instance
* @param locale the locale whose display name to return * @param locale the locale whose display name to return
* @param result receives the display name * @param result receives the display name
* @param maxResultSize the size of the result buffer * @param maxResultSize the size of the result buffer
* @param pErrorCode the status code * @param pErrorCode the status code
* @return the actual buffer size needed for the display name. If it's * @return the actual buffer size needed for the display name. If it's
* greater than maxResultSize, the returned name will be truncated. * greater than maxResultSize, the returned name will be truncated.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
uldn_localeDisplayName(const ULocaleDisplayNames *ldn, uldn_localeDisplayName(const ULocaleDisplayNames *ldn,
const char *locale, const char *locale,
UChar *result, UChar *result,
int32_t maxResultSize, int32_t maxResultSize,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/* names for components of a locale */ /* names for components of a locale */
/** /**
* Returns the display name of the provided language code. * Returns the display name of the provided language code.
* @param ldn the LocaleDisplayNames instance * @param ldn the LocaleDisplayNames instance
* @param lang the language code whose display name to return * @param lang the language code whose display name to return
* @param result receives the display name * @param result receives the display name
* @param maxResultSize the size of the result buffer * @param maxResultSize the size of the result buffer
* @param pErrorCode the status code * @param pErrorCode the status code
* @return the actual buffer size needed for the display name. If it's * @return the actual buffer size needed for the display name. If it's
* greater than maxResultSize, the returned name will be truncated. * greater than maxResultSize, the returned name will be truncated.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
uldn_languageDisplayName(const ULocaleDisplayNames *ldn, uldn_languageDisplayName(const ULocaleDisplayNames *ldn,
const char *lang, const char *lang,
UChar *result, UChar *result,
int32_t maxResultSize, int32_t maxResultSize,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Returns the display name of the provided script. * Returns the display name of the provided script.
* @param ldn the LocaleDisplayNames instance * @param ldn the LocaleDisplayNames instance
* @param script the script whose display name to return * @param script the script whose display name to return
* @param result receives the display name * @param result receives the display name
* @param maxResultSize the size of the result buffer * @param maxResultSize the size of the result buffer
* @param pErrorCode the status code * @param pErrorCode the status code
* @return the actual buffer size needed for the display name. If it's * @return the actual buffer size needed for the display name. If it's
* greater than maxResultSize, the returned name will be truncated. * greater than maxResultSize, the returned name will be truncated.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
uldn_scriptDisplayName(const ULocaleDisplayNames *ldn, uldn_scriptDisplayName(const ULocaleDisplayNames *ldn,
const char *script, const char *script,
UChar *result, UChar *result,
int32_t maxResultSize, int32_t maxResultSize,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Returns the display name of the provided script code. * Returns the display name of the provided script code.
* @param ldn the LocaleDisplayNames instance * @param ldn the LocaleDisplayNames instance
* @param scriptCode the script code whose display name to return * @param scriptCode the script code whose display name to return
* @param result receives the display name * @param result receives the display name
* @param maxResultSize the size of the result buffer * @param maxResultSize the size of the result buffer
* @param pErrorCode the status code * @param pErrorCode the status code
* @return the actual buffer size needed for the display name. If it's * @return the actual buffer size needed for the display name. If it's
* greater than maxResultSize, the returned name will be truncated. * greater than maxResultSize, the returned name will be truncated.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
uldn_scriptCodeDisplayName(const ULocaleDisplayNames *ldn, uldn_scriptCodeDisplayName(const ULocaleDisplayNames *ldn,
UScriptCode scriptCode, UScriptCode scriptCode,
UChar *result, UChar *result,
int32_t maxResultSize, int32_t maxResultSize,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Returns the display name of the provided region code. * Returns the display name of the provided region code.
* @param ldn the LocaleDisplayNames instance * @param ldn the LocaleDisplayNames instance
* @param region the region code whose display name to return * @param region the region code whose display name to return
* @param result receives the display name * @param result receives the display name
* @param maxResultSize the size of the result buffer * @param maxResultSize the size of the result buffer
* @param pErrorCode the status code * @param pErrorCode the status code
* @return the actual buffer size needed for the display name. If it's * @return the actual buffer size needed for the display name. If it's
* greater than maxResultSize, the returned name will be truncated. * greater than maxResultSize, the returned name will be truncated.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
uldn_regionDisplayName(const ULocaleDisplayNames *ldn, uldn_regionDisplayName(const ULocaleDisplayNames *ldn,
const char *region, const char *region,
UChar *result, UChar *result,
int32_t maxResultSize, int32_t maxResultSize,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Returns the display name of the provided variant * Returns the display name of the provided variant
* @param ldn the LocaleDisplayNames instance * @param ldn the LocaleDisplayNames instance
* @param variant the variant whose display name to return * @param variant the variant whose display name to return
* @param result receives the display name * @param result receives the display name
* @param maxResultSize the size of the result buffer * @param maxResultSize the size of the result buffer
* @param pErrorCode the status code * @param pErrorCode the status code
* @return the actual buffer size needed for the display name. If it's * @return the actual buffer size needed for the display name. If it's
* greater than maxResultSize, the returned name will be truncated. * greater than maxResultSize, the returned name will be truncated.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
uldn_variantDisplayName(const ULocaleDisplayNames *ldn, uldn_variantDisplayName(const ULocaleDisplayNames *ldn,
const char *variant, const char *variant,
UChar *result, UChar *result,
int32_t maxResultSize, int32_t maxResultSize,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Returns the display name of the provided locale key * Returns the display name of the provided locale key
* @param ldn the LocaleDisplayNames instance * @param ldn the LocaleDisplayNames instance
* @param key the locale key whose display name to return * @param key the locale key whose display name to return
* @param result receives the display name * @param result receives the display name
* @param maxResultSize the size of the result buffer * @param maxResultSize the size of the result buffer
* @param pErrorCode the status code * @param pErrorCode the status code
* @return the actual buffer size needed for the display name. If it's * @return the actual buffer size needed for the display name. If it's
* greater than maxResultSize, the returned name will be truncated. * greater than maxResultSize, the returned name will be truncated.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
uldn_keyDisplayName(const ULocaleDisplayNames *ldn, uldn_keyDisplayName(const ULocaleDisplayNames *ldn,
const char *key, const char *key,
UChar *result, UChar *result,
int32_t maxResultSize, int32_t maxResultSize,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Returns the display name of the provided value (used with the provided k ey). * Returns the display name of the provided value (used with the provided k ey).
* @param ldn the LocaleDisplayNames instance * @param ldn the LocaleDisplayNames instance
* @param key the locale key * @param key the locale key
* @param value the locale key's value * @param value the locale key's value
* @param result receives the display name * @param result receives the display name
* @param maxResultSize the size of the result buffer * @param maxResultSize the size of the result buffer
* @param pErrorCode the status code * @param pErrorCode the status code
* @return the actual buffer size needed for the display name. If it's * @return the actual buffer size needed for the display name. If it's
* greater than maxResultSize, the returned name will be truncated. * greater than maxResultSize, the returned name will be truncated.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
uldn_keyValueDisplayName(const ULocaleDisplayNames *ldn, uldn_keyValueDisplayName(const ULocaleDisplayNames *ldn,
const char *key, const char *key,
const char *value, const char *value,
UChar *result, UChar *result,
int32_t maxResultSize, int32_t maxResultSize,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
#endif /* !UCONFIG_NO_FORMATTING */ #endif /* !UCONFIG_NO_FORMATTING */
#endif /* __ULDNAMES_H__ */ #endif /* __ULDNAMES_H__ */
 End of changes. 30 change blocks. 
30 lines changed or deleted 30 lines changed or added


 ulocdata.h   ulocdata.h 
skipping to change at line 87 skipping to change at line 87
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalULocaleDataPointer * \class LocalULocaleDataPointer
* "Smart pointer" class, closes a ULocaleData via ulocdata_close(). * "Smart pointer" class, closes a ULocaleData via ulocdata_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalULocaleDataPointer, ULocaleData, ulocdata_ close); U_DEFINE_LOCAL_OPEN_POINTER(LocalULocaleDataPointer, ULocaleData, ulocdata_ close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Sets the "no Substitute" attribute of the locale data * Sets the "no Substitute" attribute of the locale data
* object. If true, then any methods associated with the * object. If true, then any methods associated with the
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 umsg.h   umsg.h 
skipping to change at line 509 skipping to change at line 509
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUMessageFormatPointer * \class LocalUMessageFormatPointer
* "Smart pointer" class, closes a UMessageFormat via umsg_close(). * "Smart pointer" class, closes a UMessageFormat via umsg_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUMessageFormatPointer, UMessageFormat, ums g_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUMessageFormatPointer, UMessageFormat, ums g_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Open a copy of a UMessageFormat. * Open a copy of a UMessageFormat.
* This function performs a deep copy. * This function performs a deep copy.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 uniset.h   uniset.h 
skipping to change at line 871 skipping to change at line 871
/** /**
* Returns the end of the substring of the input string according to th e USetSpanCondition. * Returns the end of the substring of the input string according to th e USetSpanCondition.
* Same as <code>start+span(s.getBuffer()+start, s.length()-start, span Condition)</code> * Same as <code>start+span(s.getBuffer()+start, s.length()-start, span Condition)</code>
* after pinning start to 0<=start<=s.length(). * after pinning start to 0<=start<=s.length().
* @param s the string * @param s the string
* @param start the start index in the string for the span operation * @param start the start index in the string for the span operation
* @param spanCondition specifies the containment condition * @param spanCondition specifies the containment condition
* @return the exclusive end of the substring according to the spanCond ition; * @return the exclusive end of the substring according to the spanCond ition;
* the substring s.tempSubStringBetween(start, end) fulfills th e spanCondition * the substring s.tempSubStringBetween(start, end) fulfills th e spanCondition
* @draft ICU 4.4 * @stable ICU 4.4
* @see USetSpanCondition * @see USetSpanCondition
*/ */
inline int32_t span(const UnicodeString &s, int32_t start, USetSpanCond ition spanCondition) const; inline int32_t span(const UnicodeString &s, int32_t start, USetSpanCond ition spanCondition) const;
/** /**
* Returns the start of the trailing substring of the input string whic h * Returns the start of the trailing substring of the input string whic h
* consists only of characters and strings that are contained in this s et * consists only of characters and strings that are contained in this s et
* (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), * (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE),
* or only of characters and strings that are not contained * or only of characters and strings that are not contained
* in this set (USET_SPAN_NOT_CONTAINED). * in this set (USET_SPAN_NOT_CONTAINED).
skipping to change at line 905 skipping to change at line 905
/** /**
* Returns the start of the substring of the input string according to the USetSpanCondition. * Returns the start of the substring of the input string according to the USetSpanCondition.
* Same as <code>spanBack(s.getBuffer(), limit, spanCondition)</code> * Same as <code>spanBack(s.getBuffer(), limit, spanCondition)</code>
* after pinning limit to 0<=end<=s.length(). * after pinning limit to 0<=end<=s.length().
* @param s the string * @param s the string
* @param limit the exclusive-end index in the string for the span oper ation * @param limit the exclusive-end index in the string for the span oper ation
* (use s.length() or INT32_MAX for spanning back from the end of the string) * (use s.length() or INT32_MAX for spanning back from the end of the string)
* @param spanCondition specifies the containment condition * @param spanCondition specifies the containment condition
* @return the start of the substring according to the spanCondition; * @return the start of the substring according to the spanCondition;
* the substring s.tempSubStringBetween(start, limit) fulfills the spanCondition * the substring s.tempSubStringBetween(start, limit) fulfills the spanCondition
* @draft ICU 4.4 * @stable ICU 4.4
* @see USetSpanCondition * @see USetSpanCondition
*/ */
inline int32_t spanBack(const UnicodeString &s, int32_t limit, USetSpan Condition spanCondition) const; inline int32_t spanBack(const UnicodeString &s, int32_t limit, USetSpan Condition spanCondition) const;
/** /**
* Returns the length of the initial substring of the input string whic h * Returns the length of the initial substring of the input string whic h
* consists only of characters and strings that are contained in this s et * consists only of characters and strings that are contained in this s et
* (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE), * (USET_SPAN_CONTAINED, USET_SPAN_SIMPLE),
* or only of characters and strings that are not contained * or only of characters and strings that are not contained
* in this set (USET_SPAN_NOT_CONTAINED). * in this set (USET_SPAN_NOT_CONTAINED).
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 unistr.h   unistr.h 
skipping to change at line 1578 skipping to change at line 1578
* Create a temporary substring for the specified range. * Create a temporary substring for the specified range.
* Unlike the substring constructor and setTo() functions, * Unlike the substring constructor and setTo() functions,
* the object returned here will be a read-only alias (using getBuffer()) * the object returned here will be a read-only alias (using getBuffer())
* rather than copying the text. * rather than copying the text.
* As a result, this substring operation is much faster but requires * As a result, this substring operation is much faster but requires
* that the original string not be modified or deleted during the lifetim e * that the original string not be modified or deleted during the lifetim e
* of the returned substring object. * of the returned substring object.
* @param start offset of the first character visible in the substring * @param start offset of the first character visible in the substring
* @param length length of the substring * @param length length of the substring
* @return a read-only alias UnicodeString object for the substring * @return a read-only alias UnicodeString object for the substring
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UnicodeString tempSubString(int32_t start=0, int32_t length=INT32_MAX) co nst; UnicodeString tempSubString(int32_t start=0, int32_t length=INT32_MAX) co nst;
/** /**
* Create a temporary substring for the specified range. * Create a temporary substring for the specified range.
* Same as tempSubString(start, length) except that the substring range * Same as tempSubString(start, length) except that the substring range
* is specified as a (start, limit) pair (with an exclusive limit index) * is specified as a (start, limit) pair (with an exclusive limit index)
* rather than a (start, length) pair. * rather than a (start, length) pair.
* @param start offset of the first character visible in the substring * @param start offset of the first character visible in the substring
* @param limit offset immediately following the last character visible i n the substring * @param limit offset immediately following the last character visible i n the substring
* @return a read-only alias UnicodeString object for the substring * @return a read-only alias UnicodeString object for the substring
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
inline UnicodeString tempSubStringBetween(int32_t start, int32_t limit=IN T32_MAX) const; inline UnicodeString tempSubStringBetween(int32_t start, int32_t limit=IN T32_MAX) const;
/** /**
* Convert the UnicodeString to UTF-8 and write the result * Convert the UnicodeString to UTF-8 and write the result
* to a ByteSink. This is called by toUTF8String(). * to a ByteSink. This is called by toUTF8String().
* Unpaired surrogates are replaced with U+FFFD. * Unpaired surrogates are replaced with U+FFFD.
* Calls u_strToUTF8WithSub(). * Calls u_strToUTF8WithSub().
* *
* @param sink A ByteSink to which the UTF-8 version of the string is wri tten. * @param sink A ByteSink to which the UTF-8 version of the string is wri tten.
skipping to change at line 2428 skipping to change at line 2428
inline UnicodeString& removeBetween(int32_t start, inline UnicodeString& removeBetween(int32_t start,
int32_t limit = (int32_t)INT32_MAX); int32_t limit = (int32_t)INT32_MAX);
/** /**
* Retain only the characters in the range * Retain only the characters in the range
* [<code>start</code>, <code>limit</code>) from the UnicodeString object . * [<code>start</code>, <code>limit</code>) from the UnicodeString object .
* Removes characters before <code>start</code> and at and after <code>li mit</code>. * Removes characters before <code>start</code> and at and after <code>li mit</code>.
* @param start the offset of the first character to retain * @param start the offset of the first character to retain
* @param limit the offset immediately following the range to retain * @param limit the offset immediately following the range to retain
* @return a reference to this * @return a reference to this
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
inline UnicodeString &retainBetween(int32_t start, int32_t limit = INT32_ MAX); inline UnicodeString &retainBetween(int32_t start, int32_t limit = INT32_ MAX);
/* Length operations */ /* Length operations */
/** /**
* Pad the start of this UnicodeString with the character <TT>padChar</TT >. * Pad the start of this UnicodeString with the character <TT>padChar</TT >.
* If the length of this UnicodeString is less than targetLength, * If the length of this UnicodeString is less than targetLength,
* length() - targetLength copies of padChar will be added to the * length() - targetLength copies of padChar will be added to the
* beginning of this UnicodeString. * beginning of this UnicodeString.
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 unorm2.h   unorm2.h 
skipping to change at line 40 skipping to change at line 40
#include "unicode/utypes.h" #include "unicode/utypes.h"
#include "unicode/localpointer.h" #include "unicode/localpointer.h"
#include "unicode/uset.h" #include "unicode/uset.h"
/** /**
* Constants for normalization modes. * Constants for normalization modes.
* For details about standard Unicode normalization forms * For details about standard Unicode normalization forms
* and about the algorithms which are also used with custom mapping tables * and about the algorithms which are also used with custom mapping tables
* see http://www.unicode.org/unicode/reports/tr15/ * see http://www.unicode.org/unicode/reports/tr15/
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
typedef enum { typedef enum {
/** /**
* Decomposition followed by composition. * Decomposition followed by composition.
* Same as standard NFC when using an "nfc" instance. * Same as standard NFC when using an "nfc" instance.
* Same as standard NFKC when using an "nfkc" instance. * Same as standard NFKC when using an "nfkc" instance.
* For details about standard Unicode normalization forms * For details about standard Unicode normalization forms
* see http://www.unicode.org/unicode/reports/tr15/ * see http://www.unicode.org/unicode/reports/tr15/
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UNORM2_COMPOSE, UNORM2_COMPOSE,
/** /**
* Map, and reorder canonically. * Map, and reorder canonically.
* Same as standard NFD when using an "nfc" instance. * Same as standard NFD when using an "nfc" instance.
* Same as standard NFKD when using an "nfkc" instance. * Same as standard NFKD when using an "nfkc" instance.
* For details about standard Unicode normalization forms * For details about standard Unicode normalization forms
* see http://www.unicode.org/unicode/reports/tr15/ * see http://www.unicode.org/unicode/reports/tr15/
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UNORM2_DECOMPOSE, UNORM2_DECOMPOSE,
/** /**
* "Fast C or D" form. * "Fast C or D" form.
* If a string is in this form, then further decomposition <i>without r eordering</i> * If a string is in this form, then further decomposition <i>without r eordering</i>
* would yield the same form as DECOMPOSE. * would yield the same form as DECOMPOSE.
* Text in "Fast C or D" form can be processed efficiently with data ta bles * Text in "Fast C or D" form can be processed efficiently with data ta bles
* that are "canonically closed", that is, that provide equivalent data for * that are "canonically closed", that is, that provide equivalent data for
* equivalent text, without having to be fully normalized. * equivalent text, without having to be fully normalized.
* Not a standard Unicode normalization form. * Not a standard Unicode normalization form.
* Not a unique form: Different FCD strings can be canonically equivale nt. * Not a unique form: Different FCD strings can be canonically equivale nt.
* For details see http://www.unicode.org/notes/tn5/#FCD * For details see http://www.unicode.org/notes/tn5/#FCD
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UNORM2_FCD, UNORM2_FCD,
/** /**
* Compose only contiguously. * Compose only contiguously.
* Also known as "FCC" or "Fast C Contiguous". * Also known as "FCC" or "Fast C Contiguous".
* The result will often but not always be in NFC. * The result will often but not always be in NFC.
* The result will conform to FCD which is useful for processing. * The result will conform to FCD which is useful for processing.
* Not a standard Unicode normalization form. * Not a standard Unicode normalization form.
* For details see http://www.unicode.org/notes/tn5/#FCC * For details see http://www.unicode.org/notes/tn5/#FCC
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
UNORM2_COMPOSE_CONTIGUOUS UNORM2_COMPOSE_CONTIGUOUS
} UNormalization2Mode; } UNormalization2Mode;
/** /**
* Result values for normalization quick check functions. * Result values for normalization quick check functions.
* For details see http://www.unicode.org/reports/tr15/#Detecting_Normaliza tion_Forms * For details see http://www.unicode.org/reports/tr15/#Detecting_Normaliza tion_Forms
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
typedef enum UNormalizationCheckResult { typedef enum UNormalizationCheckResult {
skipping to change at line 114 skipping to change at line 114
* This value is only returned for composition forms like NFC and FCC, * This value is only returned for composition forms like NFC and FCC,
* when a backward-combining character is found for which the surrounding text * when a backward-combining character is found for which the surrounding text
* would have to be analyzed further. * would have to be analyzed further.
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
UNORM_MAYBE UNORM_MAYBE
} UNormalizationCheckResult; } UNormalizationCheckResult;
/** /**
* Opaque C service object type for the new normalization API. * Opaque C service object type for the new normalization API.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
struct UNormalizer2; struct UNormalizer2;
typedef struct UNormalizer2 UNormalizer2; /**< C typedef for struct UNorma lizer2. @draft ICU 4.4 */ typedef struct UNormalizer2 UNormalizer2; /**< C typedef for struct UNorma lizer2. @stable ICU 4.4 */
#if !UCONFIG_NO_NORMALIZATION #if !UCONFIG_NO_NORMALIZATION
/** /**
* Returns a UNormalizer2 instance which uses the specified data file * Returns a UNormalizer2 instance which uses the specified data file
* (packageName/name similar to ucnv_openPackage() and ures_open()/Resource Bundle) * (packageName/name similar to ucnv_openPackage() and ures_open()/Resource Bundle)
* and which composes or decomposes text according to the specified mode. * and which composes or decomposes text according to the specified mode.
* Returns an unmodifiable singleton instance. Do not delete it. * Returns an unmodifiable singleton instance. Do not delete it.
* *
* Use packageName=NULL for data files that are part of ICU's own data. * Use packageName=NULL for data files that are part of ICU's own data.
skipping to change at line 140 skipping to change at line 140
* Use name="nfkc_cf" and UNORM2_COMPOSE for Unicode standard NFKC_CF=NFKC_ Casefold. * Use name="nfkc_cf" and UNORM2_COMPOSE for Unicode standard NFKC_CF=NFKC_ Casefold.
* *
* @param packageName NULL for ICU built-in data, otherwise application dat a package name * @param packageName NULL for ICU built-in data, otherwise application dat a package name
* @param name "nfc" or "nfkc" or "nfkc_cf" or name of custom data file * @param name "nfc" or "nfkc" or "nfkc_cf" or name of custom data file
* @param mode normalization mode (compose or decompose etc.) * @param mode normalization mode (compose or decompose etc.)
* @param pErrorCode Standard ICU error code. Its input value must * @param pErrorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function returns * pass the U_SUCCESS() test, or else the function returns
* immediately. Check for U_FAILURE() on output or use wit h * immediately. Check for U_FAILURE() on output or use wit h
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return the requested UNormalizer2, if successful * @return the requested UNormalizer2, if successful
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT const UNormalizer2 * U_EXPORT2 U_STABLE const UNormalizer2 * U_EXPORT2
unorm2_getInstance(const char *packageName, unorm2_getInstance(const char *packageName,
const char *name, const char *name,
UNormalization2Mode mode, UNormalization2Mode mode,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Constructs a filtered normalizer wrapping any UNormalizer2 instance * Constructs a filtered normalizer wrapping any UNormalizer2 instance
* and a filter set. * and a filter set.
* Both are aliased and must not be modified or deleted while this object * Both are aliased and must not be modified or deleted while this object
* is used. * is used.
* The filter set should be frozen; otherwise the performance will suffer g reatly. * The filter set should be frozen; otherwise the performance will suffer g reatly.
* @param norm2 wrapped UNormalizer2 instance * @param norm2 wrapped UNormalizer2 instance
* @param filterSet USet which determines the characters to be normalized * @param filterSet USet which determines the characters to be normalized
* @param pErrorCode Standard ICU error code. Its input value must * @param pErrorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function return s * pass the U_SUCCESS() test, or else the function return s
* immediately. Check for U_FAILURE() on output or use wi th * immediately. Check for U_FAILURE() on output or use wi th
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return the requested UNormalizer2, if successful * @return the requested UNormalizer2, if successful
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UNormalizer2 * U_EXPORT2 U_STABLE UNormalizer2 * U_EXPORT2
unorm2_openFiltered(const UNormalizer2 *norm2, const USet *filterSet, UErro rCode *pErrorCode); unorm2_openFiltered(const UNormalizer2 *norm2, const USet *filterSet, UErro rCode *pErrorCode);
/** /**
* Closes a UNormalizer2 instance from unorm2_openFiltered(). * Closes a UNormalizer2 instance from unorm2_openFiltered().
* Do not close instances from unorm2_getInstance()! * Do not close instances from unorm2_getInstance()!
* @param norm2 UNormalizer2 instance to be closed * @param norm2 UNormalizer2 instance to be closed
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT void U_EXPORT2 U_STABLE void U_EXPORT2
unorm2_close(UNormalizer2 *norm2); unorm2_close(UNormalizer2 *norm2);
#if U_SHOW_CPLUSPLUS_API #if U_SHOW_CPLUSPLUS_API
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUNormalizer2Pointer * \class LocalUNormalizer2Pointer
* "Smart pointer" class, closes a UNormalizer2 via unorm2_close(). * "Smart pointer" class, closes a UNormalizer2 via unorm2_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUNormalizer2Pointer, UNormalizer2, unorm2_ close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUNormalizer2Pointer, UNormalizer2, unorm2_ close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Writes the normalized form of the source string to the destination strin g * Writes the normalized form of the source string to the destination strin g
* (replacing its contents) and returns the length of the destination strin g. * (replacing its contents) and returns the length of the destination strin g.
skipping to change at line 208 skipping to change at line 208
* @param norm2 UNormalizer2 instance * @param norm2 UNormalizer2 instance
* @param src source string * @param src source string
* @param length length of the source string, or -1 if NUL-terminated * @param length length of the source string, or -1 if NUL-terminated
* @param dest destination string; its contents is replaced with normalized src * @param dest destination string; its contents is replaced with normalized src
* @param capacity number of UChars that can be written to dest * @param capacity number of UChars that can be written to dest
* @param pErrorCode Standard ICU error code. Its input value must * @param pErrorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function return s * pass the U_SUCCESS() test, or else the function return s
* immediately. Check for U_FAILURE() on output or use wi th * immediately. Check for U_FAILURE() on output or use wi th
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return dest * @return dest
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
unorm2_normalize(const UNormalizer2 *norm2, unorm2_normalize(const UNormalizer2 *norm2,
const UChar *src, int32_t length, const UChar *src, int32_t length,
UChar *dest, int32_t capacity, UChar *dest, int32_t capacity,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Appends the normalized form of the second string to the first string * Appends the normalized form of the second string to the first string
* (merging them at the boundary) and returns the length of the first strin g. * (merging them at the boundary) and returns the length of the first strin g.
* The result is normalized if the first string was normalized. * The result is normalized if the first string was normalized.
* The first and second strings must be different buffers. * The first and second strings must be different buffers.
* @param norm2 UNormalizer2 instance * @param norm2 UNormalizer2 instance
* @param first string, should be normalized * @param first string, should be normalized
* @param firstLength length of the first string, or -1 if NUL-terminated * @param firstLength length of the first string, or -1 if NUL-terminated
* @param firstCapacity number of UChars that can be written to first * @param firstCapacity number of UChars that can be written to first
* @param second string, will be normalized * @param second string, will be normalized
* @param secondLength length of the source string, or -1 if NUL-terminated * @param secondLength length of the source string, or -1 if NUL-terminated
* @param pErrorCode Standard ICU error code. Its input value must * @param pErrorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function return s * pass the U_SUCCESS() test, or else the function return s
* immediately. Check for U_FAILURE() on output or use wi th * immediately. Check for U_FAILURE() on output or use wi th
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return first * @return first
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
unorm2_normalizeSecondAndAppend(const UNormalizer2 *norm2, unorm2_normalizeSecondAndAppend(const UNormalizer2 *norm2,
UChar *first, int32_t firstLength, int32_t firstCapacity, UChar *first, int32_t firstLength, int32_t firstCapacity,
const UChar *second, int32_t secondLength, const UChar *second, int32_t secondLength,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Appends the second string to the first string * Appends the second string to the first string
* (merging them at the boundary) and returns the length of the first strin g. * (merging them at the boundary) and returns the length of the first strin g.
* The result is normalized if both the strings were normalized. * The result is normalized if both the strings were normalized.
* The first and second strings must be different buffers. * The first and second strings must be different buffers.
* @param norm2 UNormalizer2 instance * @param norm2 UNormalizer2 instance
* @param first string, should be normalized * @param first string, should be normalized
* @param firstLength length of the first string, or -1 if NUL-terminated * @param firstLength length of the first string, or -1 if NUL-terminated
* @param firstCapacity number of UChars that can be written to first * @param firstCapacity number of UChars that can be written to first
* @param second string, should be normalized * @param second string, should be normalized
* @param secondLength length of the source string, or -1 if NUL-terminated * @param secondLength length of the source string, or -1 if NUL-terminated
* @param pErrorCode Standard ICU error code. Its input value must * @param pErrorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function return s * pass the U_SUCCESS() test, or else the function return s
* immediately. Check for U_FAILURE() on output or use wi th * immediately. Check for U_FAILURE() on output or use wi th
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return first * @return first
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
unorm2_append(const UNormalizer2 *norm2, unorm2_append(const UNormalizer2 *norm2,
UChar *first, int32_t firstLength, int32_t firstCapacity, UChar *first, int32_t firstLength, int32_t firstCapacity,
const UChar *second, int32_t secondLength, const UChar *second, int32_t secondLength,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Gets the decomposition mapping of c. Equivalent to unorm2_normalize(stri ng(c)) * Gets the decomposition mapping of c. Equivalent to unorm2_normalize(stri ng(c))
* on a UNORM2_DECOMPOSE UNormalizer2 instance, but much faster. * on a UNORM2_DECOMPOSE UNormalizer2 instance, but much faster.
* This function is independent of the mode of the UNormalizer2. * This function is independent of the mode of the UNormalizer2.
* @param norm2 UNormalizer2 instance * @param norm2 UNormalizer2 instance
skipping to change at line 297 skipping to change at line 297
* resolves to "yes" or "no" to provide a definitive result, * resolves to "yes" or "no" to provide a definitive result,
* at the cost of doing more work in those cases. * at the cost of doing more work in those cases.
* @param norm2 UNormalizer2 instance * @param norm2 UNormalizer2 instance
* @param s input string * @param s input string
* @param length length of the string, or -1 if NUL-terminated * @param length length of the string, or -1 if NUL-terminated
* @param pErrorCode Standard ICU error code. Its input value must * @param pErrorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function return s * pass the U_SUCCESS() test, or else the function return s
* immediately. Check for U_FAILURE() on output or use wi th * immediately. Check for U_FAILURE() on output or use wi th
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return TRUE if s is normalized * @return TRUE if s is normalized
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UBool U_EXPORT2 U_STABLE UBool U_EXPORT2
unorm2_isNormalized(const UNormalizer2 *norm2, unorm2_isNormalized(const UNormalizer2 *norm2,
const UChar *s, int32_t length, const UChar *s, int32_t length,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Tests if the string is normalized. * Tests if the string is normalized.
* For the two COMPOSE modes, the result could be "maybe" in cases that * For the two COMPOSE modes, the result could be "maybe" in cases that
* would take a little more work to resolve definitively. * would take a little more work to resolve definitively.
* Use spanQuickCheckYes() and normalizeSecondAndAppend() for a faster * Use spanQuickCheckYes() and normalizeSecondAndAppend() for a faster
* combination of quick check + normalization, to avoid * combination of quick check + normalization, to avoid
* re-checking the "yes" prefix. * re-checking the "yes" prefix.
* @param norm2 UNormalizer2 instance * @param norm2 UNormalizer2 instance
* @param s input string * @param s input string
* @param length length of the string, or -1 if NUL-terminated * @param length length of the string, or -1 if NUL-terminated
* @param pErrorCode Standard ICU error code. Its input value must * @param pErrorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function return s * pass the U_SUCCESS() test, or else the function return s
* immediately. Check for U_FAILURE() on output or use wi th * immediately. Check for U_FAILURE() on output or use wi th
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return UNormalizationCheckResult * @return UNormalizationCheckResult
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UNormalizationCheckResult U_EXPORT2 U_STABLE UNormalizationCheckResult U_EXPORT2
unorm2_quickCheck(const UNormalizer2 *norm2, unorm2_quickCheck(const UNormalizer2 *norm2,
const UChar *s, int32_t length, const UChar *s, int32_t length,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Returns the end of the normalized substring of the input string. * Returns the end of the normalized substring of the input string.
* In other words, with <code>end=spanQuickCheckYes(s, ec);</code> * In other words, with <code>end=spanQuickCheckYes(s, ec);</code>
* the substring <code>UnicodeString(s, 0, end)</code> * the substring <code>UnicodeString(s, 0, end)</code>
* will pass the quick check with a "yes" result. * will pass the quick check with a "yes" result.
* *
skipping to change at line 348 skipping to change at line 348
* and if it returns a prefix shorter than the input string, * and if it returns a prefix shorter than the input string,
* copy that prefix and use normalizeSecondAndAppend() for the remainder. * copy that prefix and use normalizeSecondAndAppend() for the remainder.
* @param norm2 UNormalizer2 instance * @param norm2 UNormalizer2 instance
* @param s input string * @param s input string
* @param length length of the string, or -1 if NUL-terminated * @param length length of the string, or -1 if NUL-terminated
* @param pErrorCode Standard ICU error code. Its input value must * @param pErrorCode Standard ICU error code. Its input value must
* pass the U_SUCCESS() test, or else the function return s * pass the U_SUCCESS() test, or else the function return s
* immediately. Check for U_FAILURE() on output or use wi th * immediately. Check for U_FAILURE() on output or use wi th
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return "yes" span end index * @return "yes" span end index
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
unorm2_spanQuickCheckYes(const UNormalizer2 *norm2, unorm2_spanQuickCheckYes(const UNormalizer2 *norm2,
const UChar *s, int32_t length, const UChar *s, int32_t length,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Tests if the character always has a normalization boundary before it, * Tests if the character always has a normalization boundary before it,
* regardless of context. * regardless of context.
* For details see the Normalizer2 base class documentation. * For details see the Normalizer2 base class documentation.
* @param norm2 UNormalizer2 instance * @param norm2 UNormalizer2 instance
* @param c character to test * @param c character to test
* @return TRUE if c has a normalization boundary before it * @return TRUE if c has a normalization boundary before it
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UBool U_EXPORT2 U_STABLE UBool U_EXPORT2
unorm2_hasBoundaryBefore(const UNormalizer2 *norm2, UChar32 c); unorm2_hasBoundaryBefore(const UNormalizer2 *norm2, UChar32 c);
/** /**
* Tests if the character always has a normalization boundary after it, * Tests if the character always has a normalization boundary after it,
* regardless of context. * regardless of context.
* For details see the Normalizer2 base class documentation. * For details see the Normalizer2 base class documentation.
* @param norm2 UNormalizer2 instance * @param norm2 UNormalizer2 instance
* @param c character to test * @param c character to test
* @return TRUE if c has a normalization boundary after it * @return TRUE if c has a normalization boundary after it
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UBool U_EXPORT2 U_STABLE UBool U_EXPORT2
unorm2_hasBoundaryAfter(const UNormalizer2 *norm2, UChar32 c); unorm2_hasBoundaryAfter(const UNormalizer2 *norm2, UChar32 c);
/** /**
* Tests if the character is normalization-inert. * Tests if the character is normalization-inert.
* For details see the Normalizer2 base class documentation. * For details see the Normalizer2 base class documentation.
* @param norm2 UNormalizer2 instance * @param norm2 UNormalizer2 instance
* @param c character to test * @param c character to test
* @return TRUE if c is normalization-inert * @return TRUE if c is normalization-inert
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UBool U_EXPORT2 U_STABLE UBool U_EXPORT2
unorm2_isInert(const UNormalizer2 *norm2, UChar32 c); unorm2_isInert(const UNormalizer2 *norm2, UChar32 c);
#endif /* !UCONFIG_NO_NORMALIZATION */ #endif /* !UCONFIG_NO_NORMALIZATION */
#endif /* __UNORM2_H__ */ #endif /* __UNORM2_H__ */
 End of changes. 32 change blocks. 
32 lines changed or deleted 32 lines changed or added


 unum.h   unum.h 
skipping to change at line 163 skipping to change at line 163
* @stable ICU 3.0 * @stable ICU 3.0
*/ */
UNUM_ORDINAL, UNUM_ORDINAL,
/** /**
* Duration rule-based format * Duration rule-based format
* @stable ICU 3.0 * @stable ICU 3.0
*/ */
UNUM_DURATION, UNUM_DURATION,
/** /**
* Numbering system rule-based format * Numbering system rule-based format
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
UNUM_NUMBERING_SYSTEM, UNUM_NUMBERING_SYSTEM,
/** /**
* Rule-based format defined by pattern * Rule-based format defined by pattern
* @stable ICU 3.0 * @stable ICU 3.0
*/ */
UNUM_PATTERN_RULEBASED, UNUM_PATTERN_RULEBASED,
/** Default format */ /** Default format */
UNUM_DEFAULT = UNUM_DECIMAL, UNUM_DEFAULT = UNUM_DECIMAL,
/** (Alias for UNUM_PATTERN_DECIMAL) */ /** (Alias for UNUM_PATTERN_DECIMAL) */
skipping to change at line 268 skipping to change at line 268
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUNumberFormatPointer * \class LocalUNumberFormatPointer
* "Smart pointer" class, closes a UNumberFormat via unum_close(). * "Smart pointer" class, closes a UNumberFormat via unum_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUNumberFormatPointer, UNumberFormat, unum_ close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUNumberFormatPointer, UNumberFormat, unum_ close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Open a copy of a UNumberFormat. * Open a copy of a UNumberFormat.
* This function performs a deep copy. * This function performs a deep copy.
skipping to change at line 398 skipping to change at line 398
* the beginning and ending indices of field number position-> field, if such * the beginning and ending indices of field number position-> field, if such
* a field exists. This parameter may be NULL, in which case it is ignored. * a field exists. This parameter may be NULL, in which case it is ignored.
* @param status A pointer to an UErrorCode to receive any errors * @param status A pointer to an UErrorCode to receive any errors
* @return The total buffer size needed; if greater than resultLength, the o utput was truncated. * @return The total buffer size needed; if greater than resultLength, the o utput was truncated.
* @see unum_format * @see unum_format
* @see unum_formatInt64 * @see unum_formatInt64
* @see unum_parse * @see unum_parse
* @see unum_parseInt64 * @see unum_parseInt64
* @see unum_parseDouble * @see unum_parseDouble
* @see UFieldPosition * @see UFieldPosition
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
unum_formatDecimal( const UNumberFormat* fmt, unum_formatDecimal( const UNumberFormat* fmt,
const char * number, const char * number,
int32_t length, int32_t length,
UChar* result, UChar* result,
int32_t resultLength, int32_t resultLength,
UFieldPosition *pos, /* 0 if ignore */ UFieldPosition *pos, /* 0 if ignore */
UErrorCode* status); UErrorCode* status);
/** /**
* Format a double currency amount using a UNumberFormat. * Format a double currency amount using a UNumberFormat.
skipping to change at line 534 skipping to change at line 534
* @param outBufLength The size of the output buffer. May be zero, in which case * @param outBufLength The size of the output buffer. May be zero, in which case
* the outBuf pointer may be NULL, and the function will retur n the * the outBuf pointer may be NULL, and the function will retur n the
* size of the output string. * size of the output string.
* @param status A pointer to an UErrorCode to receive any errors * @param status A pointer to an UErrorCode to receive any errors
* @return the length of the output string, not including any terminating nu l. * @return the length of the output string, not including any terminating nu l.
* @see unum_parse * @see unum_parse
* @see unum_parseInt64 * @see unum_parseInt64
* @see unum_format * @see unum_format
* @see unum_formatInt64 * @see unum_formatInt64
* @see unum_formatDouble * @see unum_formatDouble
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
unum_parseDecimal(const UNumberFormat* fmt, unum_parseDecimal(const UNumberFormat* fmt,
const UChar* text, const UChar* text,
int32_t textLength, int32_t textLength,
int32_t *parsePos /* 0 = start */, int32_t *parsePos /* 0 = start */,
char *outBuf, char *outBuf,
int32_t outBufLength, int32_t outBufLength,
UErrorCode *status); UErrorCode *status);
/** /**
* Parse a string into a double and a currency using a UNumberFormat. * Parse a string into a double and a currency using a UNumberFormat.
 End of changes. 6 change blocks. 
6 lines changed or deleted 6 lines changed or added


 uregex.h   uregex.h 
skipping to change at line 160 skipping to change at line 160
* @param flags Flags that alter the default matching behavior fo r * @param flags Flags that alter the default matching behavior fo r
* the regular expression, UREGEX_CASE_INSENSITIVE, for * the regular expression, UREGEX_CASE_INSENSITIVE, for
* example. For default behavior, set this paramete r to zero. * example. For default behavior, set this paramete r to zero.
* See <code>enum URegexpFlag</code>. All desired f lags * See <code>enum URegexpFlag</code>. All desired f lags
* are bitwise-ORed together. * are bitwise-ORed together.
* @param pe Receives the position (line and column nubers) of any syntax * @param pe Receives the position (line and column nubers) of any syntax
* error within the source regular expression string . If this * error within the source regular expression string . If this
* information is not wanted, pass NULL for this par ameter. * information is not wanted, pass NULL for this par ameter.
* @param status Receives error detected by this function. * @param status Receives error detected by this function.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
U_DRAFT URegularExpression * U_EXPORT2 U_DRAFT URegularExpression * U_EXPORT2
uregex_openUText(UText *pattern, uregex_openUText(UText *pattern,
uint32_t flags, uint32_t flags,
UParseError *pe, UParseError *pe,
UErrorCode *status); UErrorCode *status);
/** /**
* Open (compile) an ICU regular expression. The resulting regular expre ssion * Open (compile) an ICU regular expression. The resulting regular expre ssion
* handle can then be used to perform various matching operations. * handle can then be used to perform various matching operations.
skipping to change at line 220 skipping to change at line 220
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalURegularExpressionPointer * \class LocalURegularExpressionPointer
* "Smart pointer" class, closes a URegularExpression via uregex_close(). * "Smart pointer" class, closes a URegularExpression via uregex_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalURegularExpressionPointer, URegularExpress ion, uregex_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalURegularExpressionPointer, URegularExpress ion, uregex_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Make a copy of a compiled regular expression. Cloning a regular * Make a copy of a compiled regular expression. Cloning a regular
* expression is faster than opening a second instance from the source * expression is faster than opening a second instance from the source
skipping to change at line 280 skipping to change at line 280
/** /**
* Returns the source text of the pattern for this regular expression. * Returns the source text of the pattern for this regular expression.
* This function will work even if the pattern was originally specified as a UChar string. * This function will work even if the pattern was originally specified as a UChar string.
* *
* @param regexp The compiled regular expression. * @param regexp The compiled regular expression.
* @param status Receives errors detected by this function. * @param status Receives errors detected by this function.
* @return the pattern text. The storage for the text is owned by the regu lar expression * @return the pattern text. The storage for the text is owned by the regu lar expression
* object, and must not be altered or deleted. * object, and must not be altered or deleted.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
U_DRAFT UText * U_EXPORT2 U_DRAFT UText * U_EXPORT2
uregex_patternUText(const URegularExpression *regexp, uregex_patternUText(const URegularExpression *regexp,
UErrorCode *status); UErrorCode *status);
/** /**
* Get the match mode flags that were specified when compiling this regula r expression. * Get the match mode flags that were specified when compiling this regula r expression.
* @param status Receives errors detected by this function. * @param status Receives errors detected by this function.
* @param regexp The compiled regular expression. * @param regexp The compiled regular expression.
* @return The match mode flags * @return The match mode flags
skipping to change at line 338 skipping to change at line 338
* <p> * <p>
* Regular expression matching operations work directly on the applicatio n's * Regular expression matching operations work directly on the applicatio n's
* string data; only a shallow clone is made. The subject string data mu st not be * string data; only a shallow clone is made. The subject string data mu st not be
* altered after calling this function until after all regular expression * altered after calling this function until after all regular expression
* operations involving this string data are completed. * operations involving this string data are completed.
* *
* @param regexp The compiled regular expression. * @param regexp The compiled regular expression.
* @param text The subject text string. * @param text The subject text string.
* @param status Receives errors detected by this function. * @param status Receives errors detected by this function.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
U_DRAFT void U_EXPORT2 U_DRAFT void U_EXPORT2
uregex_setUText(URegularExpression *regexp, uregex_setUText(URegularExpression *regexp,
UText *text, UText *text,
UErrorCode *status); UErrorCode *status);
/** /**
* Get the subject text that is currently associated with this * Get the subject text that is currently associated with this
* regular expression object. If the input was supplied using uregex_se tText(), * regular expression object. If the input was supplied using uregex_se tText(),
* that pointer will be returned. Otherwise, the characters in the inpu t will * that pointer will be returned. Otherwise, the characters in the inpu t will
skipping to change at line 384 skipping to change at line 384
* This function will work even if the input was originally specified as a UChar string. * This function will work even if the input was originally specified as a UChar string.
* *
* @param regexp The compiled regular expression. * @param regexp The compiled regular expression.
* @param dest A mutable UText in which to store the current input. * @param dest A mutable UText in which to store the current input.
* If NULL, a new UText will be created as an immutable shallow clone * If NULL, a new UText will be created as an immutable shallow clone
* of the actual input string. * of the actual input string.
* @param status Receives errors detected by this function. * @param status Receives errors detected by this function.
* @return The subject text currently associated with this regu lar expression. * @return The subject text currently associated with this regu lar expression.
* If a pre-allocated UText was provided, it will alway s be used and returned. * If a pre-allocated UText was provided, it will alway s be used and returned.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
U_DRAFT UText * U_EXPORT2 U_DRAFT UText * U_EXPORT2
uregex_getUText(URegularExpression *regexp, uregex_getUText(URegularExpression *regexp,
UText *dest, UText *dest,
UErrorCode *status); UErrorCode *status);
/** /**
* Attempts to match the input string against the pattern. * Attempts to match the input string against the pattern.
* To succeed, the match must extend to the end of the string, * To succeed, the match must extend to the end of the string,
* or cover the complete match region. * or cover the complete match region.
skipping to change at line 919 skipping to change at line 919
* references to capture groups; these take the form of $1, $2, etc. * references to capture groups; these take the form of $1, $2, etc.
* *
* @param regexp The compiled regular expression. * @param regexp The compiled regular expression.
* @param replacement A string containing the replacement text. * @param replacement A string containing the replacement text.
* @param dest A mutable UText that will receive the result . * @param dest A mutable UText that will receive the result .
* If NULL, a new UText will be created (which may not be mutable). * If NULL, a new UText will be created (which may not be mutable).
* @param status A reference to a UErrorCode to receive any e rrors. * @param status A reference to a UErrorCode to receive any e rrors.
* @return A UText containing the results of the find a nd replace. * @return A UText containing the results of the find a nd replace.
* If a pre-allocated UText was provided, it w ill always be used and returned. * If a pre-allocated UText was provided, it w ill always be used and returned.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
U_DRAFT UText * U_EXPORT2 U_DRAFT UText * U_EXPORT2
uregex_replaceAllUText(URegularExpression *regexp, uregex_replaceAllUText(URegularExpression *regexp,
UText *replacement, UText *replacement,
UText *dest, UText *dest,
UErrorCode *status); UErrorCode *status);
/** /**
* Replaces the first substring of the input that matches the pattern * Replaces the first substring of the input that matches the pattern
* with the given replacement string. This is a convenience function t hat * with the given replacement string. This is a convenience function t hat
skipping to change at line 978 skipping to change at line 978
* references to capture groups; these take the form of $1, $2, etc. * references to capture groups; these take the form of $1, $2, etc.
* *
* @param regexp The compiled regular expression. * @param regexp The compiled regular expression.
* @param replacement A string containing the replacement text. * @param replacement A string containing the replacement text.
* @param dest A mutable UText that will receive the result . * @param dest A mutable UText that will receive the result .
* If NULL, a new UText will be created (which may not be mutable). * If NULL, a new UText will be created (which may not be mutable).
* @param status A reference to a UErrorCode to receive any e rrors. * @param status A reference to a UErrorCode to receive any e rrors.
* @return A UText containing the results of the find a nd replace. * @return A UText containing the results of the find a nd replace.
* If a pre-allocated UText was provided, it w ill always be used and returned. * If a pre-allocated UText was provided, it w ill always be used and returned.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
U_DRAFT UText * U_EXPORT2 U_DRAFT UText * U_EXPORT2
uregex_replaceFirstUText(URegularExpression *regexp, uregex_replaceFirstUText(URegularExpression *regexp,
UText *replacement, UText *replacement,
UText *dest, UText *dest,
UErrorCode *status); UErrorCode *status);
/** /**
* Implements a replace operation intended to be used as part of an * Implements a replace operation intended to be used as part of an
* incremental find-and-replace. * incremental find-and-replace.
skipping to change at line 1060 skipping to change at line 1060
* operations, see replaceFirst() or replaceAll().</p> * operations, see replaceFirst() or replaceAll().</p>
* *
* @param regexp The regular expression object. * @param regexp The regular expression object.
* @param replacementText The string that will replace the matched por tion of the * @param replacementText The string that will replace the matched por tion of the
* input string as it is copied to the destination buffer. * input string as it is copied to the destination buffer.
* The replacement text may contain references ($1, for * The replacement text may contain references ($1, for
* example) to capture groups from the match. * example) to capture groups from the match.
* @param dest A mutable UText that will receive the result. Mu st not be NULL. * @param dest A mutable UText that will receive the result. Mu st not be NULL.
* @param status A reference to a UErrorCode to receive any error s. * @param status A reference to a UErrorCode to receive any error s.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
U_DRAFT void U_EXPORT2 U_DRAFT void U_EXPORT2
uregex_appendReplacementUText(URegularExpression *regexp, uregex_appendReplacementUText(URegularExpression *regexp,
UText *replacementText, UText *replacementText,
UText *dest, UText *dest,
UErrorCode *status); UErrorCode *status);
/** /**
* As the final step in a find-and-replace operation, append the remainder * As the final step in a find-and-replace operation, append the remainder
* of the input string, starting at the position following the last match, * of the input string, starting at the position following the last match,
skipping to change at line 1205 skipping to change at line 1205
* If the number of fields found is less than destCapacity , the * If the number of fields found is less than destCapacity , the
* extra strings in the destination array are not altered. * extra strings in the destination array are not altered.
* If the number of destination strings is less than the n umber * If the number of destination strings is less than the n umber
* of fields, the trailing part of the input string, inclu ding any * of fields, the trailing part of the input string, inclu ding any
* field delimiters, is placed in the last destination str ing. * field delimiters, is placed in the last destination str ing.
* This behavior mimics that of Perl. It is not an error condition, and no * This behavior mimics that of Perl. It is not an error condition, and no
* error status is returned when all destField positions a re used. * error status is returned when all destField positions a re used.
* @param status A reference to a UErrorCode to receive any errors. * @param status A reference to a UErrorCode to receive any errors.
* @return The number of fields into which the input string was sp lit. * @return The number of fields into which the input string was sp lit.
* *
* @draft ICU 4.4 * @draft ICU 4.6
*/ */
U_DRAFT int32_t U_EXPORT2 U_DRAFT int32_t U_EXPORT2
uregex_splitUText(URegularExpression *regexp, uregex_splitUText(URegularExpression *regexp,
UText *destFields[], UText *destFields[],
int32_t destFieldsCapacity, int32_t destFieldsCapacity,
UErrorCode *status); UErrorCode *status);
/** /**
* Set a processing time limit for match operations with this URegularExpre ssion. * Set a processing time limit for match operations with this URegularExpre ssion.
* *
 End of changes. 9 change blocks. 
9 lines changed or deleted 9 lines changed or added


 urename.h   urename.h 
skipping to change at line 144 skipping to change at line 144
#define le_create U_ICU_ENTRY_POINT_RENAME(le_create) #define le_create U_ICU_ENTRY_POINT_RENAME(le_create)
#define le_getCharIndices U_ICU_ENTRY_POINT_RENAME(le_getCharIndices) #define le_getCharIndices U_ICU_ENTRY_POINT_RENAME(le_getCharIndices)
#define le_getCharIndicesWithBase U_ICU_ENTRY_POINT_RENAME(le_getCharIndice sWithBase) #define le_getCharIndicesWithBase U_ICU_ENTRY_POINT_RENAME(le_getCharIndice sWithBase)
#define le_getGlyphCount U_ICU_ENTRY_POINT_RENAME(le_getGlyphCount) #define le_getGlyphCount U_ICU_ENTRY_POINT_RENAME(le_getGlyphCount)
#define le_getGlyphPosition U_ICU_ENTRY_POINT_RENAME(le_getGlyphPosition) #define le_getGlyphPosition U_ICU_ENTRY_POINT_RENAME(le_getGlyphPosition)
#define le_getGlyphPositions U_ICU_ENTRY_POINT_RENAME(le_getGlyphPositions) #define le_getGlyphPositions U_ICU_ENTRY_POINT_RENAME(le_getGlyphPositions)
#define le_getGlyphs U_ICU_ENTRY_POINT_RENAME(le_getGlyphs) #define le_getGlyphs U_ICU_ENTRY_POINT_RENAME(le_getGlyphs)
#define le_layoutChars U_ICU_ENTRY_POINT_RENAME(le_layoutChars) #define le_layoutChars U_ICU_ENTRY_POINT_RENAME(le_layoutChars)
#define le_reset U_ICU_ENTRY_POINT_RENAME(le_reset) #define le_reset U_ICU_ENTRY_POINT_RENAME(le_reset)
#define locale_getKeywords U_ICU_ENTRY_POINT_RENAME(locale_getKeywords) #define locale_getKeywords U_ICU_ENTRY_POINT_RENAME(locale_getKeywords)
#define locale_getKeywordsStart U_ICU_ENTRY_POINT_RENAME(locale_getKeywords Start)
#define locale_get_default U_ICU_ENTRY_POINT_RENAME(locale_get_default) #define locale_get_default U_ICU_ENTRY_POINT_RENAME(locale_get_default)
#define locale_set_default U_ICU_ENTRY_POINT_RENAME(locale_set_default) #define locale_set_default U_ICU_ENTRY_POINT_RENAME(locale_set_default)
#define pl_addFontRun U_ICU_ENTRY_POINT_RENAME(pl_addFontRun) #define pl_addFontRun U_ICU_ENTRY_POINT_RENAME(pl_addFontRun)
#define pl_addLocaleRun U_ICU_ENTRY_POINT_RENAME(pl_addLocaleRun) #define pl_addLocaleRun U_ICU_ENTRY_POINT_RENAME(pl_addLocaleRun)
#define pl_addValueRun U_ICU_ENTRY_POINT_RENAME(pl_addValueRun) #define pl_addValueRun U_ICU_ENTRY_POINT_RENAME(pl_addValueRun)
#define pl_close U_ICU_ENTRY_POINT_RENAME(pl_close) #define pl_close U_ICU_ENTRY_POINT_RENAME(pl_close)
#define pl_closeFontRuns U_ICU_ENTRY_POINT_RENAME(pl_closeFontRuns) #define pl_closeFontRuns U_ICU_ENTRY_POINT_RENAME(pl_closeFontRuns)
#define pl_closeLine U_ICU_ENTRY_POINT_RENAME(pl_closeLine) #define pl_closeLine U_ICU_ENTRY_POINT_RENAME(pl_closeLine)
#define pl_closeLocaleRuns U_ICU_ENTRY_POINT_RENAME(pl_closeLocaleRuns) #define pl_closeLocaleRuns U_ICU_ENTRY_POINT_RENAME(pl_closeLocaleRuns)
#define pl_closeValueRuns U_ICU_ENTRY_POINT_RENAME(pl_closeValueRuns) #define pl_closeValueRuns U_ICU_ENTRY_POINT_RENAME(pl_closeValueRuns)
skipping to change at line 213 skipping to change at line 214
#define res_getBinary U_ICU_ENTRY_POINT_RENAME(res_getBinary) #define res_getBinary U_ICU_ENTRY_POINT_RENAME(res_getBinary)
#define res_getIntVector U_ICU_ENTRY_POINT_RENAME(res_getIntVector) #define res_getIntVector U_ICU_ENTRY_POINT_RENAME(res_getIntVector)
#define res_getPublicType U_ICU_ENTRY_POINT_RENAME(res_getPublicType) #define res_getPublicType U_ICU_ENTRY_POINT_RENAME(res_getPublicType)
#define res_getResource U_ICU_ENTRY_POINT_RENAME(res_getResource) #define res_getResource U_ICU_ENTRY_POINT_RENAME(res_getResource)
#define res_getString U_ICU_ENTRY_POINT_RENAME(res_getString) #define res_getString U_ICU_ENTRY_POINT_RENAME(res_getString)
#define res_getTableItemByIndex U_ICU_ENTRY_POINT_RENAME(res_getTableItemBy Index) #define res_getTableItemByIndex U_ICU_ENTRY_POINT_RENAME(res_getTableItemBy Index)
#define res_getTableItemByKey U_ICU_ENTRY_POINT_RENAME(res_getTableItemByKe y) #define res_getTableItemByKey U_ICU_ENTRY_POINT_RENAME(res_getTableItemByKe y)
#define res_load U_ICU_ENTRY_POINT_RENAME(res_load) #define res_load U_ICU_ENTRY_POINT_RENAME(res_load)
#define res_read U_ICU_ENTRY_POINT_RENAME(res_read) #define res_read U_ICU_ENTRY_POINT_RENAME(res_read)
#define res_unload U_ICU_ENTRY_POINT_RENAME(res_unload) #define res_unload U_ICU_ENTRY_POINT_RENAME(res_unload)
#define tmutfmtHashTableValueComparator U_ICU_ENTRY_POINT_RENAME(tmutfmtHas hTableValueComparator)
#define triedict_swap U_ICU_ENTRY_POINT_RENAME(triedict_swap) #define triedict_swap U_ICU_ENTRY_POINT_RENAME(triedict_swap)
#define u_UCharsToChars U_ICU_ENTRY_POINT_RENAME(u_UCharsToChars) #define u_UCharsToChars U_ICU_ENTRY_POINT_RENAME(u_UCharsToChars)
#define u_austrcpy U_ICU_ENTRY_POINT_RENAME(u_austrcpy) #define u_austrcpy U_ICU_ENTRY_POINT_RENAME(u_austrcpy)
#define u_austrncpy U_ICU_ENTRY_POINT_RENAME(u_austrncpy) #define u_austrncpy U_ICU_ENTRY_POINT_RENAME(u_austrncpy)
#define u_catclose U_ICU_ENTRY_POINT_RENAME(u_catclose) #define u_catclose U_ICU_ENTRY_POINT_RENAME(u_catclose)
#define u_catgets U_ICU_ENTRY_POINT_RENAME(u_catgets) #define u_catgets U_ICU_ENTRY_POINT_RENAME(u_catgets)
#define u_catopen U_ICU_ENTRY_POINT_RENAME(u_catopen) #define u_catopen U_ICU_ENTRY_POINT_RENAME(u_catopen)
#define u_charAge U_ICU_ENTRY_POINT_RENAME(u_charAge) #define u_charAge U_ICU_ENTRY_POINT_RENAME(u_charAge)
#define u_charDigitValue U_ICU_ENTRY_POINT_RENAME(u_charDigitValue) #define u_charDigitValue U_ICU_ENTRY_POINT_RENAME(u_charDigitValue)
#define u_charDirection U_ICU_ENTRY_POINT_RENAME(u_charDirection) #define u_charDirection U_ICU_ENTRY_POINT_RENAME(u_charDirection)
skipping to change at line 693 skipping to change at line 695
#define ucnv_unloadSharedDataIfReady U_ICU_ENTRY_POINT_RENAME(ucnv_unloadSh aredDataIfReady) #define ucnv_unloadSharedDataIfReady U_ICU_ENTRY_POINT_RENAME(ucnv_unloadSh aredDataIfReady)
#define ucnv_usesFallback U_ICU_ENTRY_POINT_RENAME(ucnv_usesFallback) #define ucnv_usesFallback U_ICU_ENTRY_POINT_RENAME(ucnv_usesFallback)
#define ucnvsel_close U_ICU_ENTRY_POINT_RENAME(ucnvsel_close) #define ucnvsel_close U_ICU_ENTRY_POINT_RENAME(ucnvsel_close)
#define ucnvsel_open U_ICU_ENTRY_POINT_RENAME(ucnvsel_open) #define ucnvsel_open U_ICU_ENTRY_POINT_RENAME(ucnvsel_open)
#define ucnvsel_openFromSerialized U_ICU_ENTRY_POINT_RENAME(ucnvsel_openFro mSerialized) #define ucnvsel_openFromSerialized U_ICU_ENTRY_POINT_RENAME(ucnvsel_openFro mSerialized)
#define ucnvsel_selectForString U_ICU_ENTRY_POINT_RENAME(ucnvsel_selectForS tring) #define ucnvsel_selectForString U_ICU_ENTRY_POINT_RENAME(ucnvsel_selectForS tring)
#define ucnvsel_selectForUTF8 U_ICU_ENTRY_POINT_RENAME(ucnvsel_selectForUTF 8) #define ucnvsel_selectForUTF8 U_ICU_ENTRY_POINT_RENAME(ucnvsel_selectForUTF 8)
#define ucnvsel_serialize U_ICU_ENTRY_POINT_RENAME(ucnvsel_serialize) #define ucnvsel_serialize U_ICU_ENTRY_POINT_RENAME(ucnvsel_serialize)
#define ucol_allocWeights U_ICU_ENTRY_POINT_RENAME(ucol_allocWeights) #define ucol_allocWeights U_ICU_ENTRY_POINT_RENAME(ucol_allocWeights)
#define ucol_assembleTailoringTable U_ICU_ENTRY_POINT_RENAME(ucol_assembleT ailoringTable) #define ucol_assembleTailoringTable U_ICU_ENTRY_POINT_RENAME(ucol_assembleT ailoringTable)
#define ucol_buildPermutationTable U_ICU_ENTRY_POINT_RENAME(ucol_buildPermu tationTable)
#define ucol_calcSortKey U_ICU_ENTRY_POINT_RENAME(ucol_calcSortKey) #define ucol_calcSortKey U_ICU_ENTRY_POINT_RENAME(ucol_calcSortKey)
#define ucol_calcSortKeySimpleTertiary U_ICU_ENTRY_POINT_RENAME(ucol_calcSo rtKeySimpleTertiary) #define ucol_calcSortKeySimpleTertiary U_ICU_ENTRY_POINT_RENAME(ucol_calcSo rtKeySimpleTertiary)
#define ucol_cloneBinary U_ICU_ENTRY_POINT_RENAME(ucol_cloneBinary) #define ucol_cloneBinary U_ICU_ENTRY_POINT_RENAME(ucol_cloneBinary)
#define ucol_cloneRuleData U_ICU_ENTRY_POINT_RENAME(ucol_cloneRuleData) #define ucol_cloneRuleData U_ICU_ENTRY_POINT_RENAME(ucol_cloneRuleData)
#define ucol_close U_ICU_ENTRY_POINT_RENAME(ucol_close) #define ucol_close U_ICU_ENTRY_POINT_RENAME(ucol_close)
#define ucol_closeElements U_ICU_ENTRY_POINT_RENAME(ucol_closeElements) #define ucol_closeElements U_ICU_ENTRY_POINT_RENAME(ucol_closeElements)
#define ucol_countAvailable U_ICU_ENTRY_POINT_RENAME(ucol_countAvailable) #define ucol_countAvailable U_ICU_ENTRY_POINT_RENAME(ucol_countAvailable)
#define ucol_createElements U_ICU_ENTRY_POINT_RENAME(ucol_createElements) #define ucol_createElements U_ICU_ENTRY_POINT_RENAME(ucol_createElements)
#define ucol_doCE U_ICU_ENTRY_POINT_RENAME(ucol_doCE) #define ucol_doCE U_ICU_ENTRY_POINT_RENAME(ucol_doCE)
#define ucol_equal U_ICU_ENTRY_POINT_RENAME(ucol_equal) #define ucol_equal U_ICU_ENTRY_POINT_RENAME(ucol_equal)
#define ucol_equals U_ICU_ENTRY_POINT_RENAME(ucol_equals) #define ucol_equals U_ICU_ENTRY_POINT_RENAME(ucol_equals)
#define ucol_findReorderingEntry U_ICU_ENTRY_POINT_RENAME(ucol_findReorderi ngEntry)
#define ucol_forceHanImplicit U_ICU_ENTRY_POINT_RENAME(ucol_forceHanImplici t) #define ucol_forceHanImplicit U_ICU_ENTRY_POINT_RENAME(ucol_forceHanImplici t)
#define ucol_forgetUCA U_ICU_ENTRY_POINT_RENAME(ucol_forgetUCA) #define ucol_forgetUCA U_ICU_ENTRY_POINT_RENAME(ucol_forgetUCA)
#define ucol_freeOffsetBuffer U_ICU_ENTRY_POINT_RENAME(ucol_freeOffsetBuffe r) #define ucol_freeOffsetBuffer U_ICU_ENTRY_POINT_RENAME(ucol_freeOffsetBuffe r)
#define ucol_getAttribute U_ICU_ENTRY_POINT_RENAME(ucol_getAttribute) #define ucol_getAttribute U_ICU_ENTRY_POINT_RENAME(ucol_getAttribute)
#define ucol_getAttributeOrDefault U_ICU_ENTRY_POINT_RENAME(ucol_getAttribu teOrDefault) #define ucol_getAttributeOrDefault U_ICU_ENTRY_POINT_RENAME(ucol_getAttribu teOrDefault)
#define ucol_getAvailable U_ICU_ENTRY_POINT_RENAME(ucol_getAvailable) #define ucol_getAvailable U_ICU_ENTRY_POINT_RENAME(ucol_getAvailable)
#define ucol_getBound U_ICU_ENTRY_POINT_RENAME(ucol_getBound) #define ucol_getBound U_ICU_ENTRY_POINT_RENAME(ucol_getBound)
#define ucol_getCEStrengthDifference U_ICU_ENTRY_POINT_RENAME(ucol_getCEStr engthDifference) #define ucol_getCEStrengthDifference U_ICU_ENTRY_POINT_RENAME(ucol_getCEStr engthDifference)
#define ucol_getContractions U_ICU_ENTRY_POINT_RENAME(ucol_getContractions) #define ucol_getContractions U_ICU_ENTRY_POINT_RENAME(ucol_getContractions)
#define ucol_getContractionsAndExpansions U_ICU_ENTRY_POINT_RENAME(ucol_get ContractionsAndExpansions) #define ucol_getContractionsAndExpansions U_ICU_ENTRY_POINT_RENAME(ucol_get ContractionsAndExpansions)
#define ucol_getDisplayName U_ICU_ENTRY_POINT_RENAME(ucol_getDisplayName) #define ucol_getDisplayName U_ICU_ENTRY_POINT_RENAME(ucol_getDisplayName)
#define ucol_getFirstCE U_ICU_ENTRY_POINT_RENAME(ucol_getFirstCE) #define ucol_getFirstCE U_ICU_ENTRY_POINT_RENAME(ucol_getFirstCE)
#define ucol_getFunctionalEquivalent U_ICU_ENTRY_POINT_RENAME(ucol_getFunct ionalEquivalent) #define ucol_getFunctionalEquivalent U_ICU_ENTRY_POINT_RENAME(ucol_getFunct ionalEquivalent)
#define ucol_getKeywordValues U_ICU_ENTRY_POINT_RENAME(ucol_getKeywordValue s) #define ucol_getKeywordValues U_ICU_ENTRY_POINT_RENAME(ucol_getKeywordValue s)
#define ucol_getKeywordValuesForLocale U_ICU_ENTRY_POINT_RENAME(ucol_getKey wordValuesForLocale) #define ucol_getKeywordValuesForLocale U_ICU_ENTRY_POINT_RENAME(ucol_getKey wordValuesForLocale)
#define ucol_getKeywords U_ICU_ENTRY_POINT_RENAME(ucol_getKeywords) #define ucol_getKeywords U_ICU_ENTRY_POINT_RENAME(ucol_getKeywords)
#define ucol_getLeadBytesForReorderCode U_ICU_ENTRY_POINT_RENAME(ucol_getLe adBytesForReorderCode)
#define ucol_getLocale U_ICU_ENTRY_POINT_RENAME(ucol_getLocale) #define ucol_getLocale U_ICU_ENTRY_POINT_RENAME(ucol_getLocale)
#define ucol_getLocaleByType U_ICU_ENTRY_POINT_RENAME(ucol_getLocaleByType) #define ucol_getLocaleByType U_ICU_ENTRY_POINT_RENAME(ucol_getLocaleByType)
#define ucol_getMaxExpansion U_ICU_ENTRY_POINT_RENAME(ucol_getMaxExpansion) #define ucol_getMaxExpansion U_ICU_ENTRY_POINT_RENAME(ucol_getMaxExpansion)
#define ucol_getNextCE U_ICU_ENTRY_POINT_RENAME(ucol_getNextCE) #define ucol_getNextCE U_ICU_ENTRY_POINT_RENAME(ucol_getNextCE)
#define ucol_getOffset U_ICU_ENTRY_POINT_RENAME(ucol_getOffset) #define ucol_getOffset U_ICU_ENTRY_POINT_RENAME(ucol_getOffset)
#define ucol_getPrevCE U_ICU_ENTRY_POINT_RENAME(ucol_getPrevCE) #define ucol_getPrevCE U_ICU_ENTRY_POINT_RENAME(ucol_getPrevCE)
#define ucol_getReorderCodes U_ICU_ENTRY_POINT_RENAME(ucol_getReorderCodes)
#define ucol_getReorderCodesForLeadByte U_ICU_ENTRY_POINT_RENAME(ucol_getRe
orderCodesForLeadByte)
#define ucol_getRules U_ICU_ENTRY_POINT_RENAME(ucol_getRules) #define ucol_getRules U_ICU_ENTRY_POINT_RENAME(ucol_getRules)
#define ucol_getRulesEx U_ICU_ENTRY_POINT_RENAME(ucol_getRulesEx) #define ucol_getRulesEx U_ICU_ENTRY_POINT_RENAME(ucol_getRulesEx)
#define ucol_getShortDefinitionString U_ICU_ENTRY_POINT_RENAME(ucol_getShor tDefinitionString) #define ucol_getShortDefinitionString U_ICU_ENTRY_POINT_RENAME(ucol_getShor tDefinitionString)
#define ucol_getSortKey U_ICU_ENTRY_POINT_RENAME(ucol_getSortKey) #define ucol_getSortKey U_ICU_ENTRY_POINT_RENAME(ucol_getSortKey)
#define ucol_getSortKeySize U_ICU_ENTRY_POINT_RENAME(ucol_getSortKeySize) #define ucol_getSortKeySize U_ICU_ENTRY_POINT_RENAME(ucol_getSortKeySize)
#define ucol_getSortKeyWithAllocation U_ICU_ENTRY_POINT_RENAME(ucol_getSort KeyWithAllocation) #define ucol_getSortKeyWithAllocation U_ICU_ENTRY_POINT_RENAME(ucol_getSort KeyWithAllocation)
#define ucol_getStrength U_ICU_ENTRY_POINT_RENAME(ucol_getStrength) #define ucol_getStrength U_ICU_ENTRY_POINT_RENAME(ucol_getStrength)
#define ucol_getTailoredSet U_ICU_ENTRY_POINT_RENAME(ucol_getTailoredSet) #define ucol_getTailoredSet U_ICU_ENTRY_POINT_RENAME(ucol_getTailoredSet)
#define ucol_getUCAVersion U_ICU_ENTRY_POINT_RENAME(ucol_getUCAVersion) #define ucol_getUCAVersion U_ICU_ENTRY_POINT_RENAME(ucol_getUCAVersion)
#define ucol_getUnsafeSet U_ICU_ENTRY_POINT_RENAME(ucol_getUnsafeSet) #define ucol_getUnsafeSet U_ICU_ENTRY_POINT_RENAME(ucol_getUnsafeSet)
skipping to change at line 761 skipping to change at line 768
#define ucol_nextProcessed U_ICU_ENTRY_POINT_RENAME(ucol_nextProcessed) #define ucol_nextProcessed U_ICU_ENTRY_POINT_RENAME(ucol_nextProcessed)
#define ucol_nextSortKeyPart U_ICU_ENTRY_POINT_RENAME(ucol_nextSortKeyPart) #define ucol_nextSortKeyPart U_ICU_ENTRY_POINT_RENAME(ucol_nextSortKeyPart)
#define ucol_nextWeight U_ICU_ENTRY_POINT_RENAME(ucol_nextWeight) #define ucol_nextWeight U_ICU_ENTRY_POINT_RENAME(ucol_nextWeight)
#define ucol_normalizeShortDefinitionString U_ICU_ENTRY_POINT_RENAME(ucol_n ormalizeShortDefinitionString) #define ucol_normalizeShortDefinitionString U_ICU_ENTRY_POINT_RENAME(ucol_n ormalizeShortDefinitionString)
#define ucol_open U_ICU_ENTRY_POINT_RENAME(ucol_open) #define ucol_open U_ICU_ENTRY_POINT_RENAME(ucol_open)
#define ucol_openAvailableLocales U_ICU_ENTRY_POINT_RENAME(ucol_openAvailab leLocales) #define ucol_openAvailableLocales U_ICU_ENTRY_POINT_RENAME(ucol_openAvailab leLocales)
#define ucol_openBinary U_ICU_ENTRY_POINT_RENAME(ucol_openBinary) #define ucol_openBinary U_ICU_ENTRY_POINT_RENAME(ucol_openBinary)
#define ucol_openElements U_ICU_ENTRY_POINT_RENAME(ucol_openElements) #define ucol_openElements U_ICU_ENTRY_POINT_RENAME(ucol_openElements)
#define ucol_openFromShortString U_ICU_ENTRY_POINT_RENAME(ucol_openFromShor tString) #define ucol_openFromShortString U_ICU_ENTRY_POINT_RENAME(ucol_openFromShor tString)
#define ucol_openRules U_ICU_ENTRY_POINT_RENAME(ucol_openRules) #define ucol_openRules U_ICU_ENTRY_POINT_RENAME(ucol_openRules)
#define ucol_openRulesForImport U_ICU_ENTRY_POINT_RENAME(ucol_openRulesForI mport)
#define ucol_open_internal U_ICU_ENTRY_POINT_RENAME(ucol_open_internal) #define ucol_open_internal U_ICU_ENTRY_POINT_RENAME(ucol_open_internal)
#define ucol_prepareShortStringOpen U_ICU_ENTRY_POINT_RENAME(ucol_prepareSh ortStringOpen) #define ucol_prepareShortStringOpen U_ICU_ENTRY_POINT_RENAME(ucol_prepareSh ortStringOpen)
#define ucol_previous U_ICU_ENTRY_POINT_RENAME(ucol_previous) #define ucol_previous U_ICU_ENTRY_POINT_RENAME(ucol_previous)
#define ucol_previousProcessed U_ICU_ENTRY_POINT_RENAME(ucol_previousProces sed) #define ucol_previousProcessed U_ICU_ENTRY_POINT_RENAME(ucol_previousProces sed)
#define ucol_primaryOrder U_ICU_ENTRY_POINT_RENAME(ucol_primaryOrder) #define ucol_primaryOrder U_ICU_ENTRY_POINT_RENAME(ucol_primaryOrder)
#define ucol_prv_getSpecialCE U_ICU_ENTRY_POINT_RENAME(ucol_prv_getSpecialC E) #define ucol_prv_getSpecialCE U_ICU_ENTRY_POINT_RENAME(ucol_prv_getSpecialC E)
#define ucol_prv_getSpecialPrevCE U_ICU_ENTRY_POINT_RENAME(ucol_prv_getSpec ialPrevCE) #define ucol_prv_getSpecialPrevCE U_ICU_ENTRY_POINT_RENAME(ucol_prv_getSpec ialPrevCE)
#define ucol_reset U_ICU_ENTRY_POINT_RENAME(ucol_reset) #define ucol_reset U_ICU_ENTRY_POINT_RENAME(ucol_reset)
#define ucol_restoreVariableTop U_ICU_ENTRY_POINT_RENAME(ucol_restoreVariab leTop) #define ucol_restoreVariableTop U_ICU_ENTRY_POINT_RENAME(ucol_restoreVariab leTop)
#define ucol_safeClone U_ICU_ENTRY_POINT_RENAME(ucol_safeClone) #define ucol_safeClone U_ICU_ENTRY_POINT_RENAME(ucol_safeClone)
#define ucol_secondaryOrder U_ICU_ENTRY_POINT_RENAME(ucol_secondaryOrder) #define ucol_secondaryOrder U_ICU_ENTRY_POINT_RENAME(ucol_secondaryOrder)
#define ucol_setAttribute U_ICU_ENTRY_POINT_RENAME(ucol_setAttribute) #define ucol_setAttribute U_ICU_ENTRY_POINT_RENAME(ucol_setAttribute)
#define ucol_setOffset U_ICU_ENTRY_POINT_RENAME(ucol_setOffset) #define ucol_setOffset U_ICU_ENTRY_POINT_RENAME(ucol_setOffset)
#define ucol_setOptionsFromHeader U_ICU_ENTRY_POINT_RENAME(ucol_setOptionsF romHeader) #define ucol_setOptionsFromHeader U_ICU_ENTRY_POINT_RENAME(ucol_setOptionsF romHeader)
#define ucol_setReorderCodes U_ICU_ENTRY_POINT_RENAME(ucol_setReorderCodes)
#define ucol_setReqValidLocales U_ICU_ENTRY_POINT_RENAME(ucol_setReqValidLo cales) #define ucol_setReqValidLocales U_ICU_ENTRY_POINT_RENAME(ucol_setReqValidLo cales)
#define ucol_setStrength U_ICU_ENTRY_POINT_RENAME(ucol_setStrength) #define ucol_setStrength U_ICU_ENTRY_POINT_RENAME(ucol_setStrength)
#define ucol_setText U_ICU_ENTRY_POINT_RENAME(ucol_setText) #define ucol_setText U_ICU_ENTRY_POINT_RENAME(ucol_setText)
#define ucol_setVariableTop U_ICU_ENTRY_POINT_RENAME(ucol_setVariableTop) #define ucol_setVariableTop U_ICU_ENTRY_POINT_RENAME(ucol_setVariableTop)
#define ucol_strcoll U_ICU_ENTRY_POINT_RENAME(ucol_strcoll) #define ucol_strcoll U_ICU_ENTRY_POINT_RENAME(ucol_strcoll)
#define ucol_strcollIter U_ICU_ENTRY_POINT_RENAME(ucol_strcollIter) #define ucol_strcollIter U_ICU_ENTRY_POINT_RENAME(ucol_strcollIter)
#define ucol_swap U_ICU_ENTRY_POINT_RENAME(ucol_swap) #define ucol_swap U_ICU_ENTRY_POINT_RENAME(ucol_swap)
#define ucol_swapBinary U_ICU_ENTRY_POINT_RENAME(ucol_swapBinary) #define ucol_swapBinary U_ICU_ENTRY_POINT_RENAME(ucol_swapBinary)
#define ucol_swapInverseUCA U_ICU_ENTRY_POINT_RENAME(ucol_swapInverseUCA) #define ucol_swapInverseUCA U_ICU_ENTRY_POINT_RENAME(ucol_swapInverseUCA)
#define ucol_tertiaryOrder U_ICU_ENTRY_POINT_RENAME(ucol_tertiaryOrder) #define ucol_tertiaryOrder U_ICU_ENTRY_POINT_RENAME(ucol_tertiaryOrder)
#define ucol_tok_assembleTokenList U_ICU_ENTRY_POINT_RENAME(ucol_tok_assemb leTokenList) #define ucol_tok_assembleTokenList U_ICU_ENTRY_POINT_RENAME(ucol_tok_assemb leTokenList)
#define ucol_tok_closeTokenList U_ICU_ENTRY_POINT_RENAME(ucol_tok_closeToke nList) #define ucol_tok_closeTokenList U_ICU_ENTRY_POINT_RENAME(ucol_tok_closeToke nList)
#define ucol_tok_getNextArgument U_ICU_ENTRY_POINT_RENAME(ucol_tok_getNextA rgument) #define ucol_tok_getNextArgument U_ICU_ENTRY_POINT_RENAME(ucol_tok_getNextA rgument)
#define ucol_tok_getRulesFromBundle U_ICU_ENTRY_POINT_RENAME(ucol_tok_getRu lesFromBundle)
#define ucol_tok_initTokenList U_ICU_ENTRY_POINT_RENAME(ucol_tok_initTokenL ist) #define ucol_tok_initTokenList U_ICU_ENTRY_POINT_RENAME(ucol_tok_initTokenL ist)
#define ucol_tok_parseNextToken U_ICU_ENTRY_POINT_RENAME(ucol_tok_parseNext Token) #define ucol_tok_parseNextToken U_ICU_ENTRY_POINT_RENAME(ucol_tok_parseNext Token)
#define ucol_updateInternalState U_ICU_ENTRY_POINT_RENAME(ucol_updateIntern alState) #define ucol_updateInternalState U_ICU_ENTRY_POINT_RENAME(ucol_updateIntern alState)
#define ucsdet_close U_ICU_ENTRY_POINT_RENAME(ucsdet_close) #define ucsdet_close U_ICU_ENTRY_POINT_RENAME(ucsdet_close)
#define ucsdet_detect U_ICU_ENTRY_POINT_RENAME(ucsdet_detect) #define ucsdet_detect U_ICU_ENTRY_POINT_RENAME(ucsdet_detect)
#define ucsdet_detectAll U_ICU_ENTRY_POINT_RENAME(ucsdet_detectAll) #define ucsdet_detectAll U_ICU_ENTRY_POINT_RENAME(ucsdet_detectAll)
#define ucsdet_enableInputFilter U_ICU_ENTRY_POINT_RENAME(ucsdet_enableInpu tFilter) #define ucsdet_enableInputFilter U_ICU_ENTRY_POINT_RENAME(ucsdet_enableInpu tFilter)
#define ucsdet_getAllDetectableCharsets U_ICU_ENTRY_POINT_RENAME(ucsdet_get AllDetectableCharsets) #define ucsdet_getAllDetectableCharsets U_ICU_ENTRY_POINT_RENAME(ucsdet_get AllDetectableCharsets)
#define ucsdet_getConfidence U_ICU_ENTRY_POINT_RENAME(ucsdet_getConfidence) #define ucsdet_getConfidence U_ICU_ENTRY_POINT_RENAME(ucsdet_getConfidence)
#define ucsdet_getLanguage U_ICU_ENTRY_POINT_RENAME(ucsdet_getLanguage) #define ucsdet_getLanguage U_ICU_ENTRY_POINT_RENAME(ucsdet_getLanguage)
skipping to change at line 1108 skipping to change at line 1118
#define unorm_openIter U_ICU_ENTRY_POINT_RENAME(unorm_openIter) #define unorm_openIter U_ICU_ENTRY_POINT_RENAME(unorm_openIter)
#define unorm_previous U_ICU_ENTRY_POINT_RENAME(unorm_previous) #define unorm_previous U_ICU_ENTRY_POINT_RENAME(unorm_previous)
#define unorm_quickCheck U_ICU_ENTRY_POINT_RENAME(unorm_quickCheck) #define unorm_quickCheck U_ICU_ENTRY_POINT_RENAME(unorm_quickCheck)
#define unorm_quickCheckWithOptions U_ICU_ENTRY_POINT_RENAME(unorm_quickChe ckWithOptions) #define unorm_quickCheckWithOptions U_ICU_ENTRY_POINT_RENAME(unorm_quickChe ckWithOptions)
#define unorm_setIter U_ICU_ENTRY_POINT_RENAME(unorm_setIter) #define unorm_setIter U_ICU_ENTRY_POINT_RENAME(unorm_setIter)
#define unum_applyPattern U_ICU_ENTRY_POINT_RENAME(unum_applyPattern) #define unum_applyPattern U_ICU_ENTRY_POINT_RENAME(unum_applyPattern)
#define unum_clone U_ICU_ENTRY_POINT_RENAME(unum_clone) #define unum_clone U_ICU_ENTRY_POINT_RENAME(unum_clone)
#define unum_close U_ICU_ENTRY_POINT_RENAME(unum_close) #define unum_close U_ICU_ENTRY_POINT_RENAME(unum_close)
#define unum_countAvailable U_ICU_ENTRY_POINT_RENAME(unum_countAvailable) #define unum_countAvailable U_ICU_ENTRY_POINT_RENAME(unum_countAvailable)
#define unum_format U_ICU_ENTRY_POINT_RENAME(unum_format) #define unum_format U_ICU_ENTRY_POINT_RENAME(unum_format)
#define unum_formatDecimal U_ICU_ENTRY_POINT_RENAME(unum_formatDecimal)
#define unum_formatDouble U_ICU_ENTRY_POINT_RENAME(unum_formatDouble) #define unum_formatDouble U_ICU_ENTRY_POINT_RENAME(unum_formatDouble)
#define unum_formatDoubleCurrency U_ICU_ENTRY_POINT_RENAME(unum_formatDoubl eCurrency) #define unum_formatDoubleCurrency U_ICU_ENTRY_POINT_RENAME(unum_formatDoubl eCurrency)
#define unum_formatInt64 U_ICU_ENTRY_POINT_RENAME(unum_formatInt64) #define unum_formatInt64 U_ICU_ENTRY_POINT_RENAME(unum_formatInt64)
#define unum_getAttribute U_ICU_ENTRY_POINT_RENAME(unum_getAttribute) #define unum_getAttribute U_ICU_ENTRY_POINT_RENAME(unum_getAttribute)
#define unum_getAvailable U_ICU_ENTRY_POINT_RENAME(unum_getAvailable) #define unum_getAvailable U_ICU_ENTRY_POINT_RENAME(unum_getAvailable)
#define unum_getDoubleAttribute U_ICU_ENTRY_POINT_RENAME(unum_getDoubleAttr ibute) #define unum_getDoubleAttribute U_ICU_ENTRY_POINT_RENAME(unum_getDoubleAttr ibute)
#define unum_getLocaleByType U_ICU_ENTRY_POINT_RENAME(unum_getLocaleByType) #define unum_getLocaleByType U_ICU_ENTRY_POINT_RENAME(unum_getLocaleByType)
#define unum_getSymbol U_ICU_ENTRY_POINT_RENAME(unum_getSymbol) #define unum_getSymbol U_ICU_ENTRY_POINT_RENAME(unum_getSymbol)
#define unum_getTextAttribute U_ICU_ENTRY_POINT_RENAME(unum_getTextAttribut e) #define unum_getTextAttribute U_ICU_ENTRY_POINT_RENAME(unum_getTextAttribut e)
#define unum_open U_ICU_ENTRY_POINT_RENAME(unum_open) #define unum_open U_ICU_ENTRY_POINT_RENAME(unum_open)
#define unum_parse U_ICU_ENTRY_POINT_RENAME(unum_parse) #define unum_parse U_ICU_ENTRY_POINT_RENAME(unum_parse)
#define unum_parseDecimal U_ICU_ENTRY_POINT_RENAME(unum_parseDecimal)
#define unum_parseDouble U_ICU_ENTRY_POINT_RENAME(unum_parseDouble) #define unum_parseDouble U_ICU_ENTRY_POINT_RENAME(unum_parseDouble)
#define unum_parseDoubleCurrency U_ICU_ENTRY_POINT_RENAME(unum_parseDoubleC urrency) #define unum_parseDoubleCurrency U_ICU_ENTRY_POINT_RENAME(unum_parseDoubleC urrency)
#define unum_parseInt64 U_ICU_ENTRY_POINT_RENAME(unum_parseInt64) #define unum_parseInt64 U_ICU_ENTRY_POINT_RENAME(unum_parseInt64)
#define unum_setAttribute U_ICU_ENTRY_POINT_RENAME(unum_setAttribute) #define unum_setAttribute U_ICU_ENTRY_POINT_RENAME(unum_setAttribute)
#define unum_setDoubleAttribute U_ICU_ENTRY_POINT_RENAME(unum_setDoubleAttr ibute) #define unum_setDoubleAttribute U_ICU_ENTRY_POINT_RENAME(unum_setDoubleAttr ibute)
#define unum_setSymbol U_ICU_ENTRY_POINT_RENAME(unum_setSymbol) #define unum_setSymbol U_ICU_ENTRY_POINT_RENAME(unum_setSymbol)
#define unum_setTextAttribute U_ICU_ENTRY_POINT_RENAME(unum_setTextAttribut e) #define unum_setTextAttribute U_ICU_ENTRY_POINT_RENAME(unum_setTextAttribut e)
#define unum_toPattern U_ICU_ENTRY_POINT_RENAME(unum_toPattern) #define unum_toPattern U_ICU_ENTRY_POINT_RENAME(unum_toPattern)
#define uplug_closeLibrary U_ICU_ENTRY_POINT_RENAME(uplug_closeLibrary) #define uplug_closeLibrary U_ICU_ENTRY_POINT_RENAME(uplug_closeLibrary)
#define uplug_findLibrary U_ICU_ENTRY_POINT_RENAME(uplug_findLibrary) #define uplug_findLibrary U_ICU_ENTRY_POINT_RENAME(uplug_findLibrary)
skipping to change at line 1337 skipping to change at line 1349
#define uprv_uca_initImplicitConstants U_ICU_ENTRY_POINT_RENAME(uprv_uca_in itImplicitConstants) #define uprv_uca_initImplicitConstants U_ICU_ENTRY_POINT_RENAME(uprv_uca_in itImplicitConstants)
#define uprv_uca_initTempTable U_ICU_ENTRY_POINT_RENAME(uprv_uca_initTempTa ble) #define uprv_uca_initTempTable U_ICU_ENTRY_POINT_RENAME(uprv_uca_initTempTa ble)
#define uprv_uint16Comparator U_ICU_ENTRY_POINT_RENAME(uprv_uint16Comparato r) #define uprv_uint16Comparator U_ICU_ENTRY_POINT_RENAME(uprv_uint16Comparato r)
#define uprv_uint32Comparator U_ICU_ENTRY_POINT_RENAME(uprv_uint32Comparato r) #define uprv_uint32Comparator U_ICU_ENTRY_POINT_RENAME(uprv_uint32Comparato r)
#define uprv_unmapFile U_ICU_ENTRY_POINT_RENAME(uprv_unmapFile) #define uprv_unmapFile U_ICU_ENTRY_POINT_RENAME(uprv_unmapFile)
#define upvec_cloneArray U_ICU_ENTRY_POINT_RENAME(upvec_cloneArray) #define upvec_cloneArray U_ICU_ENTRY_POINT_RENAME(upvec_cloneArray)
#define upvec_close U_ICU_ENTRY_POINT_RENAME(upvec_close) #define upvec_close U_ICU_ENTRY_POINT_RENAME(upvec_close)
#define upvec_compact U_ICU_ENTRY_POINT_RENAME(upvec_compact) #define upvec_compact U_ICU_ENTRY_POINT_RENAME(upvec_compact)
#define upvec_compactToUTrie2Handler U_ICU_ENTRY_POINT_RENAME(upvec_compact ToUTrie2Handler) #define upvec_compactToUTrie2Handler U_ICU_ENTRY_POINT_RENAME(upvec_compact ToUTrie2Handler)
#define upvec_compactToUTrie2WithRowIndexes U_ICU_ENTRY_POINT_RENAME(upvec_ compactToUTrie2WithRowIndexes) #define upvec_compactToUTrie2WithRowIndexes U_ICU_ENTRY_POINT_RENAME(upvec_ compactToUTrie2WithRowIndexes)
#define upvec_compactToUTrieHandler U_ICU_ENTRY_POINT_RENAME(upvec_compactT oUTrieHandler)
#define upvec_getArray U_ICU_ENTRY_POINT_RENAME(upvec_getArray) #define upvec_getArray U_ICU_ENTRY_POINT_RENAME(upvec_getArray)
#define upvec_getRow U_ICU_ENTRY_POINT_RENAME(upvec_getRow) #define upvec_getRow U_ICU_ENTRY_POINT_RENAME(upvec_getRow)
#define upvec_getValue U_ICU_ENTRY_POINT_RENAME(upvec_getValue) #define upvec_getValue U_ICU_ENTRY_POINT_RENAME(upvec_getValue)
#define upvec_open U_ICU_ENTRY_POINT_RENAME(upvec_open) #define upvec_open U_ICU_ENTRY_POINT_RENAME(upvec_open)
#define upvec_setValue U_ICU_ENTRY_POINT_RENAME(upvec_setValue) #define upvec_setValue U_ICU_ENTRY_POINT_RENAME(upvec_setValue)
#define uregex_appendReplacement U_ICU_ENTRY_POINT_RENAME(uregex_appendRepl acement) #define uregex_appendReplacement U_ICU_ENTRY_POINT_RENAME(uregex_appendRepl acement)
#define uregex_appendReplacementUText U_ICU_ENTRY_POINT_RENAME(uregex_appen dReplacementUText) #define uregex_appendReplacementUText U_ICU_ENTRY_POINT_RENAME(uregex_appen dReplacementUText)
#define uregex_appendTail U_ICU_ENTRY_POINT_RENAME(uregex_appendTail) #define uregex_appendTail U_ICU_ENTRY_POINT_RENAME(uregex_appendTail)
#define uregex_appendTailUText U_ICU_ENTRY_POINT_RENAME(uregex_appendTailUT ext) #define uregex_appendTailUText U_ICU_ENTRY_POINT_RENAME(uregex_appendTailUT ext)
#define uregex_clone U_ICU_ENTRY_POINT_RENAME(uregex_clone) #define uregex_clone U_ICU_ENTRY_POINT_RENAME(uregex_clone)
skipping to change at line 2217 skipping to change at line 2228
#define ValueRuns U_ICU_ENTRY_POINT_RENAME(ValueRuns) #define ValueRuns U_ICU_ENTRY_POINT_RENAME(ValueRuns)
#define ZSFCache U_ICU_ENTRY_POINT_RENAME(ZSFCache) #define ZSFCache U_ICU_ENTRY_POINT_RENAME(ZSFCache)
#define ZSFCacheEntry U_ICU_ENTRY_POINT_RENAME(ZSFCacheEntry) #define ZSFCacheEntry U_ICU_ENTRY_POINT_RENAME(ZSFCacheEntry)
#define ZSFStringPool U_ICU_ENTRY_POINT_RENAME(ZSFStringPool) #define ZSFStringPool U_ICU_ENTRY_POINT_RENAME(ZSFStringPool)
#define ZSFStringPoolChunk U_ICU_ENTRY_POINT_RENAME(ZSFStringPoolChunk) #define ZSFStringPoolChunk U_ICU_ENTRY_POINT_RENAME(ZSFStringPoolChunk)
#define ZoneMeta U_ICU_ENTRY_POINT_RENAME(ZoneMeta) #define ZoneMeta U_ICU_ENTRY_POINT_RENAME(ZoneMeta)
#define ZoneStringFormat U_ICU_ENTRY_POINT_RENAME(ZoneStringFormat) #define ZoneStringFormat U_ICU_ENTRY_POINT_RENAME(ZoneStringFormat)
#define ZoneStringInfo U_ICU_ENTRY_POINT_RENAME(ZoneStringInfo) #define ZoneStringInfo U_ICU_ENTRY_POINT_RENAME(ZoneStringInfo)
#define ZoneStringSearchResultHandler U_ICU_ENTRY_POINT_RENAME(ZoneStringSe archResultHandler) #define ZoneStringSearchResultHandler U_ICU_ENTRY_POINT_RENAME(ZoneStringSe archResultHandler)
#define ZoneStrings U_ICU_ENTRY_POINT_RENAME(ZoneStrings) #define ZoneStrings U_ICU_ENTRY_POINT_RENAME(ZoneStrings)
#define collIterate U_ICU_ENTRY_POINT_RENAME(collIterate)
#define locale_set_default_internal U_ICU_ENTRY_POINT_RENAME(locale_set_def ault_internal) #define locale_set_default_internal U_ICU_ENTRY_POINT_RENAME(locale_set_def ault_internal)
#define util64_fromDouble U_ICU_ENTRY_POINT_RENAME(util64_fromDouble) #define util64_fromDouble U_ICU_ENTRY_POINT_RENAME(util64_fromDouble)
#define util64_pow U_ICU_ENTRY_POINT_RENAME(util64_pow) #define util64_pow U_ICU_ENTRY_POINT_RENAME(util64_pow)
#define util64_tou U_ICU_ENTRY_POINT_RENAME(util64_tou) #define util64_tou U_ICU_ENTRY_POINT_RENAME(util64_tou)
#endif #endif
#endif #endif
#endif #endif
 End of changes. 13 change blocks. 
1 lines changed or deleted 14 lines changed or added


 ures.h   ures.h 
/* /*
********************************************************************** **********************************************************************
* Copyright (C) 1997-2009, International Business Machines * Copyright (C) 1997-2010, International Business Machines
* Corporation and others. All Rights Reserved. * Corporation and others. All Rights Reserved.
********************************************************************** **********************************************************************
* *
* File URES.H (formerly CRESBUND.H) * File URES.H (formerly CRESBUND.H)
* *
* Modification History: * Modification History:
* *
* Date Name Description * Date Name Description
* 04/01/97 aliu Creation. * 04/01/97 aliu Creation.
* 02/22/99 damiba overhaul. * 02/22/99 damiba overhaul.
skipping to change at line 252 skipping to change at line 252
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUResourceBundlePointer * \class LocalUResourceBundlePointer
* "Smart pointer" class, closes a UResourceBundle via ures_close(). * "Smart pointer" class, closes a UResourceBundle via ures_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUResourceBundlePointer, UResourceBundle, u res_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUResourceBundlePointer, UResourceBundle, u res_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Return the version number associated with this ResourceBundle as a strin g. Please * Return the version number associated with this ResourceBundle as a strin g. Please
* use ures_getVersion as this function is going to be deprecated. * use ures_getVersion as this function is going to be deprecated.
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 usearch.h   usearch.h 
skipping to change at line 167 skipping to change at line 167
/** Option for overlapping matches */ /** Option for overlapping matches */
USEARCH_OVERLAP, USEARCH_OVERLAP,
/** /**
* Option for canonical matches. option 1 in header documentation. * Option for canonical matches. option 1 in header documentation.
* The default value will be USEARCH_OFF * The default value will be USEARCH_OFF
*/ */
USEARCH_CANONICAL_MATCH, USEARCH_CANONICAL_MATCH,
/** /**
* Option to control how collation elements are compared. * Option to control how collation elements are compared.
* The default value will be USEARCH_STANDARD_ELEMENT_COMPARISON. * The default value will be USEARCH_STANDARD_ELEMENT_COMPARISON.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
USEARCH_ELEMENT_COMPARISON, USEARCH_ELEMENT_COMPARISON,
USEARCH_ATTRIBUTE_COUNT USEARCH_ATTRIBUTE_COUNT
} USearchAttribute; } USearchAttribute;
/** /**
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
typedef enum { typedef enum {
/** Default value for any USearchAttribute */ /** Default value for any USearchAttribute */
USEARCH_DEFAULT = -1, USEARCH_DEFAULT = -1,
/** Value for USEARCH_OVERLAP and USEARCH_CANONICAL_MATCH */ /** Value for USEARCH_OVERLAP and USEARCH_CANONICAL_MATCH */
USEARCH_OFF, USEARCH_OFF,
/** Value for USEARCH_OVERLAP and USEARCH_CANONICAL_MATCH */ /** Value for USEARCH_OVERLAP and USEARCH_CANONICAL_MATCH */
USEARCH_ON, USEARCH_ON,
/** /**
* Value (default) for USEARCH_ELEMENT_COMPARISON; * Value (default) for USEARCH_ELEMENT_COMPARISON;
* standard collation element comparison at the specified collator * standard collation element comparison at the specified collator
* strength. * strength.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
USEARCH_STANDARD_ELEMENT_COMPARISON, USEARCH_STANDARD_ELEMENT_COMPARISON,
/** /**
* Value for USEARCH_ELEMENT_COMPARISON; * Value for USEARCH_ELEMENT_COMPARISON;
* collation element comparison is modified to effectively provide * collation element comparison is modified to effectively provide
* behavior between the specified strength and strength - 1. Collation * behavior between the specified strength and strength - 1. Collation
* elements in the pattern that have the base weight for the specified * elements in the pattern that have the base weight for the specified
* strength are treated as "wildcards" that match an element with any * strength are treated as "wildcards" that match an element with any
* other weight at that collation level in the searched text. For * other weight at that collation level in the searched text. For
* example, with a secondary-strength English collator, a plain 'e' in * example, with a secondary-strength English collator, a plain 'e' in
* the pattern will match a plain e or an e with any diacritic in the * the pattern will match a plain e or an e with any diacritic in the
* searched text, but an e with diacritic in the pattern will only * searched text, but an e with diacritic in the pattern will only
* match an e with the same diacritic in the searched text. * match an e with the same diacritic in the searched text.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
USEARCH_PATTERN_BASE_WEIGHT_IS_WILDCARD, USEARCH_PATTERN_BASE_WEIGHT_IS_WILDCARD,
/** /**
* Value for USEARCH_ELEMENT_COMPARISON. * Value for USEARCH_ELEMENT_COMPARISON.
* collation element comparison is modified to effectively provide * collation element comparison is modified to effectively provide
* behavior between the specified strength and strength - 1. Collation * behavior between the specified strength and strength - 1. Collation
* elements in either the pattern or the searched text that have the * elements in either the pattern or the searched text that have the
* base weight for the specified strength are treated as "wildcards" * base weight for the specified strength are treated as "wildcards"
* that match an element with any other weight at that collation level. * that match an element with any other weight at that collation level.
* For example, with a secondary-strength English collator, a plain 'e' * For example, with a secondary-strength English collator, a plain 'e'
* in the pattern will match a plain e or an e with any diacritic in th e * in the pattern will match a plain e or an e with any diacritic in th e
* searched text, but an e with diacritic in the pattern will only * searched text, but an e with diacritic in the pattern will only
* match an e with the same diacritic or a plain e in the searched text . * match an e with the same diacritic or a plain e in the searched text .
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
USEARCH_ANY_BASE_WEIGHT_IS_WILDCARD, USEARCH_ANY_BASE_WEIGHT_IS_WILDCARD,
USEARCH_ATTRIBUTE_VALUE_COUNT USEARCH_ATTRIBUTE_VALUE_COUNT
} USearchAttributeValue; } USearchAttributeValue;
/* open and close ------------------------------------------------------ */ /* open and close ------------------------------------------------------ */
/** /**
* Creating a search iterator data struct using the argument locale language * Creating a search iterator data struct using the argument locale language
skipping to change at line 307 skipping to change at line 307
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUStringSearchPointer * \class LocalUStringSearchPointer
* "Smart pointer" class, closes a UStringSearch via usearch_close(). * "Smart pointer" class, closes a UStringSearch via usearch_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUStringSearchPointer, UStringSearch, usear ch_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUStringSearchPointer, UStringSearch, usear ch_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/* get and set methods -------------------------------------------------- * / /* get and set methods -------------------------------------------------- * /
/** /**
 End of changes. 5 change blocks. 
5 lines changed or deleted 5 lines changed or added


 uset.h   uset.h 
skipping to change at line 313 skipping to change at line 313
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUSetPointer * \class LocalUSetPointer
* "Smart pointer" class, closes a USet via uset_close(). * "Smart pointer" class, closes a USet via uset_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUSetPointer, USet, uset_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUSetPointer, USet, uset_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Returns a copy of this object. * Returns a copy of this object.
* If this set is frozen, then the clone will be frozen as well. * If this set is frozen, then the clone will be frozen as well.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 ushape.h   ushape.h 
skipping to change at line 116 skipping to change at line 116
* Memory option: allow the result to have a different length than the sour ce. * Memory option: allow the result to have a different length than the sour ce.
* Affects: LamAlef options * Affects: LamAlef options
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
#define U_SHAPE_LENGTH_GROW_SHRINK 0 #define U_SHAPE_LENGTH_GROW_SHRINK 0
/** /**
* Memory option: allow the result to have a different length than the sour ce. * Memory option: allow the result to have a different length than the sour ce.
* Affects: LamAlef options * Affects: LamAlef options
* This option is an alias to U_SHAPE_LENGTH_GROW_SHRINK * This option is an alias to U_SHAPE_LENGTH_GROW_SHRINK
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_LAMALEF_RESIZE 0 #define U_SHAPE_LAMALEF_RESIZE 0
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* If more room is necessary, then try to consume spaces next to modified c haracters. * If more room is necessary, then try to consume spaces next to modified c haracters.
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
#define U_SHAPE_LENGTH_FIXED_SPACES_NEAR 1 #define U_SHAPE_LENGTH_FIXED_SPACES_NEAR 1
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* If more room is necessary, then try to consume spaces next to modified c haracters. * If more room is necessary, then try to consume spaces next to modified c haracters.
* Affects: LamAlef options * Affects: LamAlef options
* This option is an alias to U_SHAPE_LENGTH_FIXED_SPACES_NEAR * This option is an alias to U_SHAPE_LENGTH_FIXED_SPACES_NEAR
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_LAMALEF_NEAR 1 #define U_SHAPE_LAMALEF_NEAR 1
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* If more room is necessary, then try to consume spaces at the end of the text. * If more room is necessary, then try to consume spaces at the end of the text.
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
#define U_SHAPE_LENGTH_FIXED_SPACES_AT_END 2 #define U_SHAPE_LENGTH_FIXED_SPACES_AT_END 2
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* If more room is necessary, then try to consume spaces at the end of the text. * If more room is necessary, then try to consume spaces at the end of the text.
* Affects: LamAlef options * Affects: LamAlef options
* This option is an alias to U_SHAPE_LENGTH_FIXED_SPACES_AT_END * This option is an alias to U_SHAPE_LENGTH_FIXED_SPACES_AT_END
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_LAMALEF_END 2 #define U_SHAPE_LAMALEF_END 2
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* If more room is necessary, then try to consume spaces at the beginning o f the text. * If more room is necessary, then try to consume spaces at the beginning o f the text.
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
#define U_SHAPE_LENGTH_FIXED_SPACES_AT_BEGINNING 3 #define U_SHAPE_LENGTH_FIXED_SPACES_AT_BEGINNING 3
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* If more room is necessary, then try to consume spaces at the beginning o f the text. * If more room is necessary, then try to consume spaces at the beginning o f the text.
* Affects: LamAlef options * Affects: LamAlef options
* This option is an alias to U_SHAPE_LENGTH_FIXED_SPACES_AT_BEGINNING * This option is an alias to U_SHAPE_LENGTH_FIXED_SPACES_AT_BEGINNING
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_LAMALEF_BEGIN 3 #define U_SHAPE_LAMALEF_BEGIN 3
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* Shaping Mode: For each LAMALEF character found, expand LAMALEF using spa ce at end. * Shaping Mode: For each LAMALEF character found, expand LAMALEF using spa ce at end.
* If there is no space at end, use spaces at beginning of th e buffer. If there * If there is no space at end, use spaces at beginning of th e buffer. If there
* is no space at beginning of the buffer, use spaces at the near (i.e. the space * is no space at beginning of the buffer, use spaces at the near (i.e. the space
* after the LAMALEF character). * after the LAMALEF character).
* If there are no spaces found, an error U_NO_SPACE_AVAILABL E (as defined in utypes.h) * If there are no spaces found, an error U_NO_SPACE_AVAILABL E (as defined in utypes.h)
* will be set in pErrorCode * will be set in pErrorCode
* *
* Deshaping Mode: Perform the same function as the flag equals U_SHAPE_LAM ALEF_END. * Deshaping Mode: Perform the same function as the flag equals U_SHAPE_LAM ALEF_END.
* Affects: LamAlef options * Affects: LamAlef options
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_LAMALEF_AUTO 0x10000 #define U_SHAPE_LAMALEF_AUTO 0x10000
/** Bit mask for memory options. @stable ICU 2.0 */ /** Bit mask for memory options. @stable ICU 2.0 */
#define U_SHAPE_LENGTH_MASK 0x10003 /* Changed old val ue 3 */ #define U_SHAPE_LENGTH_MASK 0x10003 /* Changed old val ue 3 */
/** /**
* Bit mask for LamAlef memory options. * Bit mask for LamAlef memory options.
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_LAMALEF_MASK 0x10003 /* updated */ #define U_SHAPE_LAMALEF_MASK 0x10003 /* updated */
/** Direction indicator: the source is in logical (keyboard) order. @stable ICU 2.0 */ /** Direction indicator: the source is in logical (keyboard) order. @stable ICU 2.0 */
#define U_SHAPE_TEXT_DIRECTION_LOGICAL 0 #define U_SHAPE_TEXT_DIRECTION_LOGICAL 0
/** /**
* Direction indicator: * Direction indicator:
* the source is in visual RTL order, * the source is in visual RTL order,
* the rightmost displayed character stored first. * the rightmost displayed character stored first.
* This option is an alias to U_SHAPE_TEXT_DIRECTION_LOGICAL * This option is an alias to U_SHAPE_TEXT_DIRECTION_LOGICAL
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_TEXT_DIRECTION_VISUAL_RTL 0 #define U_SHAPE_TEXT_DIRECTION_VISUAL_RTL 0
/** /**
* Direction indicator: * Direction indicator:
* the source is in visual LTR order, * the source is in visual LTR order,
* the leftmost displayed character stored first. * the leftmost displayed character stored first.
* @stable ICU 2.0 * @stable ICU 2.0
*/ */
#define U_SHAPE_TEXT_DIRECTION_VISUAL_LTR 4 #define U_SHAPE_TEXT_DIRECTION_VISUAL_LTR 4
skipping to change at line 336 skipping to change at line 336
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* Shaping mode: The SEEN family character will expand into two characters using space near * Shaping mode: The SEEN family character will expand into two characters using space near
* the SEEN family character(i.e. the space after the charact er). * the SEEN family character(i.e. the space after the charact er).
* If there are no spaces found, an error U_NO_SPACE_AVAILABL E (as defined in utypes.h) * If there are no spaces found, an error U_NO_SPACE_AVAILABL E (as defined in utypes.h)
* will be set in pErrorCode * will be set in pErrorCode
* *
* De-shaping mode: Any Seen character followed by Tail character will be * De-shaping mode: Any Seen character followed by Tail character will be
* replaced by one cell Seen and a space will replace the Tail. * replaced by one cell Seen and a space will replace the Tail.
* Affects: Seen options * Affects: Seen options
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_SEEN_TWOCELL_NEAR 0x200000 #define U_SHAPE_SEEN_TWOCELL_NEAR 0x200000
/** /**
* Bit mask for Seen memory options. * Bit mask for Seen memory options.
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_SEEN_MASK 0x700000 #define U_SHAPE_SEEN_MASK 0x700000
/* YehHamza option */ /* YehHamza option */
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* Shaping mode: The YEHHAMZA character will expand into two characters usi ng space near it * Shaping mode: The YEHHAMZA character will expand into two characters usi ng space near it
* (i.e. the space after the character * (i.e. the space after the character
* If there are no spaces found, an error U_NO_SPACE_AVAILABL E (as defined in utypes.h) * If there are no spaces found, an error U_NO_SPACE_AVAILABL E (as defined in utypes.h)
* will be set in pErrorCode * will be set in pErrorCode
* *
* De-shaping mode: Any Yeh (final or isolated) character followed by Hamza character will be * De-shaping mode: Any Yeh (final or isolated) character followed by Hamza character will be
* replaced by one cell YehHamza and space will replace th e Hamza. * replaced by one cell YehHamza and space will replace th e Hamza.
* Affects: YehHamza options * Affects: YehHamza options
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_YEHHAMZA_TWOCELL_NEAR 0x1000000 #define U_SHAPE_YEHHAMZA_TWOCELL_NEAR 0x1000000
/** /**
* Bit mask for YehHamza memory options. * Bit mask for YehHamza memory options.
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_YEHHAMZA_MASK 0x3800000 #define U_SHAPE_YEHHAMZA_MASK 0x3800000
/* New Tashkeel options */ /* New Tashkeel options */
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* Shaping mode: Tashkeel characters will be replaced by spaces. * Shaping mode: Tashkeel characters will be replaced by spaces.
* Spaces will be placed at beginning of the buffer * Spaces will be placed at beginning of the buffer
* *
* De-shaping mode: N/A * De-shaping mode: N/A
* Affects: Tashkeel options * Affects: Tashkeel options
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_TASHKEEL_BEGIN 0x40000 #define U_SHAPE_TASHKEEL_BEGIN 0x40000
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* Shaping mode: Tashkeel characters will be replaced by spaces. * Shaping mode: Tashkeel characters will be replaced by spaces.
* Spaces will be placed at end of the buffer * Spaces will be placed at end of the buffer
* *
* De-shaping mode: N/A * De-shaping mode: N/A
* Affects: Tashkeel options * Affects: Tashkeel options
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_TASHKEEL_END 0x60000 #define U_SHAPE_TASHKEEL_END 0x60000
/** /**
* Memory option: allow the result to have a different length than the sour ce. * Memory option: allow the result to have a different length than the sour ce.
* Shaping mode: Tashkeel characters will be removed, buffer length will sh rink. * Shaping mode: Tashkeel characters will be removed, buffer length will sh rink.
* De-shaping mode: N/A * De-shaping mode: N/A
* *
* Affect: Tashkeel options * Affect: Tashkeel options
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_TASHKEEL_RESIZE 0x80000 #define U_SHAPE_TASHKEEL_RESIZE 0x80000
/** /**
* Memory option: the result must have the same length as the source. * Memory option: the result must have the same length as the source.
* Shaping mode: Tashkeel characters will be replaced by Tatweel if it is c onnected to adjacent * Shaping mode: Tashkeel characters will be replaced by Tatweel if it is c onnected to adjacent
* characters (i.e. shaped on Tatweel) or replaced by space i f it is not connected. * characters (i.e. shaped on Tatweel) or replaced by space i f it is not connected.
* *
* De-shaping mode: N/A * De-shaping mode: N/A
* Affects: YehHamza options * Affects: YehHamza options
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_TASHKEEL_REPLACE_BY_TATWEEL 0xC0000 #define U_SHAPE_TASHKEEL_REPLACE_BY_TATWEEL 0xC0000
/** /**
* Bit mask for Tashkeel replacement with Space or Tatweel memory options. * Bit mask for Tashkeel replacement with Space or Tatweel memory options.
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_TASHKEEL_MASK 0xE0000 #define U_SHAPE_TASHKEEL_MASK 0xE0000
/* Space location Control options */ /* Space location Control options */
/** /**
* This option affect the meaning of BEGIN and END options. if this option is not used the default * This option affect the meaning of BEGIN and END options. if this option is not used the default
* for BEGIN and END will be as following: * for BEGIN and END will be as following:
* The Default (for both Visual LTR, Visual RTL and Logical Text) * The Default (for both Visual LTR, Visual RTL and Logical Text)
* 1. BEGIN always refers to the start address of physical memory . * 1. BEGIN always refers to the start address of physical memory .
* 2. END always refers to the end address of physical memory. * 2. END always refers to the end address of physical memory.
skipping to change at line 436 skipping to change at line 436
* *
* The effect on BEGIN and END Memory Options will be as following: * The effect on BEGIN and END Memory Options will be as following:
* A. BEGIN For Visual LTR text: This will be the beginning (right side) of the visual text( * A. BEGIN For Visual LTR text: This will be the beginning (right side) of the visual text(
* corresponding to the physical memory address end for Visual LTR te xt, Same as END in * corresponding to the physical memory address end for Visual LTR te xt, Same as END in
* default behavior) * default behavior)
* B. BEGIN For Logical text: Same as BEGIN in default behavior. * B. BEGIN For Logical text: Same as BEGIN in default behavior.
* C. END For Visual LTR text: This will be the end (left side) of the v isual text (corresponding * C. END For Visual LTR text: This will be the end (left side) of the v isual text (corresponding
* to the physical memory address beginning for Visual LTR text, Same as BEGIN in default behavior. * to the physical memory address beginning for Visual LTR text, Same as BEGIN in default behavior.
* D. END For Logical text: Same as END in default behavior). * D. END For Logical text: Same as END in default behavior).
* Affects: All LamAlef BEGIN, END and AUTO options. * Affects: All LamAlef BEGIN, END and AUTO options.
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_SPACES_RELATIVE_TO_TEXT_BEGIN_END 0x4000000 #define U_SHAPE_SPACES_RELATIVE_TO_TEXT_BEGIN_END 0x4000000
/** /**
* Bit mask for swapping BEGIN and END for Visual LTR text * Bit mask for swapping BEGIN and END for Visual LTR text
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_SHAPE_SPACES_RELATIVE_TO_TEXT_MASK 0x4000000 #define U_SHAPE_SPACES_RELATIVE_TO_TEXT_MASK 0x4000000
/** /**
* If this option is used, shaping will use the new Unicode code point for TAIL (i.e. 0xFE73). * If this option is used, shaping will use the new Unicode code point for TAIL (i.e. 0xFE73).
* If this option is not specified (Default), old unofficial Unicode TAIL c ode point is used (i.e. 0x200B) * If this option is not specified (Default), old unofficial Unicode TAIL c ode point is used (i.e. 0x200B)
* De-shaping will not use this option as it will always search for both th e new Unicode code point for the * De-shaping will not use this option as it will always search for both th e new Unicode code point for the
* TAIL (i.e. 0xFE73) or the old unofficial Unicode TAIL code point (i.e. 0 x200B) and de-shape the * TAIL (i.e. 0xFE73) or the old unofficial Unicode TAIL code point (i.e. 0 x200B) and de-shape the
* Seen-Family letter accordingly. * Seen-Family letter accordingly.
* *
 End of changes. 18 change blocks. 
18 lines changed or deleted 18 lines changed or added


 uspoof.h   uspoof.h 
skipping to change at line 17 skipping to change at line 17
* encoding: US-ASCII * encoding: US-ASCII
* tab size: 8 (not used) * tab size: 8 (not used)
* indentation:4 * indentation:4
* *
* created on: 2008Feb13 * created on: 2008Feb13
* created by: Andy Heninger * created by: Andy Heninger
* *
* Unicode Spoof Detection * Unicode Spoof Detection
*/ */
/**
* \file
* \brief C API: Unicode Spoof Detection
*/
#ifndef USPOOF_H #ifndef USPOOF_H
#define USPOOF_H #define USPOOF_H
#include "unicode/utypes.h" #include "unicode/utypes.h"
#include "unicode/uset.h" #include "unicode/uset.h"
#include "unicode/parseerr.h" #include "unicode/parseerr.h"
#include "unicode/localpointer.h" #include "unicode/localpointer.h"
#if !UCONFIG_NO_NORMALIZATION #if !UCONFIG_NO_NORMALIZATION
#if U_SHOW_CPLUSPLUS_API #if U_SHOW_CPLUSPLUS_API
#include "unicode/unistr.h" #include "unicode/unistr.h"
#include "unicode/uniset.h" #include "unicode/uniset.h"
U_NAMESPACE_USE U_NAMESPACE_USE
#endif #endif
/** /**
* * \file
* \brief C API for Unicode Security and Spoofing Detection. * \brief Unicode Security and Spoofing Detection, C API.
* *
* These functions are intended to check strings, typically * These functions are intended to check strings, typically
* identifiers of some type, such as URLs, for the presence of * identifiers of some type, such as URLs, for the presence of
* characters that are likely to be visually confusing - * characters that are likely to be visually confusing -
* for cases where the displayed form of an identifier may * for cases where the displayed form of an identifier may
* not be what it appears to be. * not be what it appears to be.
* *
* Unicode Technical Report #36, http://unicode.org/reports/tr36, and * Unicode Technical Report #36, http://unicode.org/reports/tr36, and
* Unicode Technical Standard #39, http://unicode.org/reports/tr39 * Unicode Technical Standard #39, http://unicode.org/reports/tr39
* "Unicode security considerations", give more background on * "Unicode security considerations", give more background on
* security an spoofing issues with Unicode identifiers. * security an spoofing issues with Unicode identifiers.
* The tests and checks provided by this module implement the recommendatio ns * The tests and checks provided by this module implement the recommendatio ns
* from these Unicode documents. * from those Unicode documents.
* *
* The tests available on identifiers fall into two general categories: * The tests available on identifiers fall into two general categories:
* -# Single identifier tests. Check whether an identifier is * -# Single identifier tests. Check whether an identifier is
* potentially confusable with any other string, or is suspicious * potentially confusable with any other string, or is suspicious
* for other reasons. * for other reasons.
* -# Two identifier tests. Check whether two specific identifiers are confusable. * -# Two identifier tests. Check whether two specific identifiers are confusable.
* This does not consider whether either of strings is potentially * This does not consider whether either of strings is potentially
* confusable with any string other than the exact one specified. * confusable with any string other than the exact one specified.
* *
* The steps to perform confusability testing are * The steps to perform confusability testing are
skipping to change at line 115 skipping to change at line 110
* When performing tests on a single identifier, with the uspoof_check() fa mily of functions, * When performing tests on a single identifier, with the uspoof_check() fa mily of functions,
* the relevant tests are: * the relevant tests are:
* *
* -# USPOOF_MIXED_SCRIPT_CONFUSABLE: the identifier contains characters from multiple * -# USPOOF_MIXED_SCRIPT_CONFUSABLE: the identifier contains characters from multiple
* scripts, and there exists an identifier of a single script that is visually confusable. * scripts, and there exists an identifier of a single script that is visually confusable.
* -# USPOOF_WHOLE_SCRIPT_CONFUSABLE: the identifier consists of charact ers from a single * -# USPOOF_WHOLE_SCRIPT_CONFUSABLE: the identifier consists of charact ers from a single
* script, and there exists a visually confusable identifier. * script, and there exists a visually confusable identifier.
* The visually confusable identifier also consists of characters fro m a single script. * The visually confusable identifier also consists of characters fro m a single script.
* but not the same script as the identifier being checked. * but not the same script as the identifier being checked.
* -# USPOOF_ANY_CASE: modifies the mixed script and whole script confus ables tests. If * -# USPOOF_ANY_CASE: modifies the mixed script and whole script confus ables tests. If
* specified, the checks will confusable characters of any case. If this flag is not * specified, the checks will consider confusable characters of any c ase. If this flag is not
* set, the test is performed assuming case folded identifiers. * set, the test is performed assuming case folded identifiers.
* -# USPOOF_SINGLE_SCRIPT: check that the identifier contains only char acters from a * -# USPOOF_SINGLE_SCRIPT: check that the identifier contains only char acters from a
* single script. (Characters from the 'common' and 'inherited' scri pts are ignored.) * single script. (Characters from the 'common' and 'inherited' scri pts are ignored.)
* This is not a test for confusable identifiers * This is not a test for confusable identifiers
* -# USPOOF_INVISIBLE: check an identifier for the presence of invisibl e characters, * -# USPOOF_INVISIBLE: check an identifier for the presence of invisibl e characters,
* such as zero-width spaces, or character sequences that are * such as zero-width spaces, or character sequences that are
* likely not to display, such as multiple occurrences of the same * likely not to display, such as multiple occurrences of the same
* non-spacing mark. This check does not test the input string as a whole * non-spacing mark. This check does not test the input string as a whole
* for conformance to any particular syntax for identifiers. * for conformance to any particular syntax for identifiers.
* -# USPOOF_CHAR_LIMIT: check that an identifier contains only characte rs from a specified set * -# USPOOF_CHAR_LIMIT: check that an identifier contains only characte rs from a specified set
skipping to change at line 253 skipping to change at line 248
* can be more than necessary * can be more than necessary
* @param pActualLength receives the actual number of bytes at data taken u p by the data; * @param pActualLength receives the actual number of bytes at data taken u p by the data;
* can be NULL * can be NULL
* @param pErrorCode ICU error code * @param pErrorCode ICU error code
* @return the spoof checker. * @return the spoof checker.
* *
* @see uspoof_open * @see uspoof_open
* @see uspoof_serialize * @see uspoof_serialize
* @stable ICU 4.2 * @stable ICU 4.2
*/ */
U_CAPI USpoofChecker * U_EXPORT2 U_STABLE USpoofChecker * U_EXPORT2
uspoof_openFromSerialized(const void *data, int32_t length, int32_t *pActua lLength, uspoof_openFromSerialized(const void *data, int32_t length, int32_t *pActua lLength,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Open a Spoof Checker from the source form of the spoof data. * Open a Spoof Checker from the source form of the spoof data.
* The Three inputs correspond to the Unicode data files confusables.txt * The Three inputs correspond to the Unicode data files confusables.txt
* confusablesWholeScript.txt and xidmdifications.txt as described in * confusablesWholeScript.txt and xidmdifications.txt as described in
* Unicode UAX 39. The syntax of the source data is as described in UAX 3 9 for * Unicode UAX 39. The syntax of the source data is as described in UAX 3 9 for
* these files, and the content of these files is acceptable input. * these files, and the content of these files is acceptable input.
* *
skipping to change at line 288 skipping to change at line 283
* USPOOF_WHOLE_SCRIPT_CONFUSABLE, or * USPOOF_WHOLE_SCRIPT_CONFUSABLE, or
* zero if no errors are found. * zero if no errors are found.
* @param pe In the event of an error in the input, receives the position * @param pe In the event of an error in the input, receives the position
* in the input text (line, offset) of the error. * in the input text (line, offset) of the error.
* @param status an in/out ICU UErrorCode. Among the possible errors is * @param status an in/out ICU UErrorCode. Among the possible errors is
* U_PARSE_ERROR, which is used to report syntax errors * U_PARSE_ERROR, which is used to report syntax errors
* in the input. * in the input.
* @return A spoof checker that uses the rules from the input f iles. * @return A spoof checker that uses the rules from the input f iles.
* @stable ICU 4.2 * @stable ICU 4.2
*/ */
U_CAPI USpoofChecker * U_EXPORT2 U_STABLE USpoofChecker * U_EXPORT2
uspoof_openFromSource(const char *confusables, int32_t confusablesLen, uspoof_openFromSource(const char *confusables, int32_t confusablesLen,
const char *confusablesWholeScript, int32_t confusabl esWholeScriptLen, const char *confusablesWholeScript, int32_t confusabl esWholeScriptLen,
int32_t *errType, UParseError *pe, UErrorCode *status ); int32_t *errType, UParseError *pe, UErrorCode *status );
/** /**
* Close a Spoof Checker, freeing any memory that was being held by * Close a Spoof Checker, freeing any memory that was being held by
* its implementation. * its implementation.
* @stable ICU 4.2 * @stable ICU 4.2
*/ */
U_STABLE void U_EXPORT2 U_STABLE void U_EXPORT2
skipping to change at line 312 skipping to change at line 307
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUSpoofCheckerPointer * \class LocalUSpoofCheckerPointer
* "Smart pointer" class, closes a USpoofChecker via uspoof_close(). * "Smart pointer" class, closes a USpoofChecker via uspoof_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUSpoofCheckerPointer, USpoofChecker, uspoo f_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUSpoofCheckerPointer, USpoofChecker, uspoo f_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Clone a Spoof Checker. The clone will be set to perform the same checks * Clone a Spoof Checker. The clone will be set to perform the same checks
* as the original source. * as the original source.
skipping to change at line 863 skipping to change at line 858
* @param capacity the number of bytes available at data, * @param capacity the number of bytes available at data,
* or 0 for preflighting * or 0 for preflighting
* @param status an in/out ICU UErrorCode; possible errors include: * @param status an in/out ICU UErrorCode; possible errors include:
* - U_BUFFER_OVERFLOW_ERROR if the data storage block is too small for ser ialization * - U_BUFFER_OVERFLOW_ERROR if the data storage block is too small for ser ialization
* - U_ILLEGAL_ARGUMENT_ERROR the data or capacity parameters are bad * - U_ILLEGAL_ARGUMENT_ERROR the data or capacity parameters are bad
* @return the number of bytes written or needed for the spoof data * @return the number of bytes written or needed for the spoof data
* *
* @see utrie2_openFromSerialized() * @see utrie2_openFromSerialized()
* @stable ICU 4.2 * @stable ICU 4.2
*/ */
U_CAPI int32_t U_EXPORT2 U_STABLE int32_t U_EXPORT2
uspoof_serialize(USpoofChecker *sc, uspoof_serialize(USpoofChecker *sc,
void *data, int32_t capacity, void *data, int32_t capacity,
UErrorCode *status); UErrorCode *status);
#endif #endif
#endif /* USPOOF_H */ #endif /* USPOOF_H */
 End of changes. 8 change blocks. 
14 lines changed or deleted 9 lines changed or added


 usprep.h   usprep.h 
skipping to change at line 220 skipping to change at line 220
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUStringPrepProfilePointer * \class LocalUStringPrepProfilePointer
* "Smart pointer" class, closes a UStringPrepProfile via usprep_close(). * "Smart pointer" class, closes a UStringPrepProfile via usprep_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUStringPrepProfilePointer, UStringPrepProf ile, usprep_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUStringPrepProfilePointer, UStringPrepProf ile, usprep_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Prepare the input buffer for use in applications with the given profile. This operation maps, normalizes(NFKC), * Prepare the input buffer for use in applications with the given profile. This operation maps, normalizes(NFKC),
* checks for prohited and BiDi characters in the order defined by RFC 3454 * checks for prohited and BiDi characters in the order defined by RFC 3454
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 ustdio.h   ustdio.h 
skipping to change at line 277 skipping to change at line 277
* @param f The FILE* which this UFILE will take ownership of. * @param f The FILE* which this UFILE will take ownership of.
* @param locale The locale whose conventions will be used to format * @param locale The locale whose conventions will be used to format
* and parse output. If this parameter is NULL, the default locale will * and parse output. If this parameter is NULL, the default locale will
* be used. * be used.
* @param codepage The codepage in which data will be written to and * @param codepage The codepage in which data will be written to and
* read from the file. If this paramter is NULL, data will be written and * read from the file. If this paramter is NULL, data will be written and
* read using the default codepage for <TT>locale</TT>, unless <TT>locale</ TT> * read using the default codepage for <TT>locale</TT>, unless <TT>locale</ TT>
* is NULL, in which case the system default codepage will be used. * is NULL, in which case the system default codepage will be used.
* @return A new UFILE, or NULL if an error occurred. If an error occurs * @return A new UFILE, or NULL if an error occurred. If an error occurs
* the ownership of the FILE* stream remains with the caller. * the ownership of the FILE* stream remains with the caller.
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UFILE* U_EXPORT2 U_STABLE UFILE* U_EXPORT2
u_fadopt(FILE *f, u_fadopt(FILE *f,
const char *locale, const char *locale,
const char *codepage); const char *codepage);
/** /**
* Create a UFILE that can be used for localized formatting or parsing. * Create a UFILE that can be used for localized formatting or parsing.
* The u_sprintf and u_sscanf functions do not read or write numbers for a * The u_sprintf and u_sscanf functions do not read or write numbers for a
* specific locale. The ustdio.h file functions can be used on this UFILE. * specific locale. The ustdio.h file functions can be used on this UFILE.
* The string is usable once u_fclose or u_fflush has been called on the * The string is usable once u_fclose or u_fflush has been called on the
* returned UFILE. * returned UFILE.
skipping to change at line 323 skipping to change at line 323
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUFILEPointer * \class LocalUFILEPointer
* "Smart pointer" class, closes a UFILE via u_fclose(). * "Smart pointer" class, closes a UFILE via u_fclose().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUFILEPointer, UFILE, u_fclose); U_DEFINE_LOCAL_OPEN_POINTER(LocalUFILEPointer, UFILE, u_fclose);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Tests if the UFILE is at the end of the file stream. * Tests if the UFILE is at the end of the file stream.
* @param f The UFILE from which to read. * @param f The UFILE from which to read.
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 ustring.h   ustring.h 
skipping to change at line 1633 skipping to change at line 1633
* pDestLength!=NULL then *pDestLength is always set t o the * pDestLength!=NULL then *pDestLength is always set t o the
* number of output units corresponding to the transfo rmation of * number of output units corresponding to the transfo rmation of
* all the input units, even in case of a buffer overf low. * all the input units, even in case of a buffer overf low.
* @param src The original source string * @param src The original source string
* @param srcLength The length of the original string. If -1, then src must be zero-terminated. * @param srcLength The length of the original string. If -1, then src must be zero-terminated.
* @param pErrorCode Pointer to a standard ICU error code. Its input val ue must * @param pErrorCode Pointer to a standard ICU error code. Its input val ue must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return The pointer to destination buffer. * @return The pointer to destination buffer.
* @draft ICU 4.4 * @stable ICU 4.4
* @see u_strToUTF8WithSub * @see u_strToUTF8WithSub
* @see u_strFromJavaModifiedUTF8WithSub * @see u_strFromJavaModifiedUTF8WithSub
*/ */
U_DRAFT char* U_EXPORT2 U_STABLE char* U_EXPORT2
u_strToJavaModifiedUTF8( u_strToJavaModifiedUTF8(
char *dest, char *dest,
int32_t destCapacity, int32_t destCapacity,
int32_t *pDestLength, int32_t *pDestLength,
const UChar *src, const UChar *src,
int32_t srcLength, int32_t srcLength,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
/** /**
* Convert a Java Modified UTF-8 string to a 16-bit Unicode string. * Convert a Java Modified UTF-8 string to a 16-bit Unicode string.
skipping to change at line 1684 skipping to change at line 1684
* Set to 0 if no substitutions occur or subchar<0. * Set to 0 if no substitutions occur or subchar<0.
* pNumSubstitutions can be NULL. * pNumSubstitutions can be NULL.
* @param pErrorCode Pointer to a standard ICU error code. Its input val ue must * @param pErrorCode Pointer to a standard ICU error code. Its input val ue must
* pass the U_SUCCESS() test, or else the function ret urns * pass the U_SUCCESS() test, or else the function ret urns
* immediately. Check for U_FAILURE() on output or use with * immediately. Check for U_FAILURE() on output or use with
* function chaining. (See User Guide for details.) * function chaining. (See User Guide for details.)
* @return The pointer to destination buffer. * @return The pointer to destination buffer.
* @see u_strFromUTF8WithSub * @see u_strFromUTF8WithSub
* @see u_strFromUTF8Lenient * @see u_strFromUTF8Lenient
* @see u_strToJavaModifiedUTF8 * @see u_strToJavaModifiedUTF8
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DRAFT UChar* U_EXPORT2 U_STABLE UChar* U_EXPORT2
u_strFromJavaModifiedUTF8WithSub( u_strFromJavaModifiedUTF8WithSub(
UChar *dest, UChar *dest,
int32_t destCapacity, int32_t destCapacity,
int32_t *pDestLength, int32_t *pDestLength,
const char *src, const char *src,
int32_t srcLength, int32_t srcLength,
UChar32 subchar, int32_t *pNumSubstitutions, UChar32 subchar, int32_t *pNumSubstitutions,
UErrorCode *pErrorCode); UErrorCode *pErrorCode);
#endif #endif
 End of changes. 4 change blocks. 
4 lines changed or deleted 4 lines changed or added


 usystem.h   usystem.h 
skipping to change at line 35 skipping to change at line 35
# if U_DISABLE_RENAMING # if U_DISABLE_RENAMING
# define u_cleanup u_cleanup_SYSTEM_API_DO_NOT_USE # define u_cleanup u_cleanup_SYSTEM_API_DO_NOT_USE
# define u_setAtomicIncDecFunctions u_setAtomicIncDecFunctions_SYSTE M_API_DO_NOT_USE # define u_setAtomicIncDecFunctions u_setAtomicIncDecFunctions_SYSTE M_API_DO_NOT_USE
# define u_setMemoryFunctions u_setMemoryFunctions_SYSTEM_API_DO_NOT _USE # define u_setMemoryFunctions u_setMemoryFunctions_SYSTEM_API_DO_NOT _USE
# define u_setMutexFunctions u_setMutexFunctions_SYSTEM_API_DO_NOT_U SE # define u_setMutexFunctions u_setMutexFunctions_SYSTEM_API_DO_NOT_U SE
# define ucnv_setDefaultName ucnv_setDefaultName_SYSTEM_API_DO_NOT_U SE # define ucnv_setDefaultName ucnv_setDefaultName_SYSTEM_API_DO_NOT_U SE
# define uloc_getDefault uloc_getDefault_SYSTEM_API_DO_NOT_USE # define uloc_getDefault uloc_getDefault_SYSTEM_API_DO_NOT_USE
# define uloc_setDefault uloc_setDefault_SYSTEM_API_DO_NOT_USE # define uloc_setDefault uloc_setDefault_SYSTEM_API_DO_NOT_USE
# else # else
# define u_cleanup_4_5 u_cleanup_SYSTEM_API_DO_NOT_USE # define u_cleanup_4_6 u_cleanup_SYSTEM_API_DO_NOT_USE
# define u_setAtomicIncDecFunctions_4_5 u_setAtomicIncDecFunctions_S # define u_setAtomicIncDecFunctions_4_6 u_setAtomicIncDecFunctions_S
YSTEM_API_DO_NOT_USE YSTEM_API_DO_NOT_USE
# define u_setMemoryFunctions_4_5 u_setMemoryFunctions_SYSTEM_API_DO # define u_setMemoryFunctions_4_6 u_setMemoryFunctions_SYSTEM_API_DO
_NOT_USE _NOT_USE
# define u_setMutexFunctions_4_5 u_setMutexFunctions_SYSTEM_API_DO_N # define u_setMutexFunctions_4_6 u_setMutexFunctions_SYSTEM_API_DO_N
OT_USE OT_USE
# define ucnv_setDefaultName_4_5 ucnv_setDefaultName_SYSTEM_API_DO_N # define ucnv_setDefaultName_4_6 ucnv_setDefaultName_SYSTEM_API_DO_N
OT_USE OT_USE
# define uloc_getDefault_4_5 uloc_getDefault_SYSTEM_API_DO_NOT_USE # define uloc_getDefault_4_6 uloc_getDefault_SYSTEM_API_DO_NOT_USE
# define uloc_setDefault_4_5 uloc_setDefault_SYSTEM_API_DO_NOT_USE # define uloc_setDefault_4_6 uloc_setDefault_SYSTEM_API_DO_NOT_USE
# endif /* U_DISABLE_RENAMING */ # endif /* U_DISABLE_RENAMING */
#endif /* U_HIDE_SYSTEM_API */ #endif /* U_HIDE_SYSTEM_API */
#endif /* USYSTEM_H */ #endif /* USYSTEM_H */
 End of changes. 1 change blocks. 
11 lines changed or deleted 11 lines changed or added


 utext.h   utext.h 
skipping to change at line 190 skipping to change at line 190
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUTextPointer * \class LocalUTextPointer
* "Smart pointer" class, closes a UText via utext_close(). * "Smart pointer" class, closes a UText via utext_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUTextPointer, UText, utext_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUTextPointer, UText, utext_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Open a read-only UText implementation for UTF-8 strings. * Open a read-only UText implementation for UTF-8 strings.
* *
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 utf.h   utf.h 
/* /*
*************************************************************************** **** *************************************************************************** ****
* *
* Copyright (C) 1999-2008, International Business Machines * Copyright (C) 1999-2010, International Business Machines
* Corporation and others. All Rights Reserved. * Corporation and others. All Rights Reserved.
* *
*************************************************************************** **** *************************************************************************** ****
* file name: utf.h * file name: utf.h
* encoding: US-ASCII * encoding: US-ASCII
* tab size: 8 (not used) * tab size: 8 (not used)
* indentation:4 * indentation:4
* *
* created on: 1999sep09 * created on: 1999sep09
* created by: Markus W. Scherer * created by: Markus W. Scherer
skipping to change at line 224 skipping to change at line 224
* @return TRUE or FALSE * @return TRUE or FALSE
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
#define U_IS_SURROGATE_LEAD(c) (((c)&0x400)==0) #define U_IS_SURROGATE_LEAD(c) (((c)&0x400)==0)
/** /**
* Assuming c is a surrogate code point (U_IS_SURROGATE(c)), * Assuming c is a surrogate code point (U_IS_SURROGATE(c)),
* is it a trail surrogate? * is it a trail surrogate?
* @param c 32-bit code point * @param c 32-bit code point
* @return TRUE or FALSE * @return TRUE or FALSE
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U_IS_SURROGATE_TRAIL(c) (((c)&0x400)!=0) #define U_IS_SURROGATE_TRAIL(c) (((c)&0x400)!=0)
/* include the utfXX.h ---------------------------------------------------- -- */ /* include the utfXX.h ---------------------------------------------------- -- */
#include "unicode/utf8.h" #include "unicode/utf8.h"
#include "unicode/utf16.h" #include "unicode/utf16.h"
/* utf_old.h contains deprecated, pre-ICU 2.4 definitions */ /* utf_old.h contains deprecated, pre-ICU 2.4 definitions */
#include "unicode/utf_old.h" #include "unicode/utf_old.h"
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 utf16.h   utf16.h 
skipping to change at line 90 skipping to change at line 90
* @return TRUE or FALSE * @return TRUE or FALSE
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
#define U16_IS_SURROGATE_LEAD(c) (((c)&0x400)==0) #define U16_IS_SURROGATE_LEAD(c) (((c)&0x400)==0)
/** /**
* Assuming c is a surrogate code point (U16_IS_SURROGATE(c)), * Assuming c is a surrogate code point (U16_IS_SURROGATE(c)),
* is it a trail surrogate? * is it a trail surrogate?
* @param c 16-bit code unit * @param c 16-bit code unit
* @return TRUE or FALSE * @return TRUE or FALSE
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#define U16_IS_SURROGATE_TRAIL(c) (((c)&0x400)!=0) #define U16_IS_SURROGATE_TRAIL(c) (((c)&0x400)!=0)
/** /**
* Helper constant for U16_GET_SUPPLEMENTARY. * Helper constant for U16_GET_SUPPLEMENTARY.
* @internal * @internal
*/ */
#define U16_SURROGATE_OFFSET ((0xd800<<10UL)+0xdc00-0x10000) #define U16_SURROGATE_OFFSET ((0xd800<<10UL)+0xdc00-0x10000)
/** /**
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 utrans.h   utrans.h 
/* /*
*************************************************************************** **** *************************************************************************** ****
* Copyright (C) 1997-2009, International Business Machines * Copyright (C) 1997-2010, International Business Machines
* Corporation and others. All Rights Reserved. * Corporation and others. All Rights Reserved.
*************************************************************************** **** *************************************************************************** ****
* Date Name Description * Date Name Description
* 06/21/00 aliu Creation. * 06/21/00 aliu Creation.
*************************************************************************** **** *************************************************************************** ****
*/ */
#ifndef UTRANS_H #ifndef UTRANS_H
#define UTRANS_H #define UTRANS_H
skipping to change at line 250 skipping to change at line 250
U_NAMESPACE_BEGIN U_NAMESPACE_BEGIN
/** /**
* \class LocalUTransliteratorPointer * \class LocalUTransliteratorPointer
* "Smart pointer" class, closes a UTransliterator via utrans_close(). * "Smart pointer" class, closes a UTransliterator via utrans_close().
* For most methods see the LocalPointerBase base class. * For most methods see the LocalPointerBase base class.
* *
* @see LocalPointerBase * @see LocalPointerBase
* @see LocalPointer * @see LocalPointer
* @draft ICU 4.4 * @stable ICU 4.4
*/ */
U_DEFINE_LOCAL_OPEN_POINTER(LocalUTransliteratorPointer, UTransliterator, u trans_close); U_DEFINE_LOCAL_OPEN_POINTER(LocalUTransliteratorPointer, UTransliterator, u trans_close);
U_NAMESPACE_END U_NAMESPACE_END
#endif #endif
/** /**
* Return the programmatic identifier for this transliterator. * Return the programmatic identifier for this transliterator.
* If this identifier is passed to utrans_openU(), it will open * If this identifier is passed to utrans_openU(), it will open
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 utypes.h   utypes.h 
skipping to change at line 178 skipping to change at line 178
* contain UTF-8 text, regardless of what the system API uses * contain UTF-8 text, regardless of what the system API uses
* - some ICU code will use fast functions like u_strFromUTF8() * - some ICU code will use fast functions like u_strFromUTF8()
* rather than the more general and more heavy-weight conversion API (ucn v.h) * rather than the more general and more heavy-weight conversion API (ucn v.h)
* - ucnv_getDefaultName() always returns "UTF-8" * - ucnv_getDefaultName() always returns "UTF-8"
* - ucnv_setDefaultName() is disabled and will not change the default char set * - ucnv_setDefaultName() is disabled and will not change the default char set
* - static builds of ICU are smaller * - static builds of ICU are smaller
* - more functionality is available with the UCONFIG_NO_CONVERSION build-t ime * - more functionality is available with the UCONFIG_NO_CONVERSION build-t ime
* configuration option (see unicode/uconfig.h) * configuration option (see unicode/uconfig.h)
* - the UCONFIG_NO_CONVERSION build option in uconfig.h is more usable * - the UCONFIG_NO_CONVERSION build option in uconfig.h is more usable
* *
* @draft ICU 4.2 * @stable ICU 4.2
* @see UCONFIG_NO_CONVERSION * @see UCONFIG_NO_CONVERSION
*/ */
#ifndef U_CHARSET_IS_UTF8 #ifndef U_CHARSET_IS_UTF8
# define U_CHARSET_IS_UTF8 0 # define U_CHARSET_IS_UTF8 0
#endif #endif
/*========================================================================= ==*/ /*========================================================================= ==*/
/* ICUDATA naming scheme */ /* ICUDATA naming scheme */
/*========================================================================= ==*/ /*========================================================================= ==*/
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 uvernum.h   uvernum.h 
skipping to change at line 57 skipping to change at line 57
/** The current ICU major version as an integer. /** The current ICU major version as an integer.
* This value will change in the subsequent releases of ICU * This value will change in the subsequent releases of ICU
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
#define U_ICU_VERSION_MAJOR_NUM 4 #define U_ICU_VERSION_MAJOR_NUM 4
/** The current ICU minor version as an integer. /** The current ICU minor version as an integer.
* This value will change in the subsequent releases of ICU * This value will change in the subsequent releases of ICU
* @stable ICU 2.6 * @stable ICU 2.6
*/ */
#define U_ICU_VERSION_MINOR_NUM 5 #define U_ICU_VERSION_MINOR_NUM 6
/** The current ICU patchlevel version as an integer. /** The current ICU patchlevel version as an integer.
* This value will change in the subsequent releases of ICU * This value will change in the subsequent releases of ICU
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
#define U_ICU_VERSION_PATCHLEVEL_NUM 2 #define U_ICU_VERSION_PATCHLEVEL_NUM 0
/** The current ICU build level version as an integer. /** The current ICU build level version as an integer.
* This value is for use by ICU clients. It defaults to 0. * This value is for use by ICU clients. It defaults to 0.
* @stable ICU 4.0 * @stable ICU 4.0
*/ */
#ifndef U_ICU_VERSION_BUILDLEVEL_NUM #ifndef U_ICU_VERSION_BUILDLEVEL_NUM
#define U_ICU_VERSION_BUILDLEVEL_NUM 0 #define U_ICU_VERSION_BUILDLEVEL_NUM 0
#endif #endif
/** Glued version suffix for renamers /** Glued version suffix for renamers
* This value will change in the subsequent releases of ICU * This value will change in the subsequent releases of ICU
* @stable ICU 2.6 * @stable ICU 2.6
*/ */
#define U_ICU_VERSION_SUFFIX _45 #define U_ICU_VERSION_SUFFIX _46
/** Glued version suffix function for renamers /** Glued version suffix function for renamers
* This value will change in the subsequent releases of ICU. * This value will change in the subsequent releases of ICU.
* If a custom suffix (such as matching library suffixes) is desired, this can be modified. * If a custom suffix (such as matching library suffixes) is desired, this can be modified.
* Note that if present, platform.h may contain an earlier definition of t his macro. * Note that if present, platform.h may contain an earlier definition of t his macro.
* @draft ICU 4.2 * @stable ICU 4.2
*/ */
#ifndef U_ICU_ENTRY_POINT_RENAME #ifndef U_ICU_ENTRY_POINT_RENAME
#define U_ICU_ENTRY_POINT_RENAME(x) x ## _45 #define U_ICU_ENTRY_POINT_RENAME(x) x ## _46
#endif #endif
/** The current ICU library version as a dotted-decimal string. The patchle vel /** The current ICU library version as a dotted-decimal string. The patchle vel
* only appears in this string if it non-zero. * only appears in this string if it non-zero.
* This value will change in the subsequent releases of ICU * This value will change in the subsequent releases of ICU
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
#define U_ICU_VERSION "4.5.2" #define U_ICU_VERSION "4.6"
/** The current ICU library major/minor version as a string without dots, f or library name suffixes. /** The current ICU library major/minor version as a string without dots, f or library name suffixes.
* This value will change in the subsequent releases of ICU * This value will change in the subsequent releases of ICU
* @stable ICU 2.6 * @stable ICU 2.6
*/ */
#define U_ICU_VERSION_SHORT "45" #define U_ICU_VERSION_SHORT "46"
/** Data version in ICU4C. /** Data version in ICU4C.
* @internal ICU 4.4 Internal Use Only * @internal ICU 4.4 Internal Use Only
**/ **/
#define U_ICU_DATA_VERSION "4.5.2" #define U_ICU_DATA_VERSION "4.6"
/*========================================================================= == /*========================================================================= ==
* ICU collation framework version information * ICU collation framework version information
* Version info that can be obtained from a collator is affected by these * Version info that can be obtained from a collator is affected by these
* numbers in a secret and magic way. Please use collator version as whole * numbers in a secret and magic way. Please use collator version as whole
*========================================================================= == *========================================================================= ==
*/ */
/** Collation runtime version (sort key generator, strcoll). /** Collation runtime version (sort key generator, strcoll).
* If the version is different, sortkeys for the same string could be diffe rent * If the version is different, sortkeys for the same string could be diffe rent
skipping to change at line 135 skipping to change at line 135
#define UCOL_RUNTIME_VERSION 6 #define UCOL_RUNTIME_VERSION 6
/** Builder code version. When this is different, same tailoring might resu lt /** Builder code version. When this is different, same tailoring might resu lt
* in assigning different collation elements to code points * in assigning different collation elements to code points
* version 2 was in ICU 1.8.1. added support for prefixes, tweaked canonica l * version 2 was in ICU 1.8.1. added support for prefixes, tweaked canonica l
* closure. However, the tailorings should probably get same CEs assigned * closure. However, the tailorings should probably get same CEs assigned
* version 5 - ICU 2.2 - fixed some bugs, renamed some indirect values. * version 5 - ICU 2.2 - fixed some bugs, renamed some indirect values.
* version 6 - ICU 2.8 - fixed bug in builder that allowed 0xFF in primary values * version 6 - ICU 2.8 - fixed bug in builder that allowed 0xFF in primary values
* version 7 - ICU 3.4 - with the UCA 4.1 Thai tag is no longer processed, complete ignorables * version 7 - ICU 3.4 - with the UCA 4.1 Thai tag is no longer processed, complete ignorables
* now break contractions * now break contractions
* version 8 - ICU 4.6 - the addition of collation reordering. It should in
general be
* compatible since the data is at the end of the fil
e. However,
* if data parsers make assumptions about lengths thi
s will cause problems.
* Backward compatible with the old rules. * Backward compatible with the old rules.
* This value may change in the subsequent releases of ICU * This value may change in the subsequent releases of ICU
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
#define UCOL_BUILDER_VERSION 7 #define UCOL_BUILDER_VERSION 8
/** This is the version of the tailorings /** This is the version of the tailorings
* This value may change in the subsequent releases of ICU * This value may change in the subsequent releases of ICU
* @stable ICU 2.4 * @stable ICU 2.4
*/ */
#define UCOL_TAILORINGS_VERSION 1 #define UCOL_TAILORINGS_VERSION 1
#endif #endif
 End of changes. 10 change blocks. 
9 lines changed or deleted 15 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/