ICU 4.8.1.1
4.8.1.1
|
00001 /* 00002 ****************************************************************************** 00003 * 00004 * Copyright (C) 1998-2005, International Business Machines 00005 * Corporation and others. All Rights Reserved. 00006 * 00007 ****************************************************************************** 00008 * 00009 * File schriter.h 00010 * 00011 * Modification History: 00012 * 00013 * Date Name Description 00014 * 05/05/99 stephen Cleaned up. 00015 ****************************************************************************** 00016 */ 00017 00018 #ifndef SCHRITER_H 00019 #define SCHRITER_H 00020 00021 #include "unicode/utypes.h" 00022 #include "unicode/chariter.h" 00023 #include "unicode/uchriter.h" 00024 00030 U_NAMESPACE_BEGIN 00043 class U_COMMON_API StringCharacterIterator : public UCharCharacterIterator { 00044 public: 00052 StringCharacterIterator(const UnicodeString& textStr); 00053 00063 StringCharacterIterator(const UnicodeString& textStr, 00064 int32_t textPos); 00065 00082 StringCharacterIterator(const UnicodeString& textStr, 00083 int32_t textBegin, 00084 int32_t textEnd, 00085 int32_t textPos); 00086 00095 StringCharacterIterator(const StringCharacterIterator& that); 00096 00101 virtual ~StringCharacterIterator(); 00102 00111 StringCharacterIterator& 00112 operator=(const StringCharacterIterator& that); 00113 00122 virtual UBool operator==(const ForwardCharacterIterator& that) const; 00123 00131 virtual CharacterIterator* clone(void) const; 00132 00138 void setText(const UnicodeString& newText); 00139 00147 virtual void getText(UnicodeString& result); 00148 00154 virtual UClassID getDynamicClassID(void) const; 00155 00161 static UClassID U_EXPORT2 getStaticClassID(void); 00162 00163 protected: 00168 StringCharacterIterator(); 00169 00176 void setText(const UChar* newText, int32_t newTextLength); 00177 00182 UnicodeString text; 00183 00184 }; 00185 00186 U_NAMESPACE_END 00187 #endif