C API: Contains all the important version numbers for ICU. More...
#include "unicode/umachine.h"
Go to the source code of this file.
Defines | |
#define | U_COPYRIGHT_STRING " Copyright (C) 2009, International Business Machines Corporation and others. All Rights Reserved. " |
IMPORTANT: When updating version, the following things need to be done: source/common/unicode/uversion.h - this file: update major, minor, patchlevel, suffix, version, short version constants, namespace, and copyright source/common/common.vcproj - update 'Output file name' on the link tab so that it contains the new major/minor combination source/i18n/i18n.vcproj - same as for the common.vcproj source/layout/layout.vcproj - same as for the common.vcproj source/layoutex/layoutex.vcproj - same source/stubdata/stubdata.vcproj - same as for the common.vcproj source/io/io.vcproj - same as for the common.vcproj source/data/makedata.mak - change U_ICUDATA_NAME so that it contains the new major/minor combination source/tools/genren/genren.pl - use this script according to the README in that folder. | |
#define | U_COPYRIGHT_STRING_LENGTH 128 |
Maximum length of the copyright string. | |
#define | U_ICU_VERSION_MAJOR_NUM 4 |
The current ICU major version as an integer. | |
#define | U_ICU_VERSION_MINOR_NUM 2 |
The current ICU minor version as an integer. | |
#define | U_ICU_VERSION_PATCHLEVEL_NUM 1 |
The current ICU patchlevel version as an integer. | |
#define | U_ICU_VERSION_BUILDLEVEL_NUM 0 |
The current ICU build level version as an integer. | |
#define | U_ICU_VERSION_SUFFIX _4_2 |
Glued version suffix for renamers This value will change in the subsequent releases of ICU. | |
#define | U_ICU_VERSION "4.2.1" |
The current ICU library version as a dotted-decimal string. | |
#define | U_ICU_VERSION_SHORT "42" |
The current ICU library major/minor version as a string without dots, for library name suffixes. | |
#define | U_MAX_VERSION_LENGTH 4 |
An ICU version consists of up to 4 numbers from 0..255. | |
#define | U_VERSION_DELIMITER '.' |
In a string, ICU version fields are delimited by dots. | |
#define | U_MAX_VERSION_STRING_LENGTH 20 |
The maximum length of an ICU version string. | |
#define | U_NAMESPACE_BEGIN |
This is used to begin a declaration of a public ICU C++ API. | |
#define | U_NAMESPACE_END |
This is used to end a declaration of a public ICU C++ API If the compiler doesn't support namespaces, this does nothing. | |
#define | U_NAMESPACE_USE |
This is used to specify that the rest of the code uses the public ICU C++ API namespace. | |
#define | U_NAMESPACE_QUALIFIER |
This is used to qualify that a function or class is part of the public ICU C++ API namespace. | |
#define | UCOL_RUNTIME_VERSION 6 |
Collation runtime version (sort key generator, strcoll). | |
#define | UCOL_BUILDER_VERSION 7 |
Builder code version. | |
#define | UCOL_TAILORINGS_VERSION 1 |
This is the version of the tailorings This value may change in the subsequent releases of ICU. | |
Typedefs | |
typedef uint8_t | UVersionInfo [U_MAX_VERSION_LENGTH] |
The binary form of a version on ICU APIs is an array of 4 uint8_t. | |
Functions | |
void | u_versionFromString (UVersionInfo versionArray, const char *versionString) |
Parse a string with dotted-decimal version information and fill in a UVersionInfo structure with the result. | |
void | u_versionFromUString (UVersionInfo versionArray, const UChar *versionString) |
Parse a Unicode string with dotted-decimal version information and fill in a UVersionInfo structure with the result. | |
void | u_versionToString (UVersionInfo versionArray, char *versionString) |
Write a string with dotted-decimal version information according to the input UVersionInfo. | |
void | u_getVersion (UVersionInfo versionArray) |
Gets the ICU release version. | |
int32_t | u_compareVersions (UVersionInfo v1, UVersionInfo v2) |
Compare two version numbers, v1 and v2, numerically. |
C API: Contains all the important version numbers for ICU.
Definition in file uversion.h.
#define U_COPYRIGHT_STRING " Copyright (C) 2009, International Business Machines Corporation and others. All Rights Reserved. " |
IMPORTANT: When updating version, the following things need to be done: source/common/unicode/uversion.h - this file: update major, minor, patchlevel, suffix, version, short version constants, namespace, and copyright source/common/common.vcproj - update 'Output file name' on the link tab so that it contains the new major/minor combination source/i18n/i18n.vcproj - same as for the common.vcproj source/layout/layout.vcproj - same as for the common.vcproj source/layoutex/layoutex.vcproj - same source/stubdata/stubdata.vcproj - same as for the common.vcproj source/io/io.vcproj - same as for the common.vcproj source/data/makedata.mak - change U_ICUDATA_NAME so that it contains the new major/minor combination source/tools/genren/genren.pl - use this script according to the README in that folder.
The standard copyright notice that gets compiled into each library. This value will change in the subsequent releases of ICU
Definition at line 53 of file uversion.h.
#define U_COPYRIGHT_STRING_LENGTH 128 |
#define U_ICU_VERSION "4.2.1" |
The current ICU library version as a dotted-decimal string.
The patchlevel and buildlevel only appears in this string if it non-zero. This value will change in the subsequent releases of ICU
Definition at line 98 of file uversion.h.
#define U_ICU_VERSION_BUILDLEVEL_NUM 0 |
The current ICU build level version as an integer.
This value is for use by ICU clients. It defaults to 0.
Definition at line 84 of file uversion.h.
#define U_ICU_VERSION_MAJOR_NUM 4 |
The current ICU major version as an integer.
This value will change in the subsequent releases of ICU
Definition at line 65 of file uversion.h.
#define U_ICU_VERSION_MINOR_NUM 2 |
The current ICU minor version as an integer.
This value will change in the subsequent releases of ICU
Definition at line 71 of file uversion.h.
#define U_ICU_VERSION_PATCHLEVEL_NUM 1 |
The current ICU patchlevel version as an integer.
This value will change in the subsequent releases of ICU
Definition at line 77 of file uversion.h.
#define U_ICU_VERSION_SHORT "42" |
The current ICU library major/minor version as a string without dots, for library name suffixes.
This value will change in the subsequent releases of ICU
Definition at line 104 of file uversion.h.
#define U_ICU_VERSION_SUFFIX _4_2 |
Glued version suffix for renamers This value will change in the subsequent releases of ICU.
Definition at line 91 of file uversion.h.
#define U_MAX_VERSION_LENGTH 4 |
An ICU version consists of up to 4 numbers from 0..255.
Definition at line 109 of file uversion.h.
#define U_MAX_VERSION_STRING_LENGTH 20 |
The maximum length of an ICU version string.
Definition at line 119 of file uversion.h.
#define U_NAMESPACE_BEGIN |
This is used to begin a declaration of a public ICU C++ API.
If the compiler doesn't support namespaces, this does nothing.
Definition at line 183 of file uversion.h.
#define U_NAMESPACE_END |
This is used to end a declaration of a public ICU C++ API If the compiler doesn't support namespaces, this does nothing.
Definition at line 184 of file uversion.h.
#define U_NAMESPACE_QUALIFIER |
This is used to qualify that a function or class is part of the public ICU C++ API namespace.
If the compiler doesn't support namespaces, this does nothing.
Definition at line 186 of file uversion.h.
#define U_NAMESPACE_USE |
This is used to specify that the rest of the code uses the public ICU C++ API namespace.
If the compiler doesn't support namespaces, this does nothing.
Definition at line 185 of file uversion.h.
#define U_VERSION_DELIMITER '.' |
In a string, ICU version fields are delimited by dots.
Definition at line 114 of file uversion.h.
#define UCOL_BUILDER_VERSION 7 |
Builder code version.
When this is different, same tailoring might result in assigning different collation elements to code points version 2 was in ICU 1.8.1. added support for prefixes, tweaked canonical closure. However, the tailorings should probably get same CEs assigned 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 7 - ICU 3.4 - with the UCA 4.1 Thai tag is no longer processed, complete ignorables now break contractions Backward compatible with the old rules. This value may change in the subsequent releases of ICU
Definition at line 294 of file uversion.h.
#define UCOL_RUNTIME_VERSION 6 |
Collation runtime version (sort key generator, strcoll).
If the version is different, sortkeys for the same string could be different version 2 was in ICU 1.8.1. changed is: compression intervals, French secondary compression, generating quad level always when strength is quad or more version 4 - ICU 2.2 - tracking UCA changes, ignore completely ignorables in contractions, ignore primary ignorables after shifted version 5 - ICU 2.8 - changed implicit generation code version 6 - ICU 3.4 - with the UCA 4.1, Thai tag is no longer generated or used This value may change in the subsequent releases of ICU
Definition at line 280 of file uversion.h.
#define UCOL_TAILORINGS_VERSION 1 |
This is the version of the tailorings This value may change in the subsequent releases of ICU.
Definition at line 300 of file uversion.h.
typedef uint8_t UVersionInfo[U_MAX_VERSION_LENGTH] |
The binary form of a version on ICU APIs is an array of 4 uint8_t.
Definition at line 124 of file uversion.h.
int32_t u_compareVersions | ( | UVersionInfo | v1, | |
UVersionInfo | v2 | |||
) |
Compare two version numbers, v1 and v2, numerically.
Returns 0 if v1 == v2 Returns -1 if v1 < v2 (v1 is older, v2 is newer) Returns +1 if v1 > v2 (v1 is newer, v2 is older)
v1 | version to compare | |
v2 | version to compare |
void u_getVersion | ( | UVersionInfo | versionArray | ) |
Gets the ICU release version.
The version array stores the version information for ICU. For example, release "1.3.31.2" is then represented as 0x01031F02. Definition of this function lives in putil.c
versionArray | the version # information, the result will be filled in |
void u_versionFromString | ( | UVersionInfo | versionArray, | |
const char * | versionString | |||
) |
Parse a string with dotted-decimal version information and fill in a UVersionInfo structure with the result.
Definition of this function lives in putil.c
versionArray | The destination structure for the version information. | |
versionString | A string with dotted-decimal version information, with up to four non-negative number fields with values of up to 255 each. |
void u_versionFromUString | ( | UVersionInfo | versionArray, | |
const UChar * | versionString | |||
) |
Parse a Unicode string with dotted-decimal version information and fill in a UVersionInfo structure with the result.
Definition of this function lives in putil.c
versionArray | The destination structure for the version information. | |
versionString | A Unicode string with dotted-decimal version information, with up to four non-negative number fields with values of up to 255 each. |
void u_versionToString | ( | UVersionInfo | versionArray, | |
char * | versionString | |||
) |
Write a string with dotted-decimal version information according to the input UVersionInfo.
Definition of this function lives in putil.c
versionArray | The version information to be written as a string. | |
versionString | A string buffer that will be filled in with a string corresponding to the numeric version information in versionArray. The buffer size must be at least U_MAX_VERSION_STRING_LENGTH. |