UChar.h++

Go to the documentation of this file.
00001 #ifndef __ccxx_UChar_hxx
00002 #define __ccxx_UChar_hxx
00003 
00004 #include <commonc++/Common.h++>
00005 
00006 namespace ccxx {
00007 
00013 class COMMONCPP_API UChar
00014 {
00015   public:
00016 
00018   UChar();
00019 
00021   explicit UChar(char c);
00022 
00024   explicit UChar(char16_t c);
00025 
00028   UChar(int c);
00029 
00031   ~UChar();
00032 
00034   UChar& operator=(char c) throw();
00035 
00037   UChar& operator=(char16_t c) throw();
00038 
00040   UChar& operator=(int c) throw();
00041 
00043   bool isNul() const throw();
00044 
00046   bool isLetter() const throw();
00047 
00049   bool isDigit() const throw();
00050 
00052   bool isSign() const throw();
00053 
00055   bool isWhitespace() const throw();
00056 
00058   bool isLowerCase() const throw();
00059 
00061   bool isUpperCase() const throw();
00062 
00064   UChar toLowerCase() const throw();
00065 
00067   UChar toUpperCase() const throw();
00068 
00070   bool isLowSurrogate() const throw();
00071 
00073   bool isHighSurrogate() const throw();
00074 
00076   inline operator char16_t() const throw()
00077   { return(_char); }
00078 
00080   inline bool operator!() const throw()
00081   { return(isNul()); }
00082 
00084   static const UChar nul;
00085 
00087   static bool isNul(char16_t c) throw();
00088 
00090   static bool isLetter(char16_t c) throw();
00091 
00093   static bool isDigit(char16_t c) throw();
00094 
00096   static bool isSign(char16_t c) throw();
00097 
00099   static bool isWhitespace(char16_t c) throw();
00100 
00102   static bool isLowerCase(char16_t c) throw();
00103 
00105   static bool isUpperCase(char16_t c) throw();
00106 
00108   static char16_t toLowerCase(char16_t c) throw();
00109 
00111   static char16_t toUpperCase(char16_t c) throw();
00112 
00114   static bool isLowSurrogate(char16_t c) throw();
00115 
00117   static bool isHighSurrogate(char16_t c) throw();
00118 
00122   static char toASCII(char16_t c) throw();
00123 
00124   private:
00125 
00126   char16_t _char;
00127 };
00128 
00129 } // namespace ccxx
00130 
00131 #endif // __ccxx_UChar_hxx
Generated on Sat Nov 26 16:49:07 2011 for libcommonc++ by  doxygen 1.6.3