home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 April / Chip_1997-04_cd.bin / prezent / cb / data.z / MBSTRING.H < prev    next >
C/C++ Source or Header  |  1997-01-16  |  12KB  |  223 lines

  1. /*  mbstring.h
  2.  
  3.     Definitions for MBCS string functions.
  4.  
  5. */
  6.  
  7. /*
  8.  *      C/C++ Run Time Library - Version 7.0
  9.  *
  10.  *      Copyright (c) 1992, 1996 by Borland International
  11.  *      All Rights Reserved.
  12.  *
  13.  */
  14.  
  15. #ifndef __MBSTRING_H
  16. #define __MBSTRING_H
  17.  
  18. #ifdef _MSC
  19. #if !defined(__STRING_H)
  20. #include <string.h>
  21. #endif
  22. #endif
  23.  
  24. #if !defined(___DEFS_H)
  25. #include <_defs.h>
  26. #endif
  27.  
  28. #ifndef NULL
  29. #include <_null.h>
  30. #endif
  31.  
  32. #include <mbctype.h>
  33.  
  34. #ifndef _SIZE_T
  35. #define _SIZE_T
  36. typedef unsigned size_t;
  37. #endif
  38.  
  39. #ifdef __cplusplus
  40. extern "C" {
  41. #endif
  42.  
  43. unsigned char _FAR * _RTLENTRYF _mbscpy   (unsigned char _FAR *__dest, const unsigned char _FAR *__src);
  44. unsigned char _FAR * _RTLENTRYF _mbscat   (unsigned char _FAR *__dest, const unsigned char _FAR *__src);
  45. unsigned char _FAR * _RTLENTRYF _mbsncpy  (unsigned char _FAR *__dest, const unsigned char _FAR *__src, size_t __maxlen);
  46. unsigned char _FAR * _RTLENTRYF _mbsncat  (unsigned char _FAR *__dest, const unsigned char _FAR *__src, size_t __maxlen);
  47. unsigned char _FAR * _RTLENTRYF _mbsnbcpy (unsigned char _FAR *__dest, const unsigned char _FAR *__src, size_t __maxlen);
  48. unsigned char _FAR * _RTLENTRYF _mbsnbcat (unsigned char _FAR *__dest, const unsigned char _FAR *__src, size_t __maxlen);
  49. void                 _RTLENTRYF _mbccpy   (unsigned char _FAR *__dest, const unsigned char _FAR *__src);
  50. unsigned char _FAR * _RTLENTRYF _mbsdup   (const unsigned char _FAR *__s);
  51. unsigned char _FAR * _RTLENTRYF _mbschr   (const unsigned char _FAR *__s, unsigned int __c);
  52. unsigned char _FAR * _RTLENTRYF _mbsrchr  (const unsigned char _FAR *__s, unsigned int __c);
  53. size_t               _RTLENTRY  _mbscspn  (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2);
  54. size_t               _RTLENTRY  _mbsspn   (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2);
  55. unsigned char _FAR * _RTLENTRYF _mbspbrk  (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2);
  56. unsigned char _FAR * _RTLENTRY  _mbsspnp  (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2);
  57. unsigned char _FAR * _RTLENTRYF _mbsinc   (const unsigned char _FAR *__p);
  58. unsigned char _FAR * _RTLENTRYF _mbsninc  (const unsigned char _FAR *__p, size_t __n);
  59. unsigned char _FAR * _RTLENTRYF _mbsdec   (const unsigned char _FAR *__s, const unsigned char _FAR *__p);
  60. unsigned char _FAR * _RTLENTRYF _mbstok   (unsigned char _FAR *__s1, const unsigned char _FAR *__s2);
  61. unsigned char _FAR * _RTLENTRY  _mbsrev   (unsigned char _FAR *__s);
  62. unsigned char _FAR * _RTLENTRY  _mbsstr   (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2);
  63. int                  _RTLENTRYF _mbscmp   (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2);
  64. int                  _RTLENTRYF _mbsicmp  (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2);
  65. int                  _RTLENTRYF _mbsncmp  (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2, size_t __maxlen);
  66. int                  _RTLENTRYF _mbsnicmp (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2, size_t __maxlen);
  67. int                  _RTLENTRYF _mbsnbcmp (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2, size_t __maxlen);
  68. int                  _RTLENTRYF _mbsnbicmp(const unsigned char _FAR *__s1, const unsigned char _FAR *__s2, size_t __maxlen);
  69. size_t               _RTLENTRYF _mbslen   (const unsigned char _FAR *__s);
  70. size_t               _RTLENTRYF _mbclen   (const unsigned char _FAR *__s);
  71. unsigned char _FAR * _RTLENTRYF _mbsupr   (unsigned char _FAR *__s);
  72. unsigned char _FAR * _RTLENTRYF _mbslwr   (unsigned char _FAR *__s);
  73. unsigned char _FAR * _RTLENTRY  _mbsset   (unsigned char _FAR *__s, unsigned int __c);
  74. unsigned char _FAR * _RTLENTRY  _mbsnset  (unsigned char _FAR *__s, unsigned int __c, size_t __maxlen);
  75. unsigned char _FAR * _RTLENTRYF _mbsnbset (unsigned char _FAR *__s, unsigned int __c, size_t __maxlen);
  76. size_t               _RTLENTRYF _mbsnccnt (const unsigned char _FAR *__s, size_t __nbyte);
  77. size_t               _RTLENTRYF _mbsnbcnt (const unsigned char _FAR *__s, size_t __nmbc);
  78. unsigned int         _RTLENTRYF _mbsnextc (const unsigned char _FAR *__p);
  79. int                  _RTLENTRYF _mbbtype  (unsigned char __c, int __mode);
  80. int                  _RTLENTRYF _mbsbtype (const unsigned char _FAR *__s, size_t __nbyte);
  81.  
  82. #ifndef __MBCS_LEADTRAIL
  83. #define __MBCS_LEADTRAIL
  84. int _RTLENTRY _ismbblead  (unsigned int __c);
  85. int _RTLENTRY _ismbbtrail (unsigned int __c);
  86. int _RTLENTRY _ismbslead  (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2);
  87. int _RTLENTRY _ismbstrail (const unsigned char _FAR *__s1, const unsigned char _FAR *__s2);
  88.  
  89. #if 0  /*  exclude 16 bit functions  */
  90. #if !defined(__FLAT__)
  91. /* Model-independent functions */
  92. #if !__STDC__
  93. int _RTLENTRY __far _fismbslead (const unsigned char __far *__s1, const unsigned char __far *__s2);
  94. int _RTLENTRY __far _fismbstrail(const unsigned char __far *__s1, const unsigned char __far *__s2);
  95. #endif  /* ! __STDC__ */
  96. #endif  /* ! __FLAT__ */
  97. #endif   /* exclude 16 bit functions  */ 
  98.  
  99. #endif  /* ! __MBCS_LEADTRAIL */
  100.  
  101. #define _mbccmp(__s1, __s2) _mbsncmp((__s1),(__s2),1)
  102.  
  103.  
  104. #if 0  /*  exclude 16 bit functions  */
  105. #if !defined(__FLAT__)
  106.  
  107. /* Model-independent functions */
  108. #if !__STDC__
  109.  
  110. unsigned char __far * _RTLENTRY __far _fmbscpy   (unsigned char __far *__dest, const unsigned char __far *__src);
  111. unsigned char __far * _RTLENTRY __far _fmbscat   (unsigned char __far *__dest, const unsigned char __far *__src);
  112. unsigned char __far * _RTLENTRY __far _fmbsncpy  (unsigned char __far *__dest, const unsigned char __far *__src, size_t __maxlen);
  113. unsigned char __far * _RTLENTRY __far _fmbsncat  (unsigned char __far *__dest, const unsigned char __far *__src, size_t __maxlen);
  114. unsigned char __far * _RTLENTRY __far _fmbsnbcpy (unsigned char __far *__dest, const unsigned char __far *__src, size_t __maxlen);
  115. unsigned char __far * _RTLENTRY __far _fmbsnbcat (unsigned char __far *__dest, const unsigned char __far *__src, size_t __maxlen);
  116. void                  _RTLENTRY __far _fmbccpy   (unsigned char __far *__dest, const unsigned char __far *__src);
  117. unsigned char __far * _RTLENTRY __far _fmbsdup   (const unsigned char __far *__s);
  118. unsigned char __far * _RTLENTRY __far _fmbschr   (const unsigned char __far *__s, unsigned int __c);
  119. unsigned char __far * _RTLENTRY __far _fmbsrchr  (const unsigned char __far *__s, unsigned int __c);
  120. size_t                _RTLENTRY __far _fmbscspn  (const unsigned char __far *__s1, const unsigned char __far *__s2);
  121. size_t                _RTLENTRY __far _fmbsspn   (const unsigned char __far *__s1, const unsigned char __far *__s2);
  122. unsigned char __far * _RTLENTRY __far _fmbspbrk  (const unsigned char __far *__s1, const unsigned char __far *__s2);
  123. unsigned char __far * _RTLENTRY __far _fmbsspnp  (const unsigned char __far *__s1, const unsigned char __far *__s2);
  124. unsigned char __far * _RTLENTRY __far _fmbsinc   (const unsigned char __far *__p);
  125. unsigned char __far * _RTLENTRY __far _fmbsninc  (const unsigned char __far *__p, size_t __n);
  126. unsigned char __far * _RTLENTRY __far _fmbsdec   (const unsigned char __far *__s, const unsigned char __far *__p);
  127. unsigned char __far * _RTLENTRY __far _fmbstok   (unsigned char __far *__s1, const unsigned char __far *__s2);
  128. unsigned char __far * _RTLENTRY __far _fmbsrev   (unsigned char __far *__s);
  129. unsigned char __far * _RTLENTRY __far _fmbsstr   (const unsigned char __far *__s1, const unsigned char __far *__s2);
  130. int                   _RTLENTRY __far _fmbscmp   (const unsigned char __far *__s1, const unsigned char __far *__s2);
  131. int                   _RTLENTRY __far _fmbsicmp  (const unsigned char __far *__s1, const unsigned char __far *__s2);
  132. int                   _RTLENTRY __far _fmbsncmp  (const unsigned char __far *__s1, const unsigned char __far *__s2, size_t __maxlen);
  133. int                   _RTLENTRY __far _fmbsnicmp (const unsigned char __far *__s1, const unsigned char __far *__s2, size_t __maxlen);
  134. int                   _RTLENTRY __far _fmbsnbcmp (const unsigned char __far *__s1, const unsigned char __far *__s2, size_t __maxlen);
  135. int                   _RTLENTRY __far _fmbsnbicmp(const unsigned char __far *__s1, const unsigned char __far *__s2, size_t __maxlen);
  136. int                   _RTLENTRY __far _fmbccmp   (const unsigned char __far *__s1, const unsigned char __far *__s2);
  137. size_t                _RTLENTRY __far _fmbslen   (const unsigned char __far *__s);
  138. size_t                _RTLENTRY __far _fmbclen   (const unsigned char __far *__s);
  139. unsigned char __far * _RTLENTRY __far _fmbsupr   (unsigned char __far *__s);
  140. unsigned char __far * _RTLENTRY __far _fmbslwr   (unsigned char __far *__s);
  141. unsigned char __far * _RTLENTRY __far _fmbsset   (unsigned char __far *__s, unsigned int __c);
  142. unsigned char __far * _RTLENTRY __far _fmbsnset  (unsigned char __far *__s, unsigned int __c, size_t __maxlen);
  143. unsigned char __far * _RTLENTRY __far _fmbsnbset (unsigned char __far *__s, unsigned int __c, size_t __maxlen);
  144. size_t                _RTLENTRY __far _fmbsnccnt (const unsigned char __far *__s, size_t __nbyte);
  145. size_t                _RTLENTRY __far _fmbsnbcnt (const unsigned char __far *__s, size_t __nmbc);
  146. unsigned int          _RTLENTRY __far _fmbsnextc (const unsigned char __far *__p);
  147. int                   _RTLENTRY __far _fmbbtype  (unsigned char __c, int __mode);
  148. int                   _RTLENTRY __far _fmbsbtype (const unsigned char __far *__s, size_t __nbyte);
  149.  
  150. #define _fmbccmp(__s1, __s2) _fmbsncmp((__s1),(__s2),1)
  151.  
  152. #endif  /* ! __STDC__ */
  153.  
  154. #endif  /* ! __FLAT__ */
  155.  
  156. #endif #  /*  exclude 16 bit functions  */
  157.  
  158.  
  159. #ifdef __cplusplus
  160. }
  161. #endif
  162.  
  163.  
  164. #ifdef __cplusplus
  165. extern "C" {
  166. #endif
  167. int _RTLENTRY _ismbclegal(unsigned int __c);
  168. int _RTLENTRY _ismbcalpha(unsigned int __c);
  169. int _RTLENTRY _ismbcdigit(unsigned int __c);
  170. int _RTLENTRY _ismbcprint(unsigned int __c);
  171. int _RTLENTRY _ismbcspace(unsigned int __c);
  172. int _RTLENTRY _ismbclower(unsigned int __c);
  173. int _RTLENTRY _ismbcupper(unsigned int __c);
  174. unsigned int _RTLENTRYF _mbctolower(unsigned int __c);
  175. unsigned int _RTLENTRYF _mbctoupper(unsigned int __c);
  176. #ifdef __cplusplus
  177. }
  178. #endif
  179.  
  180.  
  181. /* Japanese DBCS special functions */
  182. #ifdef __cplusplus
  183. extern "C" {
  184. #endif
  185. int _RTLENTRY _ismbchira  (unsigned int __c);
  186. int _RTLENTRY _ismbckata  (unsigned int __c);
  187. int _RTLENTRY _ismbcl0    (unsigned int __c);
  188. int _RTLENTRY _ismbcl1    (unsigned int __c);
  189. int _RTLENTRY _ismbcl2    (unsigned int __c);
  190. int _RTLENTRY _ismbcsymbol(unsigned int __c);
  191. unsigned int _RTLENTRYF _mbctohira  (unsigned int __c);
  192. unsigned int _RTLENTRYF _mbctokata  (unsigned int __c);
  193. unsigned int _RTLENTRYF _mbctombb   (unsigned int __c);
  194. unsigned int _RTLENTRYF _mbbtombc   (unsigned int __c);
  195. unsigned int _RTLENTRYF _mbcjistojms(unsigned int __c);
  196. unsigned int _RTLENTRYF _mbcjmstojis(unsigned int __c);
  197. #ifdef __cplusplus
  198. }
  199. #endif
  200.  
  201.  
  202. /* --- Newly added functions ---- to be placed appropriately --- */
  203.  
  204. #ifdef __cplusplus
  205. extern "C" {
  206. #endif
  207.  
  208. int _RTLENTRYF _mbscoll( const unsigned char *__S1, const unsigned char *__S2 );
  209. int _RTLENTRYF _mbsicoll( const unsigned char *__S1, const unsigned char *__S2 );
  210. int _RTLENTRYF _mbsncoll( const unsigned char *__S1, const unsigned char *__S2, size_t n );
  211. int _RTLENTRYF _mbsnicoll( const unsigned char *__S1, const unsigned char *__S2, size_t n );
  212. int _RTLENTRYF _mbsnbcoll( const unsigned char *__S1, const unsigned char *__S2, size_t n );
  213. int _RTLENTRYF _mbsnbicoll( const unsigned char *__S1, const unsigned char *__S2, size_t n );
  214.  
  215. int _RTLENTRYF _ismbcalnum( unsigned int __c );
  216. int _RTLENTRYF _ismbcgraph( unsigned int __c );
  217. int _RTLENTRYF _ismbcpunct( unsigned int __c );
  218. #ifdef __cplusplus
  219. }
  220. #endif
  221.  
  222. #endif /* __MBSTRING_H */
  223.