z/OS Unicode Services User's Guide and Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Mapping of constants in C

z/OS Unicode Services User's Guide and Reference
SA38-0680-00

Also, cunhc contains a group of constants to establish the Collation rules. These are the constants.

Group 1 - Collation level:

These constants set up the Coll_Level, and must be specified individually.

DDA size:
#ifdef _LP64                                                            
 #define CUNBOPRM_DDA_REQ        8192                                   
#else                                                                   
 #define CUNBOPRM_DDA_REQ        4096                                   
#endif                                                                  
Collation Parameter Area versions:
#define CUNBOPRM_VERSION           1                                    
#define CUNBOPRM_VERSION2          2                                    
ALET Constant:
#define CUNBOPRM_ALET              0                                    
Collation Levels (also named Collation strengths):
#define CUNBOPRM_IDENTICAL         5                                    
#define CUNBOPRM_PRIMARY           1                                    
#define CUNBOPRM_SECONDARY         2                                    
#define CUNBOPRM_TERTIARY          3                                    
#define CUNBOPRM_QUATERNARY        4                                    
#define CUNBOPRM_QUINARY           5                                    
Collation Mask:
#define CUNBOPRM_MASK_DEFAULT '\xE0'  /* naVCE+Forward+nSK+nNorm     */ 
Used for Variable_Opt field:
#define CUNBOPRM_MASK_SHIFTED                                 0         
#define CUNBOPRM_MASK_BLANKED                                 1         
#define CUNBOPRM_MASK_nIGNORABLE                              2         
#define CUNBOPRM_MASK_STRIMMED                                3         
#define CUNBOPRM_MASK_NAVCE                                  14          
Used for Cmp_Order field:
#define CUNBOPRM_MASK_FORWARD                                 0         
#define CUNBOPRM_MASK_BACKWARD                                1          
Used for SKey_Opt field:
#define CUNBOPRM_MASK_nSK                                     0         
#define CUNBOPRM_MASK_SK                                      1         
Used for Norm_Type field:
#define CUNBOPRM_MASK_nNORM                                   0         
#define CUNBOPRM_MASK_NFD                                     1         
#define CUNBOPRM_MASK_NFC                                     2         
#define CUNBOPRM_MASK_NFKD                                    3         
#define CUNBOPRM_MASK_NFKC                                    4         
Used for SKey_and_Cmp field:
#define CUNBOPRM_MASK_SKey_and_Cmp_OFF                        0         
#define CUNBOPRM_MASK_SKey_and_Cmp_ON                         1         
Used for Case_First field:
#define CUNBOPRM_CASE_OPTIONS_Case_First_Default              0         
#define CUNBOPRM_CASE_OPTIONS_Case_First_UPPER                1         
#define CUNBOPRM_CASE_OPTIONS_Case_First_lower                2         
Used for Case_Level field:
#define CUNBOPRM_CASE_OPTIONS_Case_Level_OFF                  0         
#define CUNBOPRM_CASE_OPTIONS_Case_Level_ON                   1         
Used for Hiragana field:
#define CUNBOPRM_CASE_SPECIAL_Hiragana_OFF                    0         
#define CUNBOPRM_CASE_SPECIAL_Hiragana_ON                     1         
Used for Handle bit fields:
#define CUNBOPRM_FLAG1_DEFAULT                  '\x00'                  
#define CUNBOPRM_FLAG1_Ret_If_Inv_Handle_ON     '\x80'                  
#define CUNBOPRM_FLAG1_Get_New_Handle_ON        '\x40'                  
Null Handle:
#define CUNBOPRM_EMPTY_COLLHDL '\0','\0','\0','\0','\0','\0','\0',\     
              '\0','\0','\0','\0','\0','\0','\0','\0','\0',\            
              '\0','\0','\0','\0','\0','\0','\0','\0',\                 
              '\0','\0','\0','\0','\0','\0','\0','\0',\                 
              '\0','\0','\0','\0','\0','\0','\0','\0',\                 
              '\0','\0','\0','\0','\0','\0','\0','\0',\                 
              '\0','\0','\0','\0','\0','\0','\0','\0',\                 
              '\0','\0','\0','\0','\0','\0','\0','\0'                   
UCA (Unicode Collation Algorithm) versions:
#define CUNBOPRM_UCAempty                       '\x00'                  
#define CUNBOPRM_UCA301                         '\x01'                  
#define CUNBOPRM_UCA400R1                       '\x02'                  
#define CUNBOPRM_UCA410                         '\x03'
#define CUNBOPRM_UCA600                         '\x04'                  

There is also a C example in the CUNSOSMC member in SYS1.SAMPLIB. For further sample information, see Sample programs.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014