ICU 54.1 54.1

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

- File List
- Globals

All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
usprep.h
Go to the documentation of this file.
1 /*
2 *******************************************************************************
3 *
4 * Copyright (C) 2003-2014, International Business Machines
5 * Corporation and others. All Rights Reserved.
6 *
7 *******************************************************************************
8 * file name: usprep.h
9 * encoding: US-ASCII
10 * tab size: 8 (not used)
11 * indentation:4
12 *
13 * created on: 2003jul2
14 * created by: Ram Viswanadha
15 */
16
17 #ifndef __USPREP_H__
18 #define __USPREP_H__
19
25 #include "unicode/utypes.h"
26 #include "unicode/localpointer.h"
27
60 #if !UCONFIG_NO_IDNA
61
62 #include "unicode/parseerr.h"
63
68 typedef struct UStringPrepProfile UStringPrepProfile;
69
70
77 #define USPREP_DEFAULT 0x0000
78
85 #define USPREP_ALLOW_UNASSIGNED 0x0001
86
93 typedef enum UStringPrepProfileType {
98 USPREP_RFC3491_NAMEPREP,
103 USPREP_RFC3530_NFS4_CS_PREP,
108 USPREP_RFC3530_NFS4_CS_PREP_CI,
113 USPREP_RFC3530_NFS4_CIS_PREP,
118 USPREP_RFC3530_NFS4_MIXED_PREP_PREFIX,
123 USPREP_RFC3530_NFS4_MIXED_PREP_SUFFIX,
128 USPREP_RFC3722_ISCSI,
133 USPREP_RFC3920_NODEPREP,
138 USPREP_RFC3920_RESOURCEPREP,
143 USPREP_RFC4011_MIB,
148 USPREP_RFC4013_SASLPREP,
153 USPREP_RFC4505_TRACE,
158 USPREP_RFC4518_LDAP,
164 USPREP_RFC4518_LDAP_CI
165 } UStringPrepProfileType;
166
182 U_STABLE UStringPrepProfile* U_EXPORT2
183 usprep_open(const char* path,
184 const char* fileName,
185 UErrorCode* status);
186
198 U_STABLE UStringPrepProfile* U_EXPORT2
199 usprep_openByType(UStringPrepProfileType type,
200 UErrorCode* status);
201
207 U_STABLE void U_EXPORT2
208 usprep_close(UStringPrepProfile* profile);
209
210 #if U_SHOW_CPLUSPLUS_API
211
212 U_NAMESPACE_BEGIN
213
223 U_DEFINE_LOCAL_OPEN_POINTER(LocalUStringPrepProfilePointer, UStringPrepProfile, usprep_close);
224
225 U_NAMESPACE_END
226
227 #endif
228
258 U_STABLE int32_t U_EXPORT2
259 usprep_prepare( const UStringPrepProfile* prep,
260 const UChar* src, int32_t srcLength,
261 UChar* dest, int32_t destCapacity,
262 int32_t options,
263 UParseError* parseError,
264 UErrorCode* status );
265
266
267 #endif /* #if !UCONFIG_NO_IDNA */
268
269 #endif