aboutsummaryrefslogtreecommitdiff
path: root/stlport/stl/_ctype.h
diff options
context:
space:
mode:
Diffstat (limited to 'stlport/stl/_ctype.h')
-rw-r--r--stlport/stl/_ctype.h280
1 files changed, 0 insertions, 280 deletions
diff --git a/stlport/stl/_ctype.h b/stlport/stl/_ctype.h
deleted file mode 100644
index 33a5d3c..0000000
--- a/stlport/stl/_ctype.h
+++ /dev/null
@@ -1,280 +0,0 @@
-/*
- * Copyright (c) 1999
- * Silicon Graphics Computer Systems, Inc.
- *
- * Copyright (c) 1999
- * Boris Fomitchev
- *
- * This material is provided "as is", with absolutely no warranty expressed
- * or implied. Any use is at your own risk.
- *
- * Permission to use or copy this software for any purpose is hereby granted
- * without fee, provided the above notices are retained on all copies.
- * Permission to modify the code and to distribute modified code is granted,
- * provided the above notices are retained, and a notice that the code was
- * modified is included with the above copyright notice.
- *
- */
-// WARNING: This is an internal header file, included by other C++
-// standard library headers. You should not attempt to use this header
-// file directly.
-
-#ifndef _STLP_INTERNAL_CTYPE_H
-#define _STLP_INTERNAL_CTYPE_H
-
-#ifndef _STLP_C_LOCALE_H
-# include <stl/c_locale.h>
-#endif
-
-#ifndef _STLP_INTERNAL_LOCALE_H
-# include <stl/_locale.h>
-#endif
-
-#ifndef _STLP_INTERNAL_ALGOBASE_H
-# include <stl/_algobase.h>
-#endif
-
-_STLP_BEGIN_NAMESPACE
-
-class _STLP_CLASS_DECLSPEC ctype_base {
-public:
- enum mask {
- space = _Locale_SPACE,
- print = _Locale_PRINT,
- cntrl = _Locale_CNTRL,
- upper = _Locale_UPPER,
- lower = _Locale_LOWER,
- alpha = _Locale_ALPHA,
- digit = _Locale_DIGIT,
- punct = _Locale_PUNCT,
- xdigit = _Locale_XDIGIT,
- alnum = alpha | digit,
- graph = alnum | punct
- };
-};
-
-// ctype<> template
-
-template <class charT> class ctype {};
-template <class charT> class ctype_byname {};
-
-//ctype specializations
-
-_STLP_TEMPLATE_NULL
-class _STLP_CLASS_DECLSPEC ctype<char> : public locale::facet, public ctype_base {
-#ifndef _STLP_NO_WCHAR_T
-# ifdef _STLP_MSVC
- typedef ctype<wchar_t> _Wctype;
- friend _Wctype;
-# else
- friend class ctype<wchar_t>;
-# endif
-#endif
-public:
-
- typedef char char_type;
-
- explicit ctype(const mask* __tab = 0, bool __del = false, size_t __refs = 0);
- bool is(mask __m, char __c) const
- { return ((*(_M_ctype_table+(unsigned char)__c)) & __m) != 0; }
-
- const char* is(const char* __low, const char* __high, mask* __vec) const {
- for (const char* __p = __low;__p != __high; ++__p, ++__vec) {
- *__vec = _M_ctype_table[(unsigned char)*__p];
- }
- return __high;
- }
-
- const char* scan_is(mask __m, const char* __low, const char* __high) const;
- const char* scan_not(mask __m, const char* __low, const char* __high) const;
-
- char (toupper)(char __c) const { return do_toupper(__c); }
- const char* (toupper)(char* __low, const char* __high) const {
- return do_toupper(__low, __high);
- }
-
- char (tolower)(char __c) const { return do_tolower(__c); }
- const char* (tolower)(char* __low, const char* __high) const {
- return do_tolower(__low, __high);
- }
-
- char widen(char __c) const { return do_widen(__c); }
- const char* widen(const char* __low, const char* __high, char* __to) const {
- return do_widen(__low, __high, __to);
- }
-
- char narrow(char __c, char __dfault) const {
- return do_narrow(__c, __dfault);
- }
- const char* narrow(const char* __low, const char* __high,
- char __dfault, char* __to) const {
- return do_narrow(__low, __high, __dfault, __to);
- }
-
- static _STLP_STATIC_DECLSPEC locale::id id;
- _STLP_STATIC_CONSTANT(size_t, table_size = 256);
-
-protected:
- const mask* table() const _STLP_NOTHROW { return _M_ctype_table; }
- static const mask* _STLP_CALL classic_table() _STLP_NOTHROW;
-
- ~ctype();
-
- virtual char do_toupper(char __c) const;
- virtual char do_tolower(char __c) const;
- virtual const char* do_toupper(char* __low, const char* __high) const;
- virtual const char* do_tolower(char* __low, const char* __high) const;
- virtual char do_widen(char __c) const;
- virtual const char* do_widen(const char* __low, const char* __high,
- char* __to) const;
- virtual char do_narrow(char __c, char /* dfault */ ) const;
- virtual const char* do_narrow(const char* __low, const char* __high,
- char /* dfault */, char* __to) const;
-private:
- struct _Is_mask {
- mask __m;
- _Is_mask(mask __x): __m(__x) {}
- bool operator()(char __c) {return (__m & (unsigned char) __c) != 0;}
- };
-
-protected:
- const mask* _M_ctype_table;
-private:
- bool _M_delete;
-};
-
-_STLP_TEMPLATE_NULL
-class _STLP_CLASS_DECLSPEC ctype_byname<char>: public ctype<char> {
- friend class _Locale_impl;
-public:
- explicit ctype_byname(const char*, size_t = 0);
- ~ctype_byname();
-
- virtual char do_toupper(char __c) const;
- virtual char do_tolower(char __c) const;
-
- virtual const char* do_toupper(char*, const char*) const;
- virtual const char* do_tolower(char*, const char*) const;
-
-private:
- ctype_byname(_Locale_ctype* __ctype)
- : _M_ctype(__ctype)
- { _M_init(); }
-
- void _M_init();
-
- //explicitely defined as private to avoid warnings:
- typedef ctype_byname<char> _Self;
- ctype_byname(_Self const&);
- _Self& operator = (_Self const&);
-
- mask _M_byname_table[table_size];
- _Locale_ctype* _M_ctype;
-};
-
-# ifndef _STLP_NO_WCHAR_T
-_STLP_TEMPLATE_NULL
-class _STLP_CLASS_DECLSPEC ctype<wchar_t> : public locale::facet, public ctype_base {
-public:
- typedef wchar_t char_type;
-
- explicit ctype(size_t __refs = 0) : locale::facet(__refs) {}
-
- bool is(mask __m, wchar_t __c) const
- { return do_is(__m, __c); }
-
- const wchar_t* is(const wchar_t* __low, const wchar_t* __high,
- mask* __vec) const
- { return do_is(__low, __high, __vec); }
-
- const wchar_t* scan_is(mask __m,
- const wchar_t* __low, const wchar_t* __high) const
- { return do_scan_is(__m, __low, __high); }
-
- const wchar_t* scan_not (mask __m,
- const wchar_t* __low, const wchar_t* __high) const
- { return do_scan_not(__m, __low, __high); }
-
- wchar_t (toupper)(wchar_t __c) const { return do_toupper(__c); }
- const wchar_t* (toupper)(wchar_t* __low, const wchar_t* __high) const
- { return do_toupper(__low, __high); }
-
- wchar_t (tolower)(wchar_t __c) const { return do_tolower(__c); }
- const wchar_t* (tolower)(wchar_t* __low, const wchar_t* __high) const
- { return do_tolower(__low, __high); }
-
- wchar_t widen(char __c) const { return do_widen(__c); }
- const char* widen(const char* __low, const char* __high,
- wchar_t* __to) const
- { return do_widen(__low, __high, __to); }
-
- char narrow(wchar_t __c, char __dfault) const
- { return do_narrow(__c, __dfault); }
- const wchar_t* narrow(const wchar_t* __low, const wchar_t* __high,
- char __dfault, char* __to) const
- { return do_narrow(__low, __high, __dfault, __to); }
-
- static _STLP_STATIC_DECLSPEC locale::id id;
-
-protected:
- ~ctype();
-
- virtual bool do_is(mask __m, wchar_t __c) const;
- virtual const wchar_t* do_is(const wchar_t*, const wchar_t*, mask*) const;
- virtual const wchar_t* do_scan_is(mask,
- const wchar_t*, const wchar_t*) const;
- virtual const wchar_t* do_scan_not(mask,
- const wchar_t*, const wchar_t*) const;
- virtual wchar_t do_toupper(wchar_t __c) const;
- virtual const wchar_t* do_toupper(wchar_t*, const wchar_t*) const;
- virtual wchar_t do_tolower(wchar_t c) const;
- virtual const wchar_t* do_tolower(wchar_t*, const wchar_t*) const;
- virtual wchar_t do_widen(char c) const;
- virtual const char* do_widen(const char*, const char*, wchar_t*) const;
- virtual char do_narrow(wchar_t __c, char __dfault) const;
- virtual const wchar_t* do_narrow(const wchar_t*, const wchar_t*,
- char, char*) const;
-};
-
-_STLP_TEMPLATE_NULL
-class _STLP_CLASS_DECLSPEC ctype_byname<wchar_t>: public ctype<wchar_t> {
- friend class _Locale_impl;
-public:
- explicit ctype_byname(const char* __name, size_t __refs = 0);
-
-protected:
- ~ctype_byname();
-
- virtual bool do_is(mask __m, wchar_t __c) const;
- virtual const wchar_t* do_is(const wchar_t*, const wchar_t*, mask*) const;
- virtual const wchar_t* do_scan_is(mask,
- const wchar_t*, const wchar_t*) const;
- virtual const wchar_t* do_scan_not(mask,
- const wchar_t*, const wchar_t*) const;
- virtual wchar_t do_toupper(wchar_t __c) const;
- virtual const wchar_t* do_toupper(wchar_t*, const wchar_t*) const;
- virtual wchar_t do_tolower(wchar_t c) const;
- virtual const wchar_t* do_tolower(wchar_t*, const wchar_t*) const;
-
-private:
- ctype_byname(_Locale_ctype* __ctype)
- : _M_ctype(__ctype) {}
-
- //explicitely defined as private to avoid warnings:
- typedef ctype_byname<wchar_t> _Self;
- ctype_byname(_Self const&);
- _Self& operator = (_Self const&);
-
- _Locale_ctype* _M_ctype;
-};
-
-# endif /* WCHAR_T */
-
-_STLP_END_NAMESPACE
-
-#endif /* _STLP_INTERNAL_CTYPE_H */
-
-// Local Variables:
-// mode:C++
-// End:
-