home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 October / Chip_1997-10_cd.bin / tema / sybase / powerj / h.z / JSTRING.H < prev    next >
C/C++ Source or Header  |  1996-11-06  |  7KB  |  143 lines

  1. /*
  2.  *  jstring.h    Japanese DBCS functions
  3.  *
  4.  *  Copyright by WATCOM International Corp. 1988-1996.  All rights reserved.
  5.  */
  6. #ifndef _JSTRING_H_INCLUDED
  7. #define _JSTRING_H_INCLUDED
  8. #if !defined(_ENABLE_AUTODEPEND)
  9.   #pragma read_only_file;
  10. #endif
  11. #ifdef __cplusplus
  12. extern "C" {
  13. #endif
  14.  
  15. #ifndef _COMDEF_H_INCLUDED
  16.  #include <_comdef.h>
  17. #endif
  18.  
  19. #ifndef _SIZE_T_DEFINED
  20. #define _SIZE_T_DEFINED
  21. #define _SIZE_T_DEFINED_
  22. typedef unsigned size_t;
  23. #endif
  24.  
  25. #ifndef NULL
  26.  #if defined(__SMALL__) || defined(__MEDIUM__) || defined(__386__) || defined(__AXP__) || defined(__PPC__)
  27.   #define NULL   0
  28.  #else
  29.   #define NULL   0L
  30.  #endif
  31. #endif
  32.  
  33. /*
  34.  * definitions for chkctype(), nthctype()
  35.  */
  36.  
  37. #define CT_ANK    0    /* ANK */
  38. #define CT_KJ1    1    /* è┐ÄÜæµéPâoâCâg */
  39. #define CT_KJ2    2    /* è┐ÄÜæµéQâoâCâg */
  40. #define CT_ILGL -1    /* âCâèü[âKâï */
  41.  
  42. typedef unsigned char JCHAR;    /* è┐ÄÜâJâiùpéâéêéüéÆ(char for Japan) */
  43. typedef JCHAR         *JSTRING;    /* è┐ÄÜò╢ÄÜù±(string for Japan) */
  44. typedef JCHAR _WCFAR *FJSTRING;    /* è┐ÄÜ far ò╢ÄÜù±(far string for Japan) */
  45. typedef unsigned short JMOJI;    /* è┐ÄÜâRü[âh(2byte code) */
  46.  
  47. /*
  48.  *
  49.  *     è┐ÄÜÅêù¥è╓Éöùpâvâìâgâ^âCâvÉΘî╛
  50.  *
  51.  */
  52.  
  53. _WCRTLINK extern size_t btom( const JCHAR *__s, size_t __nb );
  54. _WCRTLINK extern size_t mtob( const JCHAR *__s, size_t __nm );
  55.  
  56. _WCRTLINK extern JMOJI hantozen( JMOJI __c );
  57. _WCRTLINK extern JMOJI zentohan( JMOJI __c );
  58.  
  59. _WCRTLINK extern int chkctype( JCHAR __c, int __n );
  60. _WCRTLINK extern int nthctype( const JCHAR *__s, size_t __n );
  61.  
  62. _WCRTLINK extern JMOJI jtolower( JMOJI __c );
  63. _WCRTLINK extern JMOJI jtoupper( JMOJI __c );
  64. _WCRTLINK extern JMOJI jtohira( JMOJI __c );
  65. _WCRTLINK extern JMOJI jtokata( JMOJI __c );
  66.  
  67. _WCRTLINK extern int jisalpha( JMOJI __c );
  68. _WCRTLINK extern int jisdigit( JMOJI __c );
  69. _WCRTLINK extern int jishira( JMOJI __c );
  70. _WCRTLINK extern int jiskana( JMOJI __c );
  71. _WCRTLINK extern int jiskigou( JMOJI __c );
  72. _WCRTLINK extern int jisl0( JMOJI __c );
  73. _WCRTLINK extern int jisl1( JMOJI __c );
  74. _WCRTLINK extern int jisl2( JMOJI __c );
  75. _WCRTLINK extern int jislower( JMOJI __c );
  76. _WCRTLINK extern int jisprint( JMOJI __c );
  77. _WCRTLINK extern int jisspace( JMOJI __c );
  78. _WCRTLINK extern int jisupper( JMOJI __c );
  79. _WCRTLINK extern int jiszen( JMOJI __c );
  80.  
  81. _WCRTLINK extern JSTRING jgetmoji( const JCHAR *__s, JMOJI *__c );
  82. _WCRTLINK extern unsigned short jistojms( unsigned short __c );
  83. _WCRTLINK extern unsigned short jmstojis( unsigned short __msc );
  84. _WCRTLINK extern void jperror( const char *__msg );
  85. _WCRTLINK extern JSTRING jputmoji( JCHAR *__s, JMOJI __c );
  86. _WCRTLINK extern JSTRING jstradv( const JCHAR *__s, size_t __n );
  87. _WCRTLINK extern JSTRING jstrcat( JCHAR *__to, const JCHAR *__from );
  88. _WCRTLINK extern JSTRING jstrchr( const JCHAR *__s, JMOJI __c );
  89. _WCRTLINK extern int jstrcmp( const JCHAR *__s1, const JCHAR *__s2 );
  90. _WCRTLINK extern size_t jstrcspn( const JCHAR *__s1, const JCHAR *__s2 );
  91. _WCRTLINK extern unsigned char *jstrerror( int __errnum );
  92. _WCRTLINK extern int jstricmp( const JCHAR *__s1, const JCHAR *__s2 );
  93. _WCRTLINK extern size_t jstrlen( const JCHAR *__s );
  94. _WCRTLINK extern JSTRING jstrlwr( JCHAR *__s );
  95. _WCRTLINK extern JSTRING jstrmatch( const JCHAR *__s1, const JCHAR *__s2 );
  96. _WCRTLINK extern JSTRING jstrncat( JCHAR *__to, const JCHAR *__from, size_t __n );
  97. _WCRTLINK extern int jstrncmp( const JCHAR *__s1, const JCHAR *__s2, size_t __n );
  98. _WCRTLINK extern JSTRING jstrncpy( JCHAR *__to, const JCHAR *__from, size_t __n );
  99. _WCRTLINK extern int jstrnicmp( const JCHAR *__s1, const JCHAR *__s2, size_t __n );
  100. _WCRTLINK extern JSTRING jstrnset( JCHAR *__s, JMOJI __c, size_t __n );
  101. _WCRTLINK extern JSTRING jstrrchr( const JCHAR *__s, JMOJI __c );
  102. _WCRTLINK extern JSTRING jstrrev( JCHAR *__s );
  103. _WCRTLINK extern JSTRING jstrset( JCHAR *__s, JMOJI __c );
  104. _WCRTLINK extern JSTRING jstrskip( const JCHAR *__s1, const JCHAR *__s2 );
  105. _WCRTLINK extern size_t jstrspn( const JCHAR *__s1, const JCHAR *__s2 );
  106. _WCRTLINK extern JSTRING jstrstr( const JCHAR *__s1, const JCHAR *__s2 );
  107. _WCRTLINK extern JSTRING jstrtok( JCHAR *__targ, const JCHAR *__brk );
  108. _WCRTLINK extern JSTRING jstrupr( JCHAR *__s );
  109. /* ----------- memory model independent equivalents ----------- */
  110. _WCRTLINK extern size_t _WCI86FAR _fbtom( const JCHAR _WCFAR *__s, size_t __nb );
  111. _WCRTLINK extern size_t _WCI86FAR _fmtob( const JCHAR _WCFAR *__s, size_t __nm );
  112. _WCRTLINK extern int _WCI86FAR _fnthctype( const JCHAR _WCFAR *__string, size_t __n );
  113. _WCRTLINK extern FJSTRING _WCI86FAR _fjgetmoji( const JCHAR _WCFAR *__s, JMOJI _WCFAR *__c );
  114. _WCRTLINK extern FJSTRING _WCI86FAR _fjputmoji( JCHAR _WCFAR *__s, JMOJI __c );
  115. _WCRTLINK extern FJSTRING _WCI86FAR _fjstradv( const JCHAR _WCFAR *__s, size_t __n );
  116. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrcat( JCHAR _WCFAR *__to, const JCHAR _WCFAR *__from );
  117. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrchr( const JCHAR _WCFAR *__s, JMOJI __c );
  118. _WCRTLINK extern int _WCI86FAR _fjstrcmp( const JCHAR _WCFAR *__s1, const JCHAR _WCFAR *__s2 );
  119. _WCRTLINK extern size_t _WCI86FAR _fjstrcspn( const JCHAR _WCFAR *__s1, const JCHAR _WCFAR *__s2 );
  120. _WCRTLINK extern int _WCI86FAR _fjstricmp( const JCHAR _WCFAR *__s1, const JCHAR _WCFAR *__s2 );
  121. _WCRTLINK extern size_t _WCI86FAR _fjstrlen( const JCHAR _WCFAR *__s );
  122. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrlwr( JCHAR _WCFAR *__s );
  123. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrmatch( const JCHAR _WCFAR *__s1, const JCHAR _WCFAR *__s2 );
  124. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrncat( JCHAR _WCFAR *__to, const JCHAR _WCFAR *__from, size_t __n );
  125. _WCRTLINK extern int _WCI86FAR _fjstrncmp( const JCHAR _WCFAR *__s1, const JCHAR _WCFAR *__s2, size_t __n );
  126. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrncpy( JCHAR _WCFAR *__to, const JCHAR _WCFAR *__from, size_t __n );
  127. _WCRTLINK extern int _WCI86FAR _fjstrnicmp( const JCHAR _WCFAR *__s1, const JCHAR _WCFAR *__s2, size_t __n );
  128. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrnset( JCHAR _WCFAR *__s, JMOJI __c, size_t __n );
  129. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrrchr( const JCHAR _WCFAR *__s, JMOJI __c );
  130. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrrev( JCHAR _WCFAR *__s );
  131. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrset( JCHAR _WCFAR *__s, JMOJI __c );
  132. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrskip( const JCHAR _WCFAR *__s1, const JCHAR _WCFAR *__s2 );
  133. _WCRTLINK extern size_t _WCI86FAR _fjstrspn( const JCHAR _WCFAR *__s1, const JCHAR _WCFAR *__s2 );
  134. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrstr( const JCHAR _WCFAR *__s1, const JCHAR _WCFAR *__s2 );
  135. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrtok( JCHAR _WCFAR *__targ, const JCHAR _WCFAR *__brk );
  136. _WCRTLINK extern FJSTRING _WCI86FAR _fjstrupr( JCHAR _WCFAR *__s );
  137. /* ----------- end of memory model independent equivalents ----------- */
  138.  
  139. #ifdef __cplusplus
  140. };
  141. #endif
  142. #endif
  143.