wctype.h revision 101313
1275221Sbapt/*- 2275221Sbapt * Copyright (c)1999 Citrus Project, 3275221Sbapt * All rights reserved. 4275221Sbapt * 5275221Sbapt * Redistribution and use in source and binary forms, with or without 6275221Sbapt * modification, are permitted provided that the following conditions 7275221Sbapt * are met: 8275221Sbapt * 1. Redistributions of source code must retain the above copyright 9275221Sbapt * notice, this list of conditions and the following disclaimer. 10275221Sbapt * 2. Redistributions in binary form must reproduce the above copyright 11275221Sbapt * notice, this list of conditions and the following disclaimer in the 12275221Sbapt * documentation and/or other materials provided with the distribution. 13275221Sbapt * 14275221Sbapt * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15275221Sbapt * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16275221Sbapt * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17275221Sbapt * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18275221Sbapt * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19290071Sbapt * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20275221Sbapt * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21275221Sbapt * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22275221Sbapt * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23275221Sbapt * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24275221Sbapt * SUCH DAMAGE. 25275221Sbapt * 26275221Sbapt * citrus Id: wctype.h,v 1.4 2000/12/21 01:50:21 itojun Exp 27275221Sbapt * $NetBSD: wctype.h,v 1.3 2000/12/22 14:16:16 itojun Exp $ 28290071Sbapt * $FreeBSD: head/include/wctype.h 101313 2002-08-04 12:09:08Z tjr $ 29275221Sbapt */ 30275221Sbapt 31275221Sbapt#ifndef _WCTYPE_H_ 32275221Sbapt#define _WCTYPE_H_ 33275221Sbapt 34275221Sbapt#include <sys/cdefs.h> 35275221Sbapt#include <machine/ansi.h> 36275221Sbapt 37275221Sbapt#include <ctype.h> 38275221Sbapt 39275221Sbapt#ifdef _BSD_WINT_T_ 40275221Sbapttypedef _BSD_WINT_T_ wint_t; 41275221Sbapt#undef _BSD_WINT_T_ 42275221Sbapt#endif 43275221Sbapt 44275221Sbapt#ifndef _WCTRANS_T 45275221Sbapttypedef int wctrans_t; 46275221Sbapt#define _WCTRANS_T 47275221Sbapt#endif 48275221Sbapt 49275221Sbapt#ifndef _WCTYPE_T 50275221Sbapttypedef long wctype_t; 51275221Sbapt#define _WCTYPE_T 52275221Sbapt#endif 53275221Sbapt 54275221Sbapt#ifndef WEOF 55275221Sbapt#define WEOF ((wint_t)-1) 56275221Sbapt#endif 57275221Sbapt 58275221Sbapt__BEGIN_DECLS 59275221Sbaptint iswctype(wint_t, wctype_t); 60275221Sbaptwint_t towctrans(wint_t, wctrans_t); 61275221Sbaptwctrans_t wctrans(const char *); 62275221Sbaptwctype_t wctype(const char *); 63275221Sbapt#if 0 64275221Sbapt/* XXX: not implemented */ 65275221Sbaptint iswalnum(wint_t); 66275221Sbaptint iswalpha(wint_t); 67275221Sbaptint iswblank(wint_t); 68275221Sbaptint iswcntrl(wint_t); 69275221Sbaptint iswdigit(wint_t); 70275221Sbaptint iswgraph(wint_t); 71275221Sbaptint iswlower(wint_t); 72275221Sbaptint iswprint(wint_t); 73275221Sbaptint iswpunct(wint_t); 74275221Sbaptint iswspace(wint_t); 75275221Sbaptint iswupper(wint_t); 76275221Sbaptint iswxdigit(wint_t); 77275221Sbaptwint_t towlower(wint_t); 78275221Sbaptwint_t towupper(wint_t); 79275221Sbapt#endif 80275221Sbapt__END_DECLS 81275221Sbapt 82275221Sbapt#define iswctype(wc, charclass) __istype((wc), (charclass)) 83275221Sbapt 84275221Sbapt#endif /* _WCTYPE_H_ */ 85275221Sbapt