+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
/*
******************************************************************************
-* Copyright (C) 1998-2001, International Business Machines Corporation and *
-* others. All Rights Reserved. *
+* Copyright (C) 1998-2012, International Business Machines Corporation and
+* others. All Rights Reserved.
******************************************************************************
*
* File schriter.cpp
******************************************************************************
*/
+#include "utypeinfo.h" // for 'typeid' to work
+
#include "unicode/chariter.h"
#include "unicode/schriter.h"
U_NAMESPACE_BEGIN
-const char StringCharacterIterator::fgClassID = 0;
+UOBJECT_DEFINE_RTTI_IMPLEMENTATION(StringCharacterIterator)
StringCharacterIterator::StringCharacterIterator()
: UCharCharacterIterator(),
}
StringCharacterIterator::StringCharacterIterator(const UnicodeString& textStr)
- : UCharCharacterIterator(textStr.fArray, textStr.length()),
+ : UCharCharacterIterator(textStr.getBuffer(), textStr.length()),
text(textStr)
{
// we had set the input parameter's array, now we need to set our copy's array
- UCharCharacterIterator::text = this->text.fArray;
+ UCharCharacterIterator::text = this->text.getBuffer();
}
StringCharacterIterator::StringCharacterIterator(const UnicodeString& textStr,
int32_t textPos)
- : UCharCharacterIterator(textStr.fArray, textStr.length(), textPos),
+ : UCharCharacterIterator(textStr.getBuffer(), textStr.length(), textPos),
text(textStr)
{
// we had set the input parameter's array, now we need to set our copy's array
- UCharCharacterIterator::text = this->text.fArray;
+ UCharCharacterIterator::text = this->text.getBuffer();
}
StringCharacterIterator::StringCharacterIterator(const UnicodeString& textStr,
int32_t textBegin,
int32_t textEnd,
int32_t textPos)
- : UCharCharacterIterator(textStr.fArray, textStr.length(), textBegin, textEnd, textPos),
+ : UCharCharacterIterator(textStr.getBuffer(), textStr.length(), textBegin, textEnd, textPos),
text(textStr)
{
// we had set the input parameter's array, now we need to set our copy's array
- UCharCharacterIterator::text = this->text.fArray;
+ UCharCharacterIterator::text = this->text.getBuffer();
}
StringCharacterIterator::StringCharacterIterator(const StringCharacterIterator& that)
text(that.text)
{
// we had set the input parameter's array, now we need to set our copy's array
- UCharCharacterIterator::text = this->text.fArray;
+ UCharCharacterIterator::text = this->text.getBuffer();
}
StringCharacterIterator::~StringCharacterIterator() {
UCharCharacterIterator::operator=(that);
text = that.text;
// we had set the input parameter's array, now we need to set our copy's array
- UCharCharacterIterator::text = this->text.fArray;
+ UCharCharacterIterator::text = this->text.getBuffer();
return *this;
}
// because that checks for array pointer equality
// while we compare UnicodeString objects
- if (getDynamicClassID() != that.getDynamicClassID()) {
+ if (typeid(*this) != typeid(that)) {
return FALSE;
}
void
StringCharacterIterator::setText(const UnicodeString& newText) {
text = newText;
- UCharCharacterIterator::setText(text.fArray, text.length());
+ UCharCharacterIterator::setText(text.getBuffer(), text.length());
}
void