]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/test/cintltst/cbiditst.h
ICU-64252.0.1.tar.gz
[apple/icu.git] / icuSources / test / cintltst / cbiditst.h
index 92837e0bc19caf3abc50424faeee77f9cb68ee5d..2044458ee89accc4a6f20f454bdf4baa9e7a939e 100644 (file)
@@ -1,10 +1,12 @@
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
 /********************************************************************
 /********************************************************************
- * COPYRIGHT: 
- * Copyright (c) 1997-2001, International Business Machines Corporation and
+ * COPYRIGHT:
+ * Copyright (c) 1997-2016, International Business Machines Corporation and
  * others. All Rights Reserved.
  ********************************************************************/
 /*   file name:  cbiditst.h
  * others. All Rights Reserved.
  ********************************************************************/
 /*   file name:  cbiditst.h
-*   encoding:   US-ASCII
+*   encoding:   UTF-8
 *   tab size:   8 (not used)
 *   indentation:4
 *
 *   tab size:   8 (not used)
 *   indentation:4
 *
 #include "unicode/uchar.h"
 #include "unicode/ubidi.h"
 
 #include "unicode/uchar.h"
 #include "unicode/ubidi.h"
 
-#ifdef XP_CPLUSPLUS
+#ifdef __cplusplus
 extern "C" {
 #endif
 
 #define MAX_STRING_LENGTH 200
 
 extern "C" {
 #endif
 
 #define MAX_STRING_LENGTH 200
 
-/* length of an array */
-#define ARRAY_LENGTH(array) (sizeof(array)/sizeof(array[0]))
-
 /*  Comparing the description of the BiDi algorithm with this implementation
     is easier with the same names for the BiDi types in the code as there.
     See UCharDirection in uchar.h .
 */
 /*  Comparing the description of the BiDi algorithm with this implementation
     is easier with the same names for the BiDi types in the code as there.
     See UCharDirection in uchar.h .
 */
-enum { 
-    L=  U_LEFT_TO_RIGHT,
-    R=  U_RIGHT_TO_LEFT,
-    EN= U_EUROPEAN_NUMBER,
-    ES= U_EUROPEAN_NUMBER_SEPARATOR,
-    ET= U_EUROPEAN_NUMBER_TERMINATOR,
-    AN= U_ARABIC_NUMBER,
-    CS= U_COMMON_NUMBER_SEPARATOR,
-    B=  U_BLOCK_SEPARATOR,
-    S=  U_SEGMENT_SEPARATOR,
-    WS= U_WHITE_SPACE_NEUTRAL,
-    ON= U_OTHER_NEUTRAL,
-    LRE=U_LEFT_TO_RIGHT_EMBEDDING,
-    LRO=U_LEFT_TO_RIGHT_OVERRIDE,
-    AL= U_RIGHT_TO_LEFT_ARABIC,
-    RLE=U_RIGHT_TO_LEFT_EMBEDDING,
-    RLO=U_RIGHT_TO_LEFT_OVERRIDE,
-    PDF=U_POP_DIRECTIONAL_FORMAT,
-    NSM=U_DIR_NON_SPACING_MARK,
-    BN= U_BOUNDARY_NEUTRAL,
-    dirPropCount
-};
+#define L   U_LEFT_TO_RIGHT
+#define R   U_RIGHT_TO_LEFT
+#define EN  U_EUROPEAN_NUMBER
+#define ES  U_EUROPEAN_NUMBER_SEPARATOR
+#define ET  U_EUROPEAN_NUMBER_TERMINATOR
+#define AN  U_ARABIC_NUMBER
+#define CS  U_COMMON_NUMBER_SEPARATOR
+#define B   U_BLOCK_SEPARATOR
+#define S   U_SEGMENT_SEPARATOR
+#define WS  U_WHITE_SPACE_NEUTRAL
+#define ON  U_OTHER_NEUTRAL
+#define LRE U_LEFT_TO_RIGHT_EMBEDDING
+#define LRO U_LEFT_TO_RIGHT_OVERRIDE
+#define AL  U_RIGHT_TO_LEFT_ARABIC
+#define RLE U_RIGHT_TO_LEFT_EMBEDDING
+#define RLO U_RIGHT_TO_LEFT_OVERRIDE
+#define PDF U_POP_DIRECTIONAL_FORMAT
+#define NSM U_DIR_NON_SPACING_MARK
+#define BN  U_BOUNDARY_NEUTRAL
+#define FSI U_FIRST_STRONG_ISOLATE
+#define LRI U_LEFT_TO_RIGHT_ISOLATE
+#define RLI U_RIGHT_TO_LEFT_ISOLATE
+#define PDI U_POP_DIRECTIONAL_ISOLATE
 
 
-extern const char *
-dirPropNames[dirPropCount];
+extern const char * const
+dirPropNames[U_CHAR_DIRECTION_COUNT];
 
 
-extern const UChar
-charFromDirProp[dirPropCount];
+extern UChar
+charFromDirProp[U_CHAR_DIRECTION_COUNT];
 
 typedef struct {
     const uint8_t *text;
 
 typedef struct {
     const uint8_t *text;
@@ -72,13 +72,13 @@ typedef struct {
     const uint8_t *visualMap;
 } BiDiTestData;
 
     const uint8_t *visualMap;
 } BiDiTestData;
 
-extern BiDiTestData
+extern const BiDiTestData
 tests[];
 
 tests[];
 
-extern int
+extern const int
 bidiTestCount;
 
 bidiTestCount;
 
-#ifdef XP_CPLUSPLUS
+#ifdef __cplusplus
 }
 #endif
 
 }
 #endif