Changes to attempt to silence bcc64x
[ACE_TAO.git] / ACE / ace / OS_NS_wchar.inl
blob29f5b70f1b3b2b6bd949a17732e973c4a02d5145
1 // -*- C++ -*-
2 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
4 #if defined (ACE_HAS_WCHAR)
5 ACE_INLINE wint_t
6 ACE_OS::fgetwc (FILE* fp)
8 #  if defined (ACE_LACKS_FGETWC)
9   ACE_UNUSED_ARG (fp);
10   ACE_NOTSUP_RETURN (0);
11 #  else
12   return std::fgetwc (fp);
13 #  endif /* ACE_LACKS_FGETWC */
15 #endif /* ACE_HAS_WCHAR */
17 ACE_INLINE u_int
18 ACE_OS::wslen (const WChar *s)
20   u_int len = 0;
22   while (*s++ != 0)
23     len++;
25   return len;
28 ACE_INLINE ACE_OS::WChar *
29 ACE_OS::wscpy (WChar *dest, const WChar *src)
31   WChar *original_dest = dest;
33   while ((*dest++ = *src++) != 0)
34     continue;
36   return original_dest;
39 ACE_INLINE int
40 ACE_OS::wscmp (const WChar *s, const WChar *t)
42   const WChar *scan1 = s;
43   const WChar *scan2 = t;
45   while (*scan1 != 0 && *scan1 == *scan2)
46     {
47       ++scan1;
48       ++scan2;
49     }
51   return *scan1 - *scan2;
54 ACE_INLINE int
55 ACE_OS::wsncmp (const WChar *s, const WChar *t, size_t len)
57   const WChar *scan1 = s;
58   const WChar *scan2 = t;
60   while (len != 0 && *scan1 != 0 && *scan1 == *scan2)
61     {
62       ++scan1;
63       ++scan2;
64       --len;
65     }
67   return len == 0 ? 0 : *scan1 - *scan2;
70 #if defined (ACE_HAS_WCHAR)
71 ACE_INLINE wint_t
72 ACE_OS::ungetwc (wint_t c, FILE* fp)
74 #  if defined (ACE_LACKS_FGETWC)
75   ACE_UNUSED_ARG (c);
76   ACE_UNUSED_ARG (fp);
77   ACE_NOTSUP_RETURN (0);
78 #  else
79   return std::ungetwc (c, fp);
80 #  endif /* ACE_LACKS_FGETWC */
82 #endif /* ACE_HAS_WCHAR */
84 ACE_END_VERSIONED_NAMESPACE_DECL