summaryrefslogtreecommitdiff
path: root/ace/OS_NS_ctype_T.inl
blob: 69e56ca500516e42fd61e930f1bc3e540f648284 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
// -*- C++ -*-
// $Id$

#include "ace/os_include/os_ctype.h"
#include "ace/os_include/os_wctype.h"

namespace ACE_OS
{

// For the time being we are safe lumping the wchar specializations
// with ACE_USES_WCHAR. When the time comes that they are needed
// outside of a "wide" build, then we will need to us appropriate
// ACE_LACKS_XXXX.

template <typename CHAR_TYPE> inline int
ace_isalnum (CHAR_TYPE c)
{
  return isalnum (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_isalnum (wchar_t c)
{
  return iswalnum (c);
}
#endif /* ACE_USES_WCHAR */

template <typename CHAR_TYPE> inline int
ace_isalpha (CHAR_TYPE c)
{
  return isalpha (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_isalpha (wchar_t c)
{
  return iswalpha (c);
}
#endif /* ACE_USES_WCHAR */

template <typename CHAR_TYPE> inline int
ace_iscntrl (CHAR_TYPE c)
{
  return iscntrl (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_iscntrl (wchar_t c)
{
  return iswcntrl (c);
}
#endif /* ACE_USES_WCHAR */

template <typename CHAR_TYPE> inline int
ace_isdigit (CHAR_TYPE c)
{
  return isdigit (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_isdigit (wchar_t c)
{
  return iswdigit (c);
}
#endif /* ACE_USES_WCHAR */

template <typename CHAR_TYPE> inline int
ace_isgraph (CHAR_TYPE c)
{
  return isgraph (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_isgraph (wchar_t c)
{
  return iswgraph (c);
}
#endif /* ACE_USES_WCHAR */

template <typename CHAR_TYPE> inline int
ace_islower (CHAR_TYPE c)
{
  return islower (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_islower (wchar_t c)
{
  return iswlower (c);
}
#endif /* ACE_USES_WCHAR */

template <typename CHAR_TYPE> inline int
ace_isprint (CHAR_TYPE c)
{
  return isprint (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_isprint (wchar_t c)
{
  return iswprint (c);
}
#endif /* ACE_USES_WCHAR */

template <typename CHAR_TYPE> inline int
ace_ispunct (CHAR_TYPE c)
{
  return ispunct (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_ispunct (wchar_t c)
{
  return iswpunct (c);
}
#endif /* ACE_USES_WCHAR */

template <typename CHAR_TYPE> inline int
ace_isspace (CHAR_TYPE c)
{
  return isspace (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_isspace (wchar_t c)
{
  return iswspace (c);
}
#endif /* ACE_USES_WCHAR */

template <typename CHAR_TYPE> inline int
ace_isupper (CHAR_TYPE c)
{
  return isupper (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_isupper (wchar_t c)
{
  return iswupper (c);
}
#endif /* ACE_USES_WCHAR */

template <typename CHAR_TYPE> inline int
ace_isxdigit (CHAR_TYPE c)
{
  return isxdigit (static_cast<unsigned char> (c));
}

#if defined (ACE_USES_WCHAR)
template <> inline int
ace_isxdigit (wchar_t c)
{
  return iswxdigit (c);
}
#endif /* ACE_USES_WCHAR */

}