123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207 |
- /*
- *
- * Copyright (c) 1998-2002
- * John Maddock
- *
- * Use, modification and distribution are subject to the
- * Boost Software License, Version 1.0. (See accompanying file
- * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- *
- */
-
- /*
- * LOCATION: see http://www.boost.org for most recent version.
- * FILE boost/regex/config/cwchar.hpp
- * VERSION see <boost/version.hpp>
- * DESCRIPTION: regex wide character string fixes.
- */
- #ifndef BOOST_REGEX_CONFIG_CWCHAR_HPP
- #define BOOST_REGEX_CONFIG_CWCHAR_HPP
- #include <cwchar>
- #include <cwctype>
- #include <boost/config.hpp>
- #if defined(__STD_RWCOMPILER_H__) || defined(_RWSTD_VER)
- // apparently this is required for the RW STL on Linux:
- #undef iswalnum
- #undef iswalpha
- #undef iswblank
- #undef iswcntrl
- #undef iswdigit
- #undef iswgraph
- #undef iswlower
- #undef iswprint
- #undef iswprint
- #undef iswpunct
- #undef iswspace
- #undef iswupper
- #undef iswxdigit
- #undef iswctype
- #undef towlower
- #undef towupper
- #undef towctrans
- #undef wctrans
- #undef wctype
- #endif
- namespace std{
- #ifndef BOOST_NO_STDC_NAMESPACE
- extern "C"{
- #endif
- #ifdef iswalnum
- inline int (iswalnum)(wint_t i)
- { return iswalnum(i); }
- #undef iswalnum
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswalnum;
- #endif
- #ifdef iswalpha
- inline int (iswalpha)(wint_t i)
- { return iswalpha(i); }
- #undef iswalpha
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswalpha;
- #endif
- #ifdef iswcntrl
- inline int (iswcntrl)(wint_t i)
- { return iswcntrl(i); }
- #undef iswcntrl
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswcntrl;
- #endif
- #ifdef iswdigit
- inline int (iswdigit)(wint_t i)
- { return iswdigit(i); }
- #undef iswdigit
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswdigit;
- #endif
- #ifdef iswgraph
- inline int (iswgraph)(wint_t i)
- { return iswgraph(i); }
- #undef iswgraph
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswgraph;
- #endif
- #ifdef iswlower
- inline int (iswlower)(wint_t i)
- { return iswlower(i); }
- #undef iswlower
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswlower;
- #endif
- #ifdef iswprint
- inline int (iswprint)(wint_t i)
- { return iswprint(i); }
- #undef iswprint
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswprint;
- #endif
- #ifdef iswpunct
- inline int (iswpunct)(wint_t i)
- { return iswpunct(i); }
- #undef iswpunct
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswpunct;
- #endif
- #ifdef iswspace
- inline int (iswspace)(wint_t i)
- { return iswspace(i); }
- #undef iswspace
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswspace;
- #endif
- #ifdef iswupper
- inline int (iswupper)(wint_t i)
- { return iswupper(i); }
- #undef iswupper
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswupper;
- #endif
- #ifdef iswxdigit
- inline int (iswxdigit)(wint_t i)
- { return iswxdigit(i); }
- #undef iswxdigit
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::iswxdigit;
- #endif
- #ifdef towlower
- inline wint_t (towlower)(wint_t i)
- { return towlower(i); }
- #undef towlower
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::towlower;
- #endif
- #ifdef towupper
- inline wint_t (towupper)(wint_t i)
- { return towupper(i); }
- #undef towupper
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using :: towupper;
- #endif
- #ifdef wcscmp
- inline int (wcscmp)(const wchar_t *p1, const wchar_t *p2)
- { return wcscmp(p1,p2); }
- #undef wcscmp
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::wcscmp;
- #endif
- #ifdef wcscoll
- inline int (wcscoll)(const wchar_t *p1, const wchar_t *p2)
- { return wcscoll(p1,p2); }
- #undef wcscoll
- #elif defined(BOOST_NO_STDC_NAMESPACE) && !defined(UNDER_CE)
- using ::wcscoll;
- #endif
- #ifdef wcscpy
- inline wchar_t *(wcscpy)(wchar_t *p1, const wchar_t *p2)
- { return wcscpy(p1,p2); }
- #undef wcscpy
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::wcscpy;
- #endif
- #ifdef wcslen
- inline size_t (wcslen)(const wchar_t *p)
- { return wcslen(p); }
- #undef wcslen
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::wcslen;
- #endif
- #ifdef wcsxfrm
- size_t wcsxfrm(wchar_t *p1, const wchar_t *p2, size_t s)
- { return wcsxfrm(p1,p2,s); }
- #undef wcsxfrm
- #elif defined(BOOST_NO_STDC_NAMESPACE)
- using ::wcsxfrm;
- #endif
- #ifndef BOOST_NO_STDC_NAMESPACE
- } // extern "C"
- #endif
- } // namespace std
- #endif
|