/****************************************************************************************
* COPYRIGHT:
- * Copyright (c) 1997-2012, International Business Machines Corporation and
+ * Copyright (c) 1997-2014, International Business Machines Corporation and
* others. All Rights Reserved.
* Modification History:
*
#include "unicode/putil.h"
#include "unicode/utf16.h"
#include "citrtest.h"
+#include "cmemory.h"
class SCharacterIterator : public CharacterIterator {
};
const char SCharacterIterator::fgClassID=0;
-#define LENGTHOF(array) ((int32_t)(sizeof(array)/sizeof((array)[0])))
-
CharIterTest::CharIterTest()
{
}
public:
// public default constructor, to get coverage of CharacterIterator()
SubCharIter() : CharacterIterator() {
- textLength=end=LENGTHOF(s);
+ textLength=end=UPRV_LENGTHOF(s);
s[0]=0x61; // 'a'
s[1]=0xd900; // U+50400
s[2]=0xdd00;
// useful stuff, mostly dummy but testing coverage and subclassability
virtual UChar nextPostInc() {
- if(pos<LENGTHOF(s)) {
+ if(pos<UPRV_LENGTHOF(s)) {
return s[pos++];
} else {
return DONE;
}
virtual UChar32 next32PostInc() {
- if(pos<LENGTHOF(s)) {
+ if(pos<UPRV_LENGTHOF(s)) {
UChar32 c;
- U16_NEXT(s, pos, LENGTHOF(s), c);
+ U16_NEXT(s, pos, UPRV_LENGTHOF(s), c);
return c;
} else {
return DONE;
}
virtual UBool hasNext() {
- return pos<LENGTHOF(s);
+ return pos<UPRV_LENGTHOF(s);
}
virtual UChar first() {
virtual UChar32 first32() {
UChar32 c;
pos=0;
- U16_NEXT(s, pos, LENGTHOF(s), c);
+ U16_NEXT(s, pos, UPRV_LENGTHOF(s), c);
pos=0;
return c;
}
virtual UChar setIndex(int32_t position) {
- if(0<=position && position<=LENGTHOF(s)) {
+ if(0<=position && position<=UPRV_LENGTHOF(s)) {
pos=position;
- if(pos<LENGTHOF(s)) {
+ if(pos<UPRV_LENGTHOF(s)) {
return s[pos];
}
}
}
virtual UChar32 setIndex32(int32_t position) {
- if(0<=position && position<=LENGTHOF(s)) {
+ if(0<=position && position<=UPRV_LENGTHOF(s)) {
pos=position;
- if(pos<LENGTHOF(s)) {
+ if(pos<UPRV_LENGTHOF(s)) {
UChar32 c;
- U16_GET(s, 0, pos, LENGTHOF(s), c);
+ U16_GET(s, 0, pos, UPRV_LENGTHOF(s), c);
return c;
}
}
}
virtual UChar current() const {
- if(pos<LENGTHOF(s)) {
+ if(pos<UPRV_LENGTHOF(s)) {
return s[pos];
} else {
return DONE;
}
virtual UChar32 current32() const {
- if(pos<LENGTHOF(s)) {
+ if(pos<UPRV_LENGTHOF(s)) {
UChar32 c;
- U16_GET(s, 0, pos, LENGTHOF(s), c);
+ U16_GET(s, 0, pos, UPRV_LENGTHOF(s), c);
return c;
} else {
return DONE;
}
virtual UChar next() {
- if(pos<LENGTHOF(s) && ++pos<LENGTHOF(s)) {
+ if(pos<UPRV_LENGTHOF(s) && ++pos<UPRV_LENGTHOF(s)) {
return s[pos];
} else {
return DONE;
}
virtual UChar32 next32() {
- if(pos<LENGTHOF(s)) {
- U16_FWD_1(s, pos, LENGTHOF(s));
+ if(pos<UPRV_LENGTHOF(s)) {
+ U16_FWD_1(s, pos, UPRV_LENGTHOF(s));
}
- if(pos<LENGTHOF(s)) {
+ if(pos<UPRV_LENGTHOF(s)) {
UChar32 c;
int32_t i=pos;
- U16_NEXT(s, i, LENGTHOF(s), c);
+ U16_NEXT(s, i, UPRV_LENGTHOF(s), c);
return c;
} else {
return DONE;
}
virtual void getText(UnicodeString &result) {
- result.setTo(s, LENGTHOF(s));
+ result.setTo(s, UPRV_LENGTHOF(s));
}
// dummy implementations of other pure virtual base class functions