110 #define U_SHAPE_LENGTH_GROW_SHRINK 0
117 #define U_SHAPE_LAMALEF_RESIZE 0
124 #define U_SHAPE_LENGTH_FIXED_SPACES_NEAR 1
132 #define U_SHAPE_LAMALEF_NEAR 1
139 #define U_SHAPE_LENGTH_FIXED_SPACES_AT_END 2
147 #define U_SHAPE_LAMALEF_END 2
154 #define U_SHAPE_LENGTH_FIXED_SPACES_AT_BEGINNING 3
162 #define U_SHAPE_LAMALEF_BEGIN 3
177 #define U_SHAPE_LAMALEF_AUTO 0x10000
180 #define U_SHAPE_LENGTH_MASK 0x10003
184 #define U_SHAPE_LAMALEF_MASK 0x10003
187 #define U_SHAPE_TEXT_DIRECTION_LOGICAL 0
195 #define U_SHAPE_TEXT_DIRECTION_VISUAL_RTL 0
203 #define U_SHAPE_TEXT_DIRECTION_VISUAL_LTR 4
206 #define U_SHAPE_TEXT_DIRECTION_MASK 4
210 #define U_SHAPE_LETTERS_NOOP 0
213 #define U_SHAPE_LETTERS_SHAPE 8
216 #define U_SHAPE_LETTERS_UNSHAPE 0x10
225 #define U_SHAPE_LETTERS_SHAPE_TASHKEEL_ISOLATED 0x18
229 #define U_SHAPE_LETTERS_MASK 0x18
233 #define U_SHAPE_DIGITS_NOOP 0
240 #define U_SHAPE_DIGITS_EN2AN 0x20
247 #define U_SHAPE_DIGITS_AN2EN 0x40
260 #define U_SHAPE_DIGITS_ALEN2AN_INIT_LR 0x60
272 #define U_SHAPE_DIGITS_ALEN2AN_INIT_AL 0x80
275 #define U_SHAPE_DIGITS_RESERVED 0xa0
278 #define U_SHAPE_DIGITS_MASK 0xe0
282 #define U_SHAPE_DIGIT_TYPE_AN 0
285 #define U_SHAPE_DIGIT_TYPE_AN_EXTENDED 0x100
288 #define U_SHAPE_DIGIT_TYPE_RESERVED 0x200
291 #define U_SHAPE_DIGIT_TYPE_MASK 0x300
300 #define U_SHAPE_AGGREGATE_TASHKEEL 0x4000
302 #define U_SHAPE_AGGREGATE_TASHKEEL_NOOP 0
304 #define U_SHAPE_AGGREGATE_TASHKEEL_MASK 0x4000
312 #define U_SHAPE_PRESERVE_PRESENTATION 0x8000
318 #define U_SHAPE_PRESERVE_PRESENTATION_NOOP 0
320 #define U_SHAPE_PRESERVE_PRESENTATION_MASK 0x8000
334 #define U_SHAPE_SEEN_TWOCELL_NEAR 0x200000
337 #define U_SHAPE_SEEN_MASK 0x700000
351 #define U_SHAPE_YEHHAMZA_TWOCELL_NEAR 0x1000000
355 #define U_SHAPE_YEHHAMZA_MASK 0x3800000
366 #define U_SHAPE_TASHKEEL_BEGIN 0x40000
376 #define U_SHAPE_TASHKEEL_END 0x60000
385 #define U_SHAPE_TASHKEEL_RESIZE 0x80000
395 #define U_SHAPE_TASHKEEL_REPLACE_BY_TATWEEL 0xC0000
398 #define U_SHAPE_TASHKEEL_MASK 0xE0000
421 #define U_SHAPE_SPACES_RELATIVE_TO_TEXT_BEGIN_END 0x4000000
424 #define U_SHAPE_SPACES_RELATIVE_TO_TEXT_MASK 0x4000000
437 #define SHAPE_TAIL_NEW_UNICODE 0x8000000
440 #define SHAPE_TAIL_TYPE_MASK 0x8000000
unsigned int uint32_t
Define 64 bit limits.
int32_t u_shapeArabic(const UChar *source, int32_t sourceLength, UChar *dest, int32_t destSize, uint32_t options, UErrorCode *pErrorCode)
Shape Arabic text on a character basis.
uint16_t UChar
Define UChar to be wchar_t if that is 16 bits wide; always assumed to be unsigned.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Basic definitions for ICU, for both C and C++ APIs.
signed int int32_t
Define 64 bit limits.
#define U_STABLE
This is used to declare a function as a stable public ICU C API.