1/*
2 * Copyright (c) 2005 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef _XLOCALE__WCTYPE_H_
25#define _XLOCALE__WCTYPE_H_
26
27#if !defined(_DONT_USE_CTYPE_INLINE_) && \
28    (defined(_USE_CTYPE_INLINE_) || defined(__GNUC__) || defined(__cplusplus))
29
30__DARWIN_WCTYPE_TOP_inline int
31iswblank_l(wint_t _wc, locale_t _l)
32{
33	return (__istype_l(_wc, _CTYPE_B, _l));
34}
35
36__DARWIN_WCTYPE_TOP_inline int
37iswhexnumber_l(wint_t _wc, locale_t _l)
38{
39	return (__istype_l(_wc, _CTYPE_X, _l));
40}
41
42__DARWIN_WCTYPE_TOP_inline int
43iswideogram_l(wint_t _wc, locale_t _l)
44{
45	return (__istype_l(_wc, _CTYPE_I, _l));
46}
47
48__DARWIN_WCTYPE_TOP_inline int
49iswnumber_l(wint_t _wc, locale_t _l)
50{
51	return (__istype_l(_wc, _CTYPE_D, _l));
52}
53
54__DARWIN_WCTYPE_TOP_inline int
55iswphonogram_l(wint_t _wc, locale_t _l)
56{
57	return (__istype_l(_wc, _CTYPE_Q, _l));
58}
59
60__DARWIN_WCTYPE_TOP_inline int
61iswrune_l(wint_t _wc, locale_t _l)
62{
63	return (__istype_l(_wc, 0xFFFFFFF0L, _l));
64}
65
66__DARWIN_WCTYPE_TOP_inline int
67iswspecial_l(wint_t _wc, locale_t _l)
68{
69	return (__istype_l(_wc, _CTYPE_T, _l));
70}
71
72#else /* not using inlines */
73
74__BEGIN_DECLS
75int	iswblank_l(wint_t, locale_t);
76wint_t	iswhexnumber_l(wint_t, locale_t);
77wint_t	iswideogram_l(wint_t, locale_t);
78wint_t	iswnumber_l(wint_t, locale_t);
79wint_t	iswphonogram_l(wint_t, locale_t);
80wint_t	iswrune_l(wint_t, locale_t);
81wint_t	iswspecial_l(wint_t, locale_t);
82__END_DECLS
83
84#endif /* using inlines */
85
86__BEGIN_DECLS
87wint_t	nextwctype_l(wint_t, wctype_t, locale_t);
88wint_t	towctrans_l(wint_t, wctrans_t, locale_t);
89wctrans_t
90	wctrans_l(const char *, locale_t);
91__END_DECLS
92
93#endif /* _XLOCALE__WCTYPE_H_ */
94