2 * Copyright (c) 2005 Apple Computer, Inc. All rights reserved.
4 * @APPLE_LICENSE_HEADER_START@
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
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.
21 * @APPLE_LICENSE_HEADER_END@
24 #ifndef _XLOCALE__WCTYPE_H_
25 #define _XLOCALE__WCTYPE_H_
28 #include <_types/_wctrans_t.h>
29 #include <xlocale/_ctype.h>
31 #if !defined(_DONT_USE_CTYPE_INLINE_) && \
32 (defined(_USE_CTYPE_INLINE_) || defined(__GNUC__) || defined(__cplusplus))
34 __DARWIN_WCTYPE_TOP_inline
int
35 iswblank_l(wint_t _wc
, locale_t _l
)
37 return (__istype_l(_wc
, _CTYPE_B
, _l
));
40 __DARWIN_WCTYPE_TOP_inline
int
41 iswhexnumber_l(wint_t _wc
, locale_t _l
)
43 return (__istype_l(_wc
, _CTYPE_X
, _l
));
46 __DARWIN_WCTYPE_TOP_inline
int
47 iswideogram_l(wint_t _wc
, locale_t _l
)
49 return (__istype_l(_wc
, _CTYPE_I
, _l
));
52 __DARWIN_WCTYPE_TOP_inline
int
53 iswnumber_l(wint_t _wc
, locale_t _l
)
55 return (__istype_l(_wc
, _CTYPE_D
, _l
));
58 __DARWIN_WCTYPE_TOP_inline
int
59 iswphonogram_l(wint_t _wc
, locale_t _l
)
61 return (__istype_l(_wc
, _CTYPE_Q
, _l
));
64 __DARWIN_WCTYPE_TOP_inline
int
65 iswrune_l(wint_t _wc
, locale_t _l
)
67 return (__istype_l(_wc
, 0xFFFFFFF0L
, _l
));
70 __DARWIN_WCTYPE_TOP_inline
int
71 iswspecial_l(wint_t _wc
, locale_t _l
)
73 return (__istype_l(_wc
, _CTYPE_T
, _l
));
76 #else /* not using inlines */
79 int iswblank_l(wint_t, locale_t
);
80 wint_t iswhexnumber_l(wint_t, locale_t
);
81 wint_t iswideogram_l(wint_t, locale_t
);
82 wint_t iswnumber_l(wint_t, locale_t
);
83 wint_t iswphonogram_l(wint_t, locale_t
);
84 wint_t iswrune_l(wint_t, locale_t
);
85 wint_t iswspecial_l(wint_t, locale_t
);
88 #endif /* using inlines */
91 wint_t nextwctype_l(wint_t, wctype_t, locale_t
);
92 wint_t towctrans_l(wint_t, wctrans_t, locale_t
);
94 wctrans_l(const char *, locale_t
);
97 #endif /* _XLOCALE__WCTYPE_H_ */