Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanny Smith <dannysmith@users.sourceforge.net>2002-04-20 17:50:04 +0400
committerDanny Smith <dannysmith@users.sourceforge.net>2002-04-20 17:50:04 +0400
commitcb699ad770a17131a3c0b57a1f7af88e0a1e526e (patch)
treeafd3e383eb99d4c0d43e8e1cb03b828d4e6dc212 /winsup/mingw/include/mbctype.h
parent97b6ae270d84b06016651819158a03237602b07b (diff)
* include/mbstring.h: New file.
* include/mbctype.h: New file. Correct some email address dyslexia.
Diffstat (limited to 'winsup/mingw/include/mbctype.h')
-rw-r--r--winsup/mingw/include/mbctype.h97
1 files changed, 97 insertions, 0 deletions
diff --git a/winsup/mingw/include/mbctype.h b/winsup/mingw/include/mbctype.h
new file mode 100644
index 000000000..346e6d790
--- /dev/null
+++ b/winsup/mingw/include/mbctype.h
@@ -0,0 +1,97 @@
+/*
+ * mbctype.h
+ *
+ * Functions for testing multibyte character types and converting characters.
+ *
+ * This file is part of the Mingw32 package.
+ *
+ *
+ * THIS SOFTWARE IS NOT COPYRIGHTED
+ *
+ * This source code is offered for use in the public domain. You may
+ * use, modify or distribute it freely.
+ *
+ * This code is distributed in the hope that it will be useful but
+ * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
+ * DISCLAIMED. This includes but is not limited to warranties of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ */
+
+#ifndef _MBCTYPE_H_
+#define _MBCTYPE_H_
+
+/* All the headers include this file. */
+#include <_mingw.h>
+
+/* return values for _mbsbtype and _mbbtype in mbstring.h */
+#define _MBC_SINGLE 0
+#define _MBC_LEAD 1
+#define _MBC_TRAIL 2
+#define _MBC_ILLEGAL (-1)
+
+/* args for setmbcp (in lieu of actual codepage) */
+#define _MB_CP_SBCS 0
+#define _MB_CP_OEM (-2)
+#define _MB_CP_ANSI (-3)
+#define _MB_CP_LOCALE (-4)
+
+/* TODO: bit masks */
+/*
+#define _MS
+#define _MP
+#define _M1
+#define _M2
+#define _SBUP
+#define _SBLOW
+*/
+
+#ifndef RC_INVOKED
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef __STRICT_ANSI__
+
+int _setmbcp (int);
+int _getmbcp (void);
+
+/* byte classification */
+/* NB: Corresponding _ismbc* functions are in mbstring.h */
+
+int _ismbbalpha (unsigned int);
+int _ismbbalnum (unsigned int);
+int _ismbbgraph (unsigned int);
+int _ismbbprint (unsigned int);
+int _ismbbpunct (unsigned int);
+
+int _ismbbkana (unsigned int);
+int _ismbbkalnum (unsigned int);
+int _ismbbkprint (unsigned int);
+int _ismbbkpunct (unsigned int);
+
+
+/* these are also in mbstring.h */
+int _ismbblead (unsigned int);
+int _ismbbtrail (unsigned int);
+int _ismbslead (const unsigned char*, const unsigned char*);
+int _ismbstrail (const unsigned char*, const unsigned char*);
+
+#ifdef __DECLSPEC_SUPPORTED
+__MINGW_IMPORT unsigned char _mbctype[];
+__MINGW_IMPORT unsigned char _mbcasemap[];
+#endif
+
+/* TODO : _MBCS_ mappings go in tchar.h */
+
+#endif /* Not strict ANSI */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* Not RC_INVOKED */
+
+#endif /* Not _MCTYPE_H_ */
+