]> git.saurik.com Git - apple/icu.git/blob - icuSources/common/uinit.c
ICU-511.32.tar.gz
[apple/icu.git] / icuSources / common / uinit.c
1 /*
2 ******************************************************************************
3 * *
4 * Copyright (C) 2001-2012, International Business Machines *
5 * Corporation and others. All Rights Reserved. *
6 * *
7 ******************************************************************************
8 * file name: uinit.c
9 * encoding: US-ASCII
10 * tab size: 8 (not used)
11 * indentation:4
12 *
13 * created on: 2001July05
14 * created by: George Rhoten
15 */
16
17 #include "unicode/utypes.h"
18 #include "unicode/icuplug.h"
19 #include "unicode/uclean.h"
20 #include "cmemory.h"
21 #include "icuplugimp.h"
22 #include "ucln.h"
23 #include "ucnv_io.h"
24 #include "utracimp.h"
25
26 static void U_CALLCONV
27 initData(UErrorCode *status)
28 {
29 /*
30 * 2005-may-02
31 *
32 * ICU4C 3.4 (jitterbug 4497) hardcodes the data for Unicode character
33 * properties for APIs that want to be fast.
34 * Therefore, we need not load them here nor check for errors.
35 * Instead, we load the converter alias table to see if any ICU data
36 * is available.
37 * Users should really open the service objects they need and check
38 * for errors there, to make sure that the actual items they need are
39 * available.
40 */
41 #if !UCONFIG_NO_CONVERSION
42 ucnv_io_countKnownConverters(status);
43 #endif
44 }
45
46 /*
47 * ICU Initialization Function. Need not be called.
48 */
49 U_CAPI void U_EXPORT2
50 u_init(UErrorCode *status) {
51 UTRACE_ENTRY_OC(UTRACE_U_INIT);
52
53 /* initialize plugins */
54 uplug_init(status);
55 ucln_mutexedInit(initData, status);
56
57 UTRACE_EXIT_STATUS(*status);
58 }